Ansible执行所有依赖的角色,但是我在元文件夹main.yml看起来是这样的:Ansible运行所有的依赖作用,甚至指定具体的标签
---
dependencies:
- { role: common, caller_role: docker, tags: ['packages'] }
所以,ansible应执行共同作用的那部分,包含以下:
---
- name: Install required packages
package: name={{ item.name }} state=present
with_items:
- "{{ vars[caller_role]['SYSTEM']['PACKAGES'] }}"
tags:
- packages
- name: Modify /etc/hosts
lineinfile:
dest: /etc/hosts
line: "{{ vars[caller_role]['REGISTRY']['ip'] }} {{ vars[caller_role]['REGISTRY']['hostname']}}"
tags:
- write_etc_hosts
我执行ansible 2.1.1.0如下:ansible-剧本--list标签site.yml和我在这里复制site.yml:
- hosts: localhost
connection: local
remote_user: root
become: yes
roles:
- docker
最后的树:
├── common
│ ├── defaults
│ │ └── main.yml
│ ├── files
│ ├── handlers
│ │ └── main.yml
│ ├── meta
│ │ └── main.yml
│ ├── README.md
│ ├── tasks
│ │ └── main.yml
│ ├── templates
│ ├── tests
│ │ ├── inventory
│ │ └── test.yml
│ └── vars
│ └── main.yml
├── docker
│ ├── defaults
│ │ └── main.yml
│ ├── files
│ ├── handlers
│ │ └── main.yml
│ ├── meta
│ │ └── main.yml
│ ├── README.md
│ ├── tasks
│ │ └── main.yml
│ ├── templates
│ ├── tests
│ │ ├── inventory
│ │ └── test.yml
│ └── vars
│ └── main.yml
└── site.yml
我不明白发生了什么事..
这仍然将追加'web'和'foo'标签在'foo.yml'每一项任务... –