我正在尝试使用Jenkins远程访问API创建一个jenkins作业[1]。我想要实现的是,我想使用我发送到创建作业API的作业配置(config.xml)为作业指定本地maven存储库(而不是使用全局存储库)。我怎样才能做到这一点?我应该添加(或更改)的xml属性是什么?
[1] https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API
答案 0 :(得分:0)
根据API,它有类似的东西:
curl -X POST -H "Content-Type:application/xml" -d @config.xml "http://JENKINS_HOST/createItem?name=Some_Job_Name"
答案 1 :(得分:0)
根据需要手动配置作业,然后访问URL $JENKINS/job/$JOB/config.xml
- 您将能够看到所需配置所需的XML标记。
答案 2 :(得分:0)
我们可以通过在作业配置中指定localRepository
元素来为特定作业定义本地maven存储库。
默认情况下,jenkins开箱即可支持三种选项。
默认存储库(〜/ .m2 / repository)
<localRepository class="hudson.maven.local_repo.DefaultLocalRepositoryLocator"/>
执行者的本地
<localRepository class="hudson.maven.local_repo.PerExecutorLocalRepositoryLocator"/>
工作区的本地
<localRepository class="hudson.maven.local_repo.PerJobLocalRepositoryLocator"/>
因此,如果要根据构建参数或构建信息定义自己的本地存储库定位器,可以扩展hudson.maven.local_repo.LocalRepositoryLocator
类并实现自己的逻辑并在作业中的localRepository
元素下指定它组态。
例如:
<localRepository class="org.sample.MyOwnLocalRepositoryLocator"/>