Linux 使用Chef在VM上安装Azure CLI

Linux 使用Chef在VM上安装Azure CLI,linux,azure,chef-infra,yum,recipe,Linux,Azure,Chef Infra,Yum,Recipe,我目前正在与Chef一起编写一个脚本(菜谱),该脚本在Azure(Linux)虚拟机上执行。出于我的目的,我需要在该VM上安装Azure CLI。我从文件中找到了答案。不幸的是,我得到的错误是我不能使用“sudo”,如果我删除“sudo”,它就找不到“azure cli”。配方的这一部分如下所示: cli = 'echo -e "[azure-cli] \ nname = Azure CLI \ nbaseurl = https: //packages.microsoft.com/yu

我目前正在与Chef一起编写一个脚本(菜谱),该脚本在Azure(Linux)虚拟机上执行。出于我的目的,我需要在该VM上安装Azure CLI。我从文件中找到了答案。不幸的是,我得到的错误是我不能使用“sudo”,如果我删除“sudo”,它就找不到“azure cli”。配方的这一部分如下所示:

cli = 'echo -e "[azure-cli] \ nname = Azure CLI \ nbaseurl = https: //packages.microsoft.com/yumrepos/azure-cli \ nenabled = 1 \ ngpgcheck = 1 \ ngpgkey = https: //packages.microsoft.com/keys/microsoft.asc "> /etc/yum.repos.d/azure-cli.repo ' 

execute "Install Azure CLI 1" do
    command "sudo rpm --import https://packages.microsoft.co/keys/microsoft.asc"
end

execute "Install Azure CLI 2" do
    command "sudo sh -c " + cli
end

execute "Install Azure CLI 3" do
    command "yes | sudo yum install azure-cli"
end

我怎样才能让它工作?任何帮助或建议都将不胜感激

您基本上已经制作了一个Shell脚本。这不是理想的方法。花些时间熟悉一下,完成这项工作

例如:

  • 要管理YUM存储库,请使用资源
  • 要安装软件包,请使用资源
至少,如下所示:

yum\u存储库“azure cli”do
说明“Azure CLI”
baseurl'https://packages.microsoft.com/yumrepos/azure-cli'
gpgkey'https://packages.microsoft.com/keys/microsoft.asc'
结束
yum\u包“azure cli”