如何添加settings.xml以将Jenkins的流程构建到docker image
我的存储库中有一个文件:如何添加settings.xml以将Jenkins的流程构建到docker image,xml,maven,docker,jenkins,jenkins-pipeline,Xml,Maven,Docker,Jenkins,Jenkins Pipeline,我的存储库中有一个文件: pipeline { agent {label 'slavedev'} stages { stage('Build') { agent { docker { image 'myimage:latest' } } steps {
pipeline {
agent {label 'slavedev'}
stages {
stage('Build') {
agent {
docker {
image 'myimage:latest'
}
}
steps {
sh 'mvn -version'
}
}
}
}
myimage的Dockerfile:
当我试图通过docker run-it myimage:latest/bin/bash手动启动此映像时,我看到:
您看,我们在.m2中有settings.xml。
但是,当我试图通过下载源代码来执行Jenkins作业时,我发现:
[exec] [DEBUG] Reading global settings from /usr/share/maven/conf/settings.xml
[exec] [DEBUG] Reading user settings from ?/.m2/settings.xml
还有,我不知道,Docker容器里有什么。我只看到我的资料来源清单
drwxrwxr-x 5 jenkins jenkins 41 Jul 21 17:52 src
-rw-rw-r-- 1 jenkins jenkins 3212 Jul 21 17:52 build.xml
-rw-rw-r-- 1 jenkins jenkins 32014 Jul 21 17:52 pom.xml
本地工作的作业在容器中不工作。真的,我什么都试过了,请帮忙!我玩了所有的东西,我两个晚上都没睡,但我真的找不到,怎么跑这个!
正在使用专用存储库和此存储库的凭据设置.xml文件。您可以通过选项-s指定settings.xml
您可以检查jenkins是否运行生成日志中用户使用的容器。如果不是使用root用户运行,Maven将不会使用/root/.m2中的settings.xml
[exec] [DEBUG] Reading global settings from /usr/share/maven/conf/settings.xml
[exec] [DEBUG] Reading user settings from ?/.m2/settings.xml
drwxrwxr-x 5 jenkins jenkins 41 Jul 21 17:52 src
-rw-rw-r-- 1 jenkins jenkins 3212 Jul 21 17:52 build.xml
-rw-rw-r-- 1 jenkins jenkins 32014 Jul 21 17:52 pom.xml
sh 'mvn -s /root/.m2/settings.xml -version'