JFrog CLI无法在JFrog Artifactory中的工件上为第一个属性名称设置属性

时间:2019-02-28 01:24:23

标签: artifactory jfrog-cli

JFrog Artifactory: 5.8.4 Professional。

JFrog CLI: 1.12.1

我正在使用the official documentation of JFrog CLI来设置Artifactory回购中可用的工件上的几个属性。

  • 注意:我暂时不想使用Artifactory AQL并尝试使用jfrog cli使其正常工作。

我成功配置了CLI客户端(文件~/.jfrog/jfrog-cli.conf已成功创建,其中包含使用用户名/密码和API密钥进行身份验证的条目)。

要在工件上设置属性,请参考以下示例:

jfrog rt sp "generic-local/*.zip" "a=1;b=2,3"

并运行以下命令(在自由样式的Jenkins作业中):

$ jfrog rt sp --server-id="artifactory-dev-instance" --url=${ARTIFACTORY_URL} ${REPO}/${FILE_PATH}/${FILE_NAME} -- props="release=${RELEASE};VERSION=${VERSION};PIPELINE_VERSION=${RELEASE}_${VERSION}_${BUILD_NUMBER};fileType=automated-file;PROJECT=${PROJECT}"

此命令成功退出,没有给出错误,并应用了除第一个属性release=${RELEASE}以外的所有具有预期值的属性。

问题:为什么jfrog rt sp没有在工件上应用release属性,而所有其他属性都已成功应用正确的值。

实际变量值无所谓,因为我可以看到其他属性已成功应用于给定的Artifactory实例(ARTIFACTORY_URL),目标文件(位于repo / path / file中)以及具有其值的各个属性。

1 个答案:

答案 0 :(得分:0)

因此,这证明了它的真实性(jfrog cli中的 bug 部分)。重新添加该第一个属性,即,将缺少的第一个属性添加两次,它适用于所有属性(包括第一个属性),同时提供要添加的属性。

现在release属性也正在应用。

$ jfrog rt sp --server-id="artifactory-dev-instance" --url=${ARTIFACTORY_URL} ${REPO}/${FILE_PATH}/${FILE_NAME} -- props="release=${RELEASE};release=${RELEASE};VERSION=${VERSION};PIPELINE_VERSION=${RELEASE}_${VERSION}_${BUILD_NUMBER};fileType=automated-file;PROJECT=${PROJECT}"

$ jfrog rt sp --server-id="artifactory-dev-instance" --url=${ARTIFACTORY_URL} ${REPO}/${FILE_PATH}/${FILE_NAME} -- props="release=${RELEASE};VERSION=${VERSION};PIPELINE_VERSION=${RELEASE}_${VERSION}_${BUILD_NUMBER};fileType=automated-file;PROJECT=${PROJECT};release=${RELEASE}"