本文へスキップ

コレクションと requirements.yml でバージョンを固定する

Pro会員限定上級約39分6レッスン

同じプレイブックが、人によって・CI によって違う動きをする原因の多くは、入っているコレクションの版の違いです。コレクションの探し方(collections_path)を確かめ、requirements.yml から入れ、メジャーバージョンの破壊的変更を版の範囲指定で防ぎ、CI と同じ条件で動くことを確かめます。

対象者: 「自分の PC では動くのに CI で落ちる」を経験した方 / チームでコレクションを使い始めた方

前提知識: プレイブックの構成設計: import と include 修了程度

この教材を終えると、できるようになること

  • ansible-galaxy collection list と ansible-config dump で、使われるコレクションの場所と版を説明できるようになる。
  • requirements.yml の書き方を読み、ansible-galaxy collection install -r でリポジトリの collections/ に入れられるようになる。
  • コレクションの更新でロールの入力が変わったことを、エラーと argument_specs から読み取れるようになる。
  • requirements.yml に版の範囲を書き、意図した版が入ってプレイブックが動くことを確かめられるようになる。
  • ホームのコレクションに頼っていないかを、CI と同じ collections_path で確かめられるようになる。

修了後の姿: 大規模・複数チームで使えるAnsibleコードを設計・テスト・配布し、変更をエラーを出さずに安全に本番へ流せる自動化エンジニアへ。

この講座はPro会員限定です。無料の会員登録後、無料レッスンのあるコースから学習を始められます。