I am sorry
This commit is contained in:
@@ -1,22 +1,15 @@
|
||||
package com.example
|
||||
|
||||
class DockerBuilder {
|
||||
def dockerBuildAndPush(String dockerRepo, String imageName, String dockerfilePath, String buildContext, String nexusUser, String nexusPass, Boolean useInsecureRegistry) {
|
||||
def dockerdCommand = useInsecureRegistry ? "dockerd --insecure-registry http://${dockerRepo} &" : "dockerd &"
|
||||
|
||||
sh "$dockerdCommand"
|
||||
echo "Started Docker daemon${useInsecureRegistry ? ' with --insecure-registry' : ''}"
|
||||
|
||||
sh "docker build -t ${imageName} -f ${dockerfilePath} ${buildContext}"
|
||||
echo "Docker image ${imageName} built"
|
||||
|
||||
sh "docker login http://${dockerRepo} -u ${nexusUser} -p ${nexusPass}"
|
||||
echo "Logged in to ${dockerRepo}"
|
||||
|
||||
sh "docker tag ${imageName} ${dockerRepo}/my-docker-repo/${imageName}:latest"
|
||||
echo "Image ${imageName} tagged"
|
||||
|
||||
sh "docker push ${dockerRepo}/my-docker-repo/${imageName}:latest"
|
||||
echo "Pushed Docker image ${imageName} to ${dockerRepo}"
|
||||
def getDockerdCommand(String dockerRepo, Boolean useInsecureRegistry) {
|
||||
return useInsecureRegistry ? "dockerd --insecure-registry http://${dockerRepo} &" : "dockerd &"
|
||||
}
|
||||
def getDockerBuildCommands(String dockerRepo, String imageName, String dockerfilePath, String buildContext, String nexusUser, String nexusPass) {
|
||||
return [
|
||||
"docker build -t ${imageName} -f ${dockerfilePath} ${buildContext}",
|
||||
"docker login http://${dockerRepo} -u ${nexusUser} -p ${nexusPass}",
|
||||
"docker tag ${imageName} ${dockerRepo}/my-docker-repo/${imageName}:latest",
|
||||
"docker push ${dockerRepo}/my-docker-repo/${imageName}:latest"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -22,15 +22,17 @@ def call(String appName, String helmChartPath, String helmRepoName,String helmCh
|
||||
stage('Docker build & push') {
|
||||
container(containerName) {
|
||||
script {
|
||||
dockerBuilder.dockerBuildAndPush(
|
||||
sh dockerBuilder.getDockerdCommand(env.NEXUS_DOCKER_URL, useInsecureRegistry)
|
||||
sh dockerBuilder.getDockerBuildCommands(
|
||||
env.NEXUS_DOCKER_URL,
|
||||
appName,
|
||||
"./Dockerfile",
|
||||
"target",
|
||||
"admin",
|
||||
env.NEXUS_DOCKER_PASS,
|
||||
useInsecureRegistry
|
||||
)
|
||||
env.NEXUS_DOCKER_PASS
|
||||
).each { cmd ->
|
||||
sh cmd
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user