2016-11-23 53 views
1

如何根据构建作业字符串参数的值为Jenkins Artifactory插件选择不同的下载规范?在Jenkins中使用Artifactory插件有条件地从artifactory下载文件

对于给定的字符串参数值,我想从artifactory下载一个文件夹,对于不同的字符串参数值我想从artifactory下载不同的文件夹。

我试图直接从artifactory中获取这些文件夹,因为它们包含我的构建需要使用和更改的不同项目的构建输出,我不能仅将它们检入到构建的SCM中,但必须在构建时拥有当前版本。

我已经看过Jenkins Artifactory PluginJfrog Artifactory user guide的页面,但是我没有发现任何关于如何使用插件来完成此操作的内容。

我正在使用带有Generic-Artifactory集成选项的自由式构建。

詹金斯版本:1.651.3
Artifactory的插件版本:2.8.1
Artifactory的版本4.6.1

回答

4

可以使用环境变量在这两个规范路径和规范的内容。

就您的情况而言,您可以上载到您的SCM的每个作业的路径中带有作业名称的规范。然后,您可以使用环境变量动态设置规格文件路径,如下所示: specFilePath

另一种方法是在每个作业中设置一个变量(例如PATTERN-PATH)并在规范中使用它。

{ 
    "pattern": "libs-snapshot-local/${PATTERN-PATH}/*", 
    "target": "out/downloaded/" 
} 
+0

你是如何设置变量的?我使用String参数,它似乎不适用于规范。 –

+0

我正在使用“此项目已参数化”>“字符串参数”。 刚刚重试这个,它工作正常。 你使用的是什么版本的插件? 你在使用“freestyle build”还是“Pipeline script”? 您是否在日志中看到与配置中相同的变量 - $ {YOUR_VARIABLE}? –

+0

是的,我主要使用freestyle和最新的插件和最新的jenkins。没有在日志中。如果我在shell中回应它,是的,它被替换。 –

相关问题