为每个客户使用自定义ansible变量

时间:2020-01-22 19:56:35

标签: ansible

我正在尝试找出在ansible-playbooks / ansible-roles中使用自定义变量的最佳策略是什么。 我现在正在做的是:


Customer1:

  • inventories/customer1.ini上使用Customer1设备创建新的清单文件
  • 覆盖vars/controls.yml上的客户变量
  • 为Customer1 ansible-playbook -i inventories/customer1.ini site.yml执行我的ansible-playbook / ansible-role

Customer2:

  • inventories/customer2.ini上使用Customer2设备创建新的清单文件
  • 覆盖vars/controls.yml上的客户变量
  • 为Customer2 ansible-playbook -i inventories/customer2.ini site.yml执行我的ansible-playbook / ansible-role

客户N:


我想做的就是为每个客户创建一个不同的变量控件vars/controls.ymlvars/controls-customer1.yml vars/controls-customer2.yml

我的ansible-playbook / ansible-role能够读取它而没有任何更改(可重用性)。

希望您能对此有所启发。

谢谢!

1 个答案:

答案 0 :(得分:0)

您还可以在此/这些剧本的ansible.cfg中添加以下内容:

[defaults]
inventory = ./inventories/

然后将在目录“ inventories”内加载所有“ inventory”文件。如果您不特别希望使用此特定清单,则不必在命令行上使用-i选项。

相关问题