ループ上級: loop_control・until/retries・with_* からの移行
Pro会員限定上級約40分6レッスン
ループは便利な反面、出力が読めなくなったり、待ちが足りずに失敗したりします。loop_control で出力を整え、with_* を loop に書き換え、until / retries / delay で「準備ができるまで待つ」処理を書きます。
対象者: ループの出力が長すぎて読めない方 / サービスの再起動直後のチェックが不安定で困っている方
前提知識: Jinja2 フィルタで構造化データを変換する 修了程度
この教材を終えると、できるようになること
- loop_control の label でループの表示を短くし、loop_var / index_var の使いどころを説明できるようになる。
- with_items / with_dict / with_subelements などを、loop とフィルタの組み合わせに書き換えられるようになる。
- until・retries・delay の意味(試行回数は retries + 1)を説明し、再起動後のヘルスチェックを安定させられるようになる。
- subelements で「ユーザー × 鍵」の入れ子をループし、ループの対象をフィルタで正しく絞れるようになる。
- ループに register した結果(results)を selectattr で絞り、変更のあった要素だけを取り出せるようになる。
修了後の姿: 大規模・複数チームで使えるAnsibleコードを設計・テスト・配布し、変更をエラーを出さずに安全に本番へ流せる自動化エンジニアへ。
Chapter 1読める・待てる・壊れないループ
出力の整え方、現在推奨の書き方への移行、リトライ、入れ子のループ、ループ結果の集計を練習します。
Chapter 2確認クイズ
ループ上級の理解度をチェック。