我在jenkins中有一个构建工作,它从github为任何分支构建项目。将在构建作业工作区中创建包,版本为xxxx-yyyyy-2.15.0-SNAPSHOT.zip
。
我的下一个神器推送作业的文件规范如下:
{
"files": [
{
"pattern": "/var/lib/jenkins/workspace/Jobname/target/*/xxxx-yyyyy*.zip",
"target": "libs-snapshot-local/xxxx-yyyyy/",
"recursive": "false"
}
]
}
上面的filespec识别模式并在libs-snapshot-local/xxxx-yyyyy/
中上传zip。但我需要上传文件,其中包含使用zip文件xxxx-yyyyy-2.15.0-SNAPSHOT.zip
上提供的版本名创建的文件夹。
有人可以帮我创建一个具有版本名称的动态文件夹吗?关于如何在filespec中指定目标路径的任何想法?
答案 0 :(得分:6)
文件规范可以使用placeholders来创建更灵活的路径 例如,在您的情况下:
{
"files": [
{
"pattern": "/var/lib/jenkins/workspace/Jobname/target/*/(xxxx-yyyyy*).zip",
"target": "libs-snapshot-local/{1}/",
"recursive": "false"
}
]
}
请注意模式中的括号和目标中使用的占位符标记{1}。