如何解决如何通过命令行将Azure服务主体详细信息传递给Ansible?
通过将我的服务原理详细信息放入存储在〜/ .azure / credentials中的凭据文件中,我可以使用Ansible连接到Azure
对于开发而言,这是可以的,现在(在生产中)我想不再使用文本凭据文件,而是通过命令行通过参数将凭据传递给Ansible。
这应该怎么做? 感谢您的帮助-谢谢
我尝试过:
ansible-playbook -i ./dev-env/epazure_rm.yml ./dev-env/site.yml -vvvv -u adminuser --extra-vars "AZURE_SUBSCRIPTION_ID=XXX AZURE_CLIENT_ID=XXX AZURE_SECRET=XXX AZURE_TENANT=XXX"
我的Azure动态清单插件文件如下
---
plugin: azure_rm
include_vm_resource_groups:
- rg-devdonal-eastus01
auth_source: auto
subscription_id: "{{ AZURE_SUBSCRIPTION_ID }}"
client_id: "{{ AZURE_CLIENT_ID }}"
secret: "{{ AZURE_SECRET }}"
tenant: "{{ AZURE_TENANT }}"
keyed_groups:
- prefix: tag
key: tags
解决方法
您可以使用environment variables for the credential,然后从环境中读取变量,here是示例:
- debug: msg="{{ lookup('env','HOME') }} is an environment variable"
还有另一个issue显示了示例。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。