我有一个 site.yml,它导入了几个剧本。
- import_playbook: webservers.yml
- ....
每个剧本都“调用”了几个角色:
- name: apply the webserver configuration
hosts: webservers
roles:
- javajdk
- tomcat
- apache
如何只运行 javajdk 角色?
这将运行所有角色......
ansible-playbook -i inventory webservers.yml
我知道有标签 ,但我如何将它们分配给一般的角色?
最佳答案
标签是很自然的方式。为以下角色指定它们的三种方法:
- name: apply the webserver configuration
hosts: webservers
roles:
- role: javajdk
tags: java_tag
- { role: tomcat, tags: tomcat_tag }
tasks:
- include_role:
name: apache
tags: apache_tag
您可以明确指定要运行的标签:
ansible-playbook example.yml --tags "java_tag"
Reference to docs
关于ansible - 如何只运行 Ansible 剧本的一个角色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47414988/