我不知道az登录的工作方式,但是它必须保存凭据以供后续az命令使用。这意味着它不能像在CI管道中那样使用,在CI管道中,多个并发管道可能使用同一系统帐户在同一构建计算机上运行。
那么,我们如何在发布管道中使用Az CLI?
(我知道Az Azure DevOps任务,但是我无法使其工作。)
P.S。
我们使用本地Azure DevOps Server 2019。
答案 0 :(得分:0)
如果我正确理解了您的问题,答案是it's sometimes problematic to use multiple self-hosted agents for pipelines that use singleton tools on the same machine:
如果并行构建作业使用相同的单例工具部署(例如npm软件包),您也可能会遇到问题。例如,一个内部版本可能会更新依赖关系,而另一内部版本正在使用依赖关系,这可能会导致不可靠的结果和错误。
我想这可能会扩展到诸如在同一系统帐户上尝试单独的z会话之类的问题。尽管-并且我自己还没有尝试过-但我想知道您是否可以尝试将az login
与服务主体客户证书一起使用,如here所示:
az login --service-principal -u http://azure-cli-2016-08-05-14-31-15 -p ~/mycertfile.pem --tenant contoso.onmicrosoft.com
编辑:从此PR找到了issue,因此看起来您可以同时运行会话。尽管我仍然不确定,如前所述,如果您要(例如)修改Az CLI工具本身,会发生什么情况。