【问题标题】:How to set up az cli concrete version in Azure DevOps如何在 Azure DevOps 中设置 az cli 具体版本
【发布时间】:2020-03-20 13:05:05
【问题描述】:

在上次更新 Azure DevOps 之后 我们的管道停止工作。
我正在使用AZURE CLI 任务。
调查显示az cli 已更新为2.2.0,但我们这边没有任何变化。

/usr/bin/az --version
azure-cli                          2.2.0

一些az cli操作开始打印警告。
Warnings默认在bash重定向到错误流, 所以我最终得到:

Error: The process '/bin/bash' failed because one or more lines were written to the STDERR stream

如何为我的管道设置az cli 的具体版本?
我希望管道在 Azure DevOps 更新中保持稳定。

【问题讨论】:

  • 可以安装具体的cli版本或者update it to latest version
  • az cli 是预装的,我不能,例如降级。我的脚本是使用az cli 的具体版本编写的。过了一会儿,默认的az cli 版本已经上升,我的管道停止工作。我想设置az cli版本,什么时候上去自己决定。
  • 针对特定症状的另一个选项是将选项 --only-show-errors 添加到您的 az cli 命令中,这将防止将警告写入标准错误

标签: bash azure azure-devops azure-cli


【解决方案1】:

使用 Azure DevOps 托管代理时,某些软件会自动安装在计算机上。完整列表可以在hereUbuntu 找到。

其中一个软件是Azure CLI:Latest。因此,如果您想降级,则需要安装新版本。以下命令是我设法安装新版本(Bash)的方式:

sudo apt install -y --allow-downgrades azure-cli=%AZ VERSION%-1~bionic

用法:

sudo apt install -y --allow-downgrades azure-cli=2.2.0-1~bionic

诀窍是在指定要安装的版本后使用~bionic

【讨论】:

  • 很好,仅供参考,如果您使用的是图像“ubuntu-18.04”,则此命令有效,如果您使用的是“ubuntu-20.04”,请将“bionic”更改为“focal”
【解决方案2】:

如何在 Azure DevOps 中设置 az cli 具体版本

要解决错误,请尝试使用“标准错误失败”选项再次运行任务未选中

此外,恐怕没有这种开箱即用的方式来设置az cli 的具体版本。我也不能通过 python 命令或巧克力包在已经具有最新版本 az cli 的代理中安装旧版本:

python 命令:

pip install --pre azure-cli --extra-index-url https://azurecliprod.blob.core.windows.net/edge

此命令行仅安装最新版本的az cli。由于我没有旧版本的url,所以在已经安装了最新版本的情况下,我无法测试它是否可以使用python命令安装旧版本az ci。

然后我用巧克力包测试一下:

https://chocolatey.org/packages/azure-cli/2.1.0#individual

choco install azure-cli --version=2.1.0 --force

但是,由于存在最新版本的包,此安装命令仍然失败。

查看this thread了解更多详情。

或者,您可以设置private agent 来构建您的项目,并通过 choco 包安装旧版本的 azure-cli。

希望这会有所帮助。

【讨论】:

  • 感谢@Leo 的提示。我不想取消选中Fail on Standard Error,而当此步骤失败时,管道的其余部分没有意义。
  • @wolszakp,能够理解您的选择。但就像我测试的一样,我们目前似乎无法设置 az cli 版本,因为我们没有指定要安装的 az cli 版本的 url。您可以在我们的 UserVoice 网站 (developercommunity.visualstudio.com/content/idea/…) 上提交对该功能的请求,这是我们产品建议的主要论坛。感谢您帮助我们构建更好的 Azure DevOps。或者我们可以设置我们的私人代理。
  • 感谢@Leo 的支持和快速反应。我真的很喜欢 Azure DeOps。它的发展速度也让我印象深刻。这是建议:developercommunity.visualstudio.com/idea/960733/…
【解决方案3】:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-16
    • 1970-01-01
    • 2020-05-28
    • 1970-01-01
    相关资源
    最近更新 更多