我已经创建了一个木偶脚本来安装Azure客户端,并且在使用yum install之前的最后一步中,我想确保之前没有安装该软件包,以防止重复安装。
我的概念是 如果az --help的输出没有任何结果(这意味着没有安装Azure),请执行脚本。
或者如果你们有更好的选择,请指导我,谢谢!
我的代码是
#install azure client
exec { 'install-azure':
command => '/bin/yum install azure-cli -y',
path => '/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:',
unless => 'az --help',
#require => Exec['yumrepolist']
}
代码似乎有问题,我已经使用
检查了特定的代理puppet agent -t
注意: / Stage [main] / Os_preparation :: Azure_install / Exec [yumrepolist] /返回: 执行成功错误: / Stage [main] / Os_preparation :: Azure_install / Exec [install-azure]:可以 无法评估:找不到命令'az'
有什么想法吗?谢谢
答案 0 :(得分:1)
您应该使用cloud:
consul:
host: consul //container name
port: 8500
资源安装azure-cli
。另外,您应该将其Yum存储库添加为package
资源。
尝试以下类似方法,该方法复制了https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-yum?view=azure-cli-latest上的说明。
yumrepo