`pipeline {
agent {
node {
label ‘maven’
}
}
environment {
KUBECONFIG_CREDENTIAL_ID = ‘kubeconfig-id’
}
stages {
stage(‘拉取代码’) {
steps {
git(url: ‘https://gitee.com/jzywjj/demo.git’, credentialsId: ‘git-id’, changelog: true, poll: false)
}
}
stage(‘maven打包’) {
steps {
container(‘maven’) {
sh ‘mvn clean -gs pwd
/configuration/settings.xml test’
sh ‘mvn -Dmaven.test.skip=true -gs pwd
/configuration/settings.xml clean package’
}
}
}
stage('制作和推送镜像') {
steps {
container('maven') {
sh 'docker build -f Dockerfile-online -t $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:SNAPSHOT-$BUILD_NUMBER .'
withCredentials([usernamePassword(credentialsId : 'docker-id' ,passwordVariable : 'ALI_YUN_DOCKER_PASSWORD' ,usernameVariable : 'ALI_YUN_DOCKER_USERNAME' ,)]) {
sh 'echo "$ALI_YUN_DOCKER_PASSWORD" | docker login $REGISTRY -u "$ALI_YUN_DOCKER_USERNAME" --password-stdin'
sh 'docker push $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:SNAPSHOT-$BUILD_NUMBER'
}
}
}
}
stage('master 分支tag 为latest镜像') {
when {
branch 'master'
}
steps {
container('maven') {
sh 'docker tag $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:SNAPSHOT-$BUILD_NUMBER $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:latest '
sh 'docker push $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:latest '
}
}
}
stage('master 分支发布到测试环境') {
steps {
kubernetesDeploy(enableConfigSubstitution: true, kubeconfigId: "$KUBECONFIG_CREDENTIAL_ID", configs: 'deploy/dev-ol/**', deleteResource: false)
}
}
}
}`
流水线运行时正常的,但是镜像的拉取就时拉不到