詹金斯Arti城插件能跑码头码头吗?我想在下面提供的管道构建中与Jenkins Kubernetes插件一起使用这个插件。
示例管道创建了一个Pod,它首先使用git容器克隆给定的project-examples存储库,然后使用maven容器构建项目。
我怀疑我碰到了这问题,只是想再次检查一下是否仍然是这样的。执行时,Artifactory插件会在Pod而不是maven容器中搜索资源,例如maven。无法找到插件失败的资源。
def label = "worker-${UUID.randomUUID().toString()}"
podTemplate(label: label, containers: [
containerTemplate(name: 'maven', image: 'maven:3.3.9-jdk-8-alpine', ttyEnabled: true, command: 'cat'),
containerTemplate(name: 'git', image: 'alpine/git', command: 'cat', ttyEnabled: true)
]) {
node(label) {
container('maven') {
def server
def buildInfo
def rtMaven
stage ('Clone') {
git url: 'https://github.com/jfrogdev/project-examples.git'
}
stage ('Test a Maven project') {
server = Artifactory.server 'private-artifactory'
rtMaven = Artifactory.newMavenBuild()
rtMaven.tool = 'maven'
rtMaven.run pom: 'maven-example/pom.xml', goals: 'clean build', buildInfo: buildInfo
buildInfo = Artifactory.newBuildInfo()
}
}发布于 2018-07-02 11:43:39
我也遇到了同样的问题,在配置到maven安装的连接时尝试了各种不同的方法。
在获取我在docker映像中的maven安装时,似乎正在进行的最后配置如下:
stage("build") {
def server=Artifactory.server('My art')
def rtMaven=Artifactory.newMavenBuild()
rtMaven.resolver server: server, releaseRepo: 'libs-release', snapshotRepo: 'libs-snapshot'
rtMaven.deployer server: server, releaseRepo: 'libs-release-local', snapshotRepo: 'libs-snapshot-local'
env.MAVEN_HOME="/usr/share/maven"
def buildInfo = rtMaven.run pom: 'sub-dir/pom.xml', goals: 'clean install'
server.publishBuildInfo buildInfo
}使用env.MAVEN_HOME而不是依赖于工具配置似乎是可行的。把它放在rtMave.run之前。
https://stackoverflow.com/questions/50328300
复制相似问题