> pipeline {
>
>   agent {
>
>     node {
>
>       label 'maven'
>
>     }
>
>   }
>
>   stages {
>
>     stage('docker login') {
>
>       steps {
>
>         container('maven') {
>
>           sh 'echo $HARBOR_CREDENTIAL_PSW | docker login $REGISTRY -u \\'robot$robot-test\\' --password-stdin'
>
>         }
>
>       }
>
>     }
>
>     stage('build & push') {
>
>       agent none
>
>       steps {
>
>         container('maven') {
>
>           git(credentialsId: 'test-devops', url: 'https://gitlab.dev/fenghui/kubesphere-demo.git', branch: 'master', changelog: true, poll: false)
>
>           sh 'cd kubesphere-demo/src && docker build -t $REGISTRY/$HARBOR_NAMESPACE/$APP_NAME:devops-test .'
>
>           sh 'docker push  $REGISTRY/$HARBOR_NAMESPACE/$APP_NAME:devops-test'
>
>           
>
>         }
>
>       }
>
>     }
>
>   }
>
>   environment {
>
>     REGISTRY = '192.168.111.75:30002'
>
>     HARBOR_NAMESPACE = 'ks-devops-harbor'
>
>     APP_NAME = 'docker-example-dotnet'
>
>     HARBOR_CREDENTIAL = credentials('robot-test')
>
>   }
>
> }

把 git step 放到 container 外面试试。

+        git(credentialsId: 'test-devops', url: 'https://gitlab.dev/fenghui/kubesphere-demo.git', branch: 'master', changelog: true, poll: false)
         container('maven') {

-          git(credentialsId: 'test-devops', url: 'https://gitlab.dev/fenghui/kubesphere-demo.git', branch: 'master', changelog: true, poll: false)
    15 天 后
    23 天 后
    2 年 后