執行ansible-playbook時可使用--tags "tag1,tag2..." 或者 --skip-tags "tag1,tag2..."指定執行的tags或者指定不執行的tags ;
可使用--list-tags查看playbook中有哪些tags會被執行debug
playbook: tags.yml play #1 (localhost): test tags TAGS: [] TASK TAGS: [always, common]
到ansible 2.5之後目前的tags有如下幾個:ip
always : 除非skip-tags指定這個標籤,不然該標記爲always的task一直會執行; --tags always 只執行標記了always的tasks
never : 除非tags 指定了這個tag,不然都不會執行 ;--tags never 執行標記always和never的tasks
tagged : --tags tagged 執行全部有tags標籤的tasks,但不包括tags標籤是never的tasks
untagged : --tags untagged 執行全部沒有tags標籤的task和tags標籤爲always的task;
--tags all :執行全部的tags標籤爲非never的task,包括有tags標籤和無tags標籤的tasks
--tags 自定義的tag 執行tags爲指定的標籤名的tasks和tags爲always的tasks
若是執行命令ansible-playbook site.yml 時不指定tags,則會執行全部tags爲非never的tasks
--skip-tags 自定義tag 執行全部非指定tag和非never的tasksit