Ansible 的 import_tasks 和 include_tasks 總結

前幾天在寫 ansbile 的 roles 的時候,定義了一些 tag,但是在使用 ansible-playbook nginx.yml --list-tags 的時候始終不顯示我定義的 tag,後來查閱發現原來是 include_tasks 搞的鬼,這裏簡單總結一下:

  • import_tasks: 靜態加載,也就是 playbook 在運行一開始解析的時候,加載子任務中全部變量。

  • include_tasks: 動態加載,就是在執行到該子任務的時候,纔會加載該子任務中全部變量。

  • import_tasks 調用的子任務文件名稱也就不可以使用變量,但是 include_tasks 調用的子任務名稱則可以加變量。

  • import_tasks 會調用子任務中的所有 tag,使用 –list-tags 參數時也能看到,但是 include_tasks 調用的子任務中如果定義了tag,則不會生效。

參考:https://docs.ansible.com/ansible/2.6/user_guide/playbooks_tags.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章