我定义了一些库存,包含变量中定义的软件版本号。
我希望在我的产品和UAT库存之间共享相同的版本号,以确保产品发布与UAT中测试的产品匹配。
是否可以在某些库存之间共享变量而不是其他库存(我认为这可能意味着概念性地"分组"库存)?
我当前设置的示例
/prod/group_vars/all
的内容:
my-app-verion: 1.0.0
/uat/group_vars/all
的内容:
my-app-verion: 1.0.0
/dev/group_vars/all
的内容:
my-app-verion: LATEST
我希望有一个由prod
和uat
库存共享的文件并包含
my-app-verion: 1.0.0
答案 0 :(得分:1)
为什么不在库存中使用群组?可以有一个发布组和一个最新组。然后你可以拥有group_vars / release和group_vars / latest
您的库存文件将是:
PROD:
[release]
prod1
prod2
prodlike:
[release]
prod3
prod4
试验:
[latest]
dev1
dev2
mixedenv:
[releasse]
lab1
lab2
[latest]
lab3
答案 1 :(得分:0)
您可以通过制作库存目录将库存文件分组在一起。将多个库存文件放在一个目录中。然后,您可以在运行playbook时定位inventory目录,Ansible将从目录中的所有文件加载库存。
您还可以将group_vars和host_vars目录放在此目录中。