$30 off During Our Annual Pro Sale. View Details »

タグの継承を知らずにやらかした話 / ansible-tag-inherit

タグの継承を知らずにやらかした話 / ansible-tag-inherit

zaki-lknr

July 20, 2021
Tweet

More Decks by zaki-lknr

Other Decks in Technology

Transcript

  1. 今日の内容 Ansible Night Online 2021.07 #ansiblejp 2 ▹ 詳細ははてなブログで! [Ansible]

    そのtag設定、想定通りに動いてま すか? (継承機能とその実装を確認する ) https:/ /bit.ly/ansiblejp-2021-tag-inherit ※ 公式ドキュメント https:/ /docs.ansible.com/ansible/latest /user_guide/playbooks_tags.html
  2. 自己紹介 Hiroshi Miyazaki AP Communications Co., Ltd. Twitter: zaki_hmkc Qiita

    / GitHub: zaki-lknr Ansible Night Online 2021.07 #ansiblejp 3 趣味から仕事へ→ 最近触ってない…→ ドキュメント検索 Chrome拡張usansible 【ハンズオンセミナー】SmartCSとAnsibleの連携 による 自動化の可能性を体験! 7/29開催
  3. --- - hosts: localhost become: true roles: - role: install_server

    tags: install - role: os_configure tags: config タグの継承 (roleの場合) Ansible Night Online 2021.07 #ansiblejp 6 ▹ Role呼び出しにタグ設定 ▹ 呼び出されるタスクはすべて呼び出し元に 設定されたタグが追加される --- - name: install httpd ansible.builtin.yum: name: httpd tags: never - name: configure httpd ansible.builtin.template:
  4. --- - name: install httpd ansible.builtin.yum: name: httpd tags: never

    - name: configure httpd ansible.builtin.template: Roleの呼び出し元でタスク実行が制御される Ansible Night Online 2021.07 #ansiblejp 7 ▹ タスクにneverタグ設定 ▹ neverは明示的に指定しないと動作しない のつもりだったけど…
  5. ▹ タスクにneverタグ設定 ▹ neverは明示的に指定しないと動作しない のつもりだったけど… --- - name: install httpd

    ansible.builtin.yum: name: httpd tags: never - name: configure httpd ansible.builtin.template: Roleの呼び出し元でタスク実行が制御される Ansible Night Online 2021.07 #ansiblejp 8 roles: - role: install_server tags: install 呼び出し元Roleのタグで実 行がコントロールされる
  6. 対策とまとめ ▹ 実行されるタスクやタグを確認するオプションを活用し ましょう ▸ --list-tasks ▸ --list-tags ▸ 確認できるのはimportしたタスク

    ▹ 機能が継承されるのもimportしたタスク ▸ タグだけではない ▸ when, check_mode, ignore_errors, など… ▹ 参考ブログ: https:/ /bit.ly/ansiblejp-2021-tag-inherit Ansible Night Online 2021.07 #ansiblejp 9