2017-08-17 40 views
0

我有以下設置:嵌套泊塢窗代理Jenkinspipeline

  • Jenkinsmaster,沒有搬運工安裝
  • Jenkinsslave,碼頭工人安裝,標籤dockerslave

當我運行下面的管道:

pipeline { 
    agent { node { label 'dockerslave' } } 
    stages { 
    stage('Example Build') { 
     agent { docker { image 'maven:3-alpine' } } 
     steps { 
      echo 'Hello, Maven' 
      sh 'mvn --version' 
     } 
    } 
    stage('Example Test') { 
     agent { docker { image 'openjdk:8-jre' } } 
     steps { 
      echo 'Hello, JDK' 
      sh 'java -version' 
     } 
    } 
    } 
} 

我得到以下logoutput:

[Pipeline] node 
    Running on dockerslave in /home/jenkins/workspace/docker- 
    declarative 
    [Pipeline] { 
    [Pipeline] stage 
    [Pipeline] { (Example Build) 
    [Pipeline] node 
    Still waiting to schedule task 
    There are no nodes with the label ?latest? 

作業不繼續並掛起。 這裏有什麼問題?

回答

1

問題是缺少的:

reuseNode true 

的固定例如:

pipeline { 
    agent { 
    node { label 'dockerslave' } } 
    stages { 
    stage('Example Build') { 
     agent { 
      docker { 
       reuseNode true 
       image 'maven:3-alpine' 
      } 
     } 
     steps { 
      echo 'Hello, Maven' 
      sh 'mvn --version' 
     } 
    } 
    stage('Example Test') { 
     agent { 
      docker { 
       reuseNode true 
       image 'openjdk:8-jre' 
      } 
     } 
     steps { 
      echo 'Hello, JDK' 
      sh 'java -version' 
     } 
    } 
    } 
}