docker 容器中的 jenkins 2.7 管道构建
jenkins 2.7 pipeline build in docker container
我正在尝试在 docker 容器中使用 Jenkins 和管道插件构建我的项目。我的 Jenkinsfile
看起来像这样:
node('docker') {
docker.image('build-node:1').inside {
stage 'scm checkout'
checkout scm
stage 'maven build'
sh "mvn -B clean > mvn.log"
}
}
在 Jenkins 日志中:
...
Entering stage maven build
Proceeding
[Pipeline] sh
[versioning] Running shell script
+ mvn -B clean
[Pipeline] }
$ docker stop ***
$ docker rm -f ***
[Pipeline] // withDockerContainer
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
ERROR: script returned exit code -1
Finished: FAILURE
在mvn.log我看到一切正常:
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: X.XXX s
[INFO] Finished at: 2016-XX-XXTXX:XX:XX+XX:XX
[INFO] Final Memory: XXM/XXXM
[INFO] ------------------------------------------------------------------------
哪里出错或者怎么判断?
我的 Jenkins 服务器是 docker 容器形式 docker 集线器,它使用 docker 服务器作为节点。
新支票:
try {
sh 'mvn clean | tee mvn.log'
} catch (e) {
println "Maven failed : ${e}"
}
输出:
[versioning] Running shell script
+ mvn clean
+ tee mvn.log
[Pipeline] echo
Maven failed : hudson.AbortException: script returned exit code -1
mvn.log:
[INFO] BUILD SUCCESS
也许试试
sh 'mvn -B clean | tee mvn.log'
以便您可以在构建日志中看到 Maven 的输出。或者干脆
sh 'mvn -B clean'
如果您无论如何都不打算使用 mvn.log
。
我在 Jenkins 的 1651.3 LTS 版本上配置了管道,并且一切正常。我认为问题出在插件组合或 Jenkins 不稳定的核心版本上。
我正在尝试在 docker 容器中使用 Jenkins 和管道插件构建我的项目。我的 Jenkinsfile
看起来像这样:
node('docker') {
docker.image('build-node:1').inside {
stage 'scm checkout'
checkout scm
stage 'maven build'
sh "mvn -B clean > mvn.log"
}
}
在 Jenkins 日志中:
...
Entering stage maven build
Proceeding
[Pipeline] sh
[versioning] Running shell script
+ mvn -B clean
[Pipeline] }
$ docker stop ***
$ docker rm -f ***
[Pipeline] // withDockerContainer
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
ERROR: script returned exit code -1
Finished: FAILURE
在mvn.log我看到一切正常:
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: X.XXX s
[INFO] Finished at: 2016-XX-XXTXX:XX:XX+XX:XX
[INFO] Final Memory: XXM/XXXM
[INFO] ------------------------------------------------------------------------
哪里出错或者怎么判断?
我的 Jenkins 服务器是 docker 容器形式 docker 集线器,它使用 docker 服务器作为节点。
新支票:
try {
sh 'mvn clean | tee mvn.log'
} catch (e) {
println "Maven failed : ${e}"
}
输出:
[versioning] Running shell script
+ mvn clean
+ tee mvn.log
[Pipeline] echo
Maven failed : hudson.AbortException: script returned exit code -1
mvn.log:
[INFO] BUILD SUCCESS
也许试试
sh 'mvn -B clean | tee mvn.log'
以便您可以在构建日志中看到 Maven 的输出。或者干脆
sh 'mvn -B clean'
如果您无论如何都不打算使用 mvn.log
。
我在 Jenkins 的 1651.3 LTS 版本上配置了管道,并且一切正常。我认为问题出在插件组合或 Jenkins 不稳定的核心版本上。