Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Teamcity Artifactory:jfrogcli命令获取特定工件的完整路径_Teamcity_Artifactory_Jfrog Cli - Fatal编程技术网

Teamcity Artifactory:jfrogcli命令获取特定工件的完整路径

Teamcity Artifactory:jfrogcli命令获取特定工件的完整路径,teamcity,artifactory,jfrog-cli,Teamcity,Artifactory,Jfrog Cli,我正试图通过开发一些神奇的python脚本来改进我所在领域的开发过程,以处理构建和部署过程。我正在使用Teamcity和Artifactory来构建和管理工件 该过程中的一个步骤是从Artifactory获取最新部署的构建工件的工件URL。我想创建一个CLI命令,它可以接受一些参数,如存储库名称、工件的名称/模式等,并生成工件的完整路径 想知道以前是否有人使用过jfrog CLI,是否可以帮助我创建这样的命令 我在下面分享一些示例工件以供参考: https://artifactory-1.dts

我正试图通过开发一些神奇的python脚本来改进我所在领域的开发过程,以处理构建和部署过程。我正在使用Teamcity和Artifactory来构建和管理工件

该过程中的一个步骤是从Artifactory获取最新部署的构建工件的工件URL。我想创建一个CLI命令,它可以接受一些参数,如存储库名称、工件的名称/模式等,并生成工件的完整路径

想知道以前是否有人使用过jfrog CLI,是否可以帮助我创建这样的命令

我在下面分享一些示例工件以供参考:

https://artifactory-1.dts.fm.abcgrp.net/artifactory/fsap-staticfile-libs-releases-local/fsap/aap-aml-ui/2.2.1/aap-aml-ui-2.2.1-dist.zip

https://artifactory-1.dts.fm.abcgrp.net/artifactory/fsap-libs-snapshots-local/com/abc/fsap/aap-aml-msvc/0.0.0-feature-FSAP-9787-SNAPSHOT/aap-aml-msvc-0.0.0-feature-FSAP-9787-20200807.134731-5-dist.jar

https://artifactory-1.dts.fm.abcgrp.net/artifactory/fsap-libs-snapshots-local/com/abc/fsap/aap-lime-msvc/0.0.0-development-SNAPSHOT/aap-lime-msvc-0.0.0-development-20200717.061034-4-dist.jar
您可以使用JFrog CLI附带的来获取列出的所有文件。然而,它将列出所有满足需求的工件的全部信息,并且还将列出Artifactory中的repo路径,因此我希望对于您的特定用例,您可能需要想出一些过滤器来执行这2个操作

仅筛选搜索命令中的路径值 将JFrog基本URL追加到每一行。 实现这一点的快速方法之一是使用简单的jq过滤器,如下所示:

jfrog rt s "myrepo/*.zip" | grep -v "\[INFO\]" | jq -rj '.[] | "https://myartifactory.com/artifactory/", .path, "\n"'
您可以使用JFrog CLI附带的来获取列出的所有文件。然而,它将列出所有满足需求的工件的全部信息,并且还将列出Artifactory中的repo路径,因此我希望对于您的特定用例,您可能需要想出一些过滤器来执行这2个操作

仅筛选搜索命令中的路径值 将JFrog基本URL追加到每一行。 实现这一点的快速方法之一是使用简单的jq过滤器,如下所示:

jfrog rt s "myrepo/*.zip" | grep -v "\[INFO\]" | jq -rj '.[] | "https://myartifactory.com/artifactory/", .path, "\n"'

gerp-v部分的原因是什么?所有的信息行都会转到stderr。这样做是为了方便地获取命令结果。如果我遗漏了一些不起作用的东西,请告诉我。上面说jq不被视为内部/外部通信。gerp-v部分的原因是什么?所有的信息行都会转到stderr。这样做是为了方便地获取命令结果。如果我遗漏了什么,请告诉我。上面说jq不被视为内部/外部通信。