我在 group_vars/all/vars_file.yml
中定义了所有变量,我的剧本如下:
---
# Top level play site.yml
- hosts: webclient
roles:
- common
- nginx
- nvm
- deploy_web_client
- hosts: appserver
roles:
- common
- gradle
- tomcat
- deploy_sb_war
现在我有3个环境dev / staging / production . 根据我用来更改group_vars下的vars_file.yml的环境,然后运行ansible-play .
有什么方法可以保存3个文件,如“group_vars / dev”,“group_vars / staging”,“group_vars / production”,并在我的主site.yml中指定它
我有3个库存文件,如下所示,根据ansible-play期间的环境,我指定库存文件名
[webclient]
10.20.30.40
[appserver]
10.20.30.41
1 回答
不使用保存在单个目录中的库存文件,而是在单独的目录中使用库存文件,并将
group_vars
放在每个目录中 .然后指向
ansible-playbook
调用中的目录: