【发布时间】:2018-04-28 19:41:50
【问题描述】:
我有一个在容器内运行的詹金斯大师...... 我很想将我的构建容器化,使用 Docker 容器作为 Jenkins Slave(构建代理),在单独的 vm 上运行我的 CI 管道。 这个 Docker 容器(构建代理)将在 CI 管道运行时创建; .构建完成后,Docker 容器将被销毁。 要实现这一点:
- 我使用 docker 插件如下:
- 这是我的 jenkinsfile 代码:
node('docker') {
stage('Checkout Code') {
checkout scm }
stage('Build') {
withMaven {
sh 'mvn clean install' }
}
}
当我运行我的 peline 时,一切都顺利:
但问题是关于构建结果 (.war)
这些档案是转移到主工作区还是与容器一起销毁?
如果是第二种情况,那么我该如何将构建结果恢复到 jenkins master 以进行 CI 流程??
[INFO] Installing /home/jenkins/workspace/Build_pipeline_team/target/Teams.war to /home/jenkins/.m2/repository/teams/Teams/1.0-SNAPSHOT/Teams-1.0-SNAPSHOT.war
[INFO] Installing /home/jenkins/workspace/Build_pipeline_team/pom.xml to /home/jenkins/.m2/repository/teams/Teams/1.0-SNAPSHOT/Teams-1.0-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:12 min
[INFO] Finished at: 2017-11-15T03:40:13+00:00
[INFO] Final Memory: 21M/51M
[INFO] ------------------------------------------------------------------------
[jenkins-maven-event-spy] INFO generated /home/jenkins/workspace/Build_pipeline_team@tmp/withMaven673f8d6e/maven-spy-20171115-033800-6375412806014049683204.log
[Pipeline] }
[withMaven] artifactsPublisher - Archive artifact pom.xml under teams/Teams/1.0-SNAPSHOT/Teams-1.0-SNAPSHOT.pom
[withMaven] artifactsPublisher - Archive artifact target/Teams.war under teams/Teams/1.0-SNAPSHOT/Teams-1.0-SNAPSHOT.war
[withMaven] junitPublisher - Archive test results for Maven artifact teams:Teams:1.0-SNAPSHOT generated by maven-surefire-plugin:test (default-test): target/surefire-reports/*.xml
【问题讨论】:
标签: docker jenkins build continuous-integration devops