我有一个关于如何在JFrog的API调用中使用File Sepc的问题。
我使用Jenkins Artifactory Plugin将工件上传或下载到JFrog,我尝试使用JFrog API(GET/PUT)重写函数来做同样的事情。
但是现在我遇到了一个问题,对于一些工件,我使用文件规范来设置一些属性,最后我上传了这个文件规范。
"files": [
{
"pattern": "${file}",
"target": "${target}" """
if (runID) {
uploadSpec += """,
"props": "artifactId=${runID}"
"""
}
uploadSpec += """
}
]
您可以看到这个artifactId。
在这种情况下,当我使用JFrogAPI上传工件时,我应该如何设置属性?
sh """
curl -sSf -u user:pw -X PUT -T ${zipFile} 'https://${config.artifactory.name}.xxxx:443/artifactory/${path}'
"""
如何调用put api并设置"props": "artifactId=${runID}"
有什么解决办法吗?
1条答案
按热度按时间blpfk2vs1#
首先,如果您可以使用JFrog CLI,那么您应该使用它,因为它使它更简单,并提供了一些现成的高级特性,例如批处理并行上载/下载、文件规范、附加属性、构建信息、身份验证等。
如果您仍希望直接使用Artifactory API来设置属性(这确实是一个可行的好选项),则可以执行以下操作之一:
1.将属性作为矩阵参数添加为upload (deploy) API调用的一部分。
在您的情况下,它应该类似于:
请注意URL末尾的
;key=value
。1.在上载后,执行第二次调用,以设置项目属性。
在您的情况下,它应该类似于:
使用设置项目属性API -
,或使用更新项目属性API-
如需详细信息,请参阅: