我正在使用AWS动态库存脚本来描述here,以根据其标签提取我的EC2实例的子集 . 我想 Build 一个多级环境,我可以使用这个动态库存脚本在DEV或PRD上运行我的Playbook .
我的项目目录设置为:
ansible.cfg
inventories/
-- dev/
-- ec2.ini
-- group_vars/
-- host_vars
-- inventory
-- prd/
-- ec2.ini
-- group_vars/
-- host_vars
-- inventory
playbooks/
-- playbook1.yml
-- playbook2.yml
-- playbook3.yml
roles/
site.yml
dev
和 prd
目录中的 inventory
文件是dynamic inventory script .
我将每个ec2.ini文件设置为基于AWS标记为dev或prd环境创建动态库存 .
如果我试图运行 ansible-playbook -i dev site.yml
我收到一个错误: [WARNING]: Unable to parse /home/ansibleadmin/dev_playbook/dev as an inventory source
这种方法应该适用于静态库存 - 由于某种原因,它不适用于动态库存吗?实现这个目标的正确方法是什么?
1 回答
你得到一个警告:
根据您在上面发布的"project directory"树,您的计算机上不存在警告消息
/home/ansibleadmin/dev_playbook/dev
中的目录 .使用相对路径的正确命令(在playbook目录中)是:
使用绝对路径的正确命令是: