【发布时间】:2021-02-14 14:37:51
【问题描述】:
我必须通过 azure 发布管道自动删除 azure blob 存储(特定容器)中的所有文件。所以我配置了一个任务来动态获取 Microsoft 代理的 IP 地址并将 IP 地址添加到 blob 防火墙中。下面的脚本有时会成功运行,但我无法在防火墙列表中看到 IP。
同样的脚本多次失败并抛出类似的错误
该请求可能被存储帐户的网络规则阻止。请 使用 'az storage account show -n accountname 检查网络规则集 --query networkRuleSet'。如果要更改在没有规则匹配时应用的默认操作,请使用 'az 存储帐户更新'。
IP=`curl -s http://ipinfo.io/json | jq -r '.ip'`
echo "Opening firewall for the IP : $IP"
az storage account network-rule add -g custom-web --account-name "customwebapp" --ip-address $IP
对此我不确定,任何人都可以建议我实现此目的的最佳方法或通过 Microsoft 托管代理连接 azure blob 的另一种安全方法?
参考文献 https://docs.microsoft.com/en-us/cli/azure/storage/account/network-rule?view=azure-cli-latest
【问题讨论】:
-
可以参考这个ticket
-
@WalterQian-MSFT - 谢谢 - 我已经检查了该解决方案并在添加网络规则后添加了 sleep 60 秒。但不是运气
-
我遇到了和你一样的问题,你可以尝试重新运行失败的作业。
-
是的,我已经暂时这样打补丁了,但是根据持续部署,我们需要找到 RC 并修复。
-
作为一种解决方法,您可以重新运行失败的作业。您还可以在发布管道的部署后条件中添加自动重新部署触发器。这是Developer community 中的同一张票。请投票并关注这张票。
标签: azure azure-devops firewall azure-blob-storage azure-cli