一次调用检索存储库及其标记版本的列表

时间:2019-03-18 14:20:54

标签: azure command-line-interface sh

我有两个Azure的CLI查询。

az acr repository list

检索我的容器注册表中的存储库列表

az acr repository show-tags

检索第一个查询返回的每个存储库的版本标签

这将导致首次调用以检索列表,然后对返回的每个存储库调用1次。是否有其他方法可以将所需的呼叫次数减少到一个?一次即可检索存储库列表及其版本。

show-tags命令需要一个必填的存储库参数,我不知道有任何其他命令可以返回所需的信息。

3 个答案:

答案 0 :(得分:1)

AFAIK当前没有其他选择可以一次性检索存储库及其版本列表。我建议通过在此处发布此反馈来分享此反馈-> https://feedback.azure.com/forums/903958-azure-container-registry

您可能已经知道的建议是,现在,作为一种解决方法,您可以开发一个小脚本来使用list命令获取所有存储库,并依次输入每个存储库名称作为输入。 show tags命令并连接所有存储库的输出。

希望这会有所帮助!

答案 1 :(得分:1)

截至目前,不可能在一个呼叫中完成它。

正如已经提到的那样,最少的调用步骤是创建一个脚本来获取所有存储库(将存储库存储在变量中),然后在循环中使用az acr repository show-tags来获取其标签。

与打击相同的脚本:

result="$(az acr repository list -n ACR_name --output tsv)"

for i in $result; do az acr repository show-tags -n ACR_name --repository $i; done

测试结果如下:

enter image description here

答案 2 :(得分:0)

要获取可与docker pull一起使用的完整图像名称的列表,请执行以下操作:

export REGISTRY=mycontainerregistry
#!/bin/bash
mycontainers=$(az acr repository list --name $REGISTRY --output tsv)
for i in $mycontainers
do
    echo -n "$REGISTRY.azurecr.io/$i:"
    az acr repository show-tags -n $REGISTRY --repository $i --output tsv|tail -1
done