0Pricing
Ansible Academy · レッスン

パイプラインでの冪等性と Lint

ドリフトやスタイル違反を早期に検出します。

「パイプラインでの冪等性と Lint」はCoddyKit上の無料Ansible Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAnsible Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Ansible Academyコースには全4レッスンが含まれています。

verify以外の2つのゲート

優れたロールには、さらに2つの条件があります。冪等であり、lintを通過することです。Moleculeがこの2つを実行してくれます。

冪等性のステップ

Moleculeはロールを2回目に実行し、その出力を確認します。この専用ステップを冪等性と呼びます。

molecule idempotence

2回目の実行で変更ゼロ

2回目の実行では変更がないことが求められます。いずれかのタスクがchangedを報告すると、冪等性のステップでテストが失敗します。

よくある原因

生のcommandモジュールを使ったタスクは毎回実行されるため、冪等性を壊しがちです。代わりに適切なモジュールを使用してください。

lintステップ

lintステップは、ホストが作成される前にYAMLとタスクの静的チェックを実行します。

molecule lint

ansible-lintが支えるチェック

lintはansible-lintを実行し、名前の不足、非推奨の構文、安全でないシェルの使用など、危険なパターンを指摘します。

ansible-lint

yamllintでスタイルをチェック

さらにyamllintも実行し、インデントの誤り、末尾の空白、長すぎる行など、書式の問題を検出します。

マトリクスで早期に失敗

lintはmolecule testの早い段階で実行されるため、スタイルエラーがあると、ホストの作成に時間を使う前に実行が停止します。

CIですべて実行

パイプラインでは、1回のmolecule test呼び出しでlint、converge、verify、冪等性を1つの品質ゲートとして実行できます。

molecule test

失敗時にマージをブロック

そのコマンドをCIに組み込み、テストが失敗したらマージをブロックするようにします。問題のあるロールがmainブランチに到達することはありません。

成功すれば出荷可能

実行が成功すれば、ロールがlintを通過し、正しく適用され、検証され、冪等であることが証明されます。これが本番運用可能であることを示すサインです。

クイックチェック

Moleculeがロールの冪等性をどのように証明するか思い出してください。

まとめ

Moleculeは2つのゲートを追加します。lintがスタイルと危険なパターンを早期に検出し、冪等性によって2回目の実行で何も変更されないことを証明します。CIに組み込みましょう。🚦

よくある質問

「パイプラインでの冪等性と Lint」レッスンは無料ですか?

はい。「パイプラインでの冪等性と Lint」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Ansible Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Ansible Academyコースには全4レッスンが含まれています。

「パイプラインでの冪等性と Lint」で何を学びますか?

ドリフトやスタイル違反を早期に検出します。 ブラウザで直接実行するハンズオンコードでAnsible Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Ansible Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのAnsible Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「パイプラインでの冪等性と Lint」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このAnsible Academyレッスンでコードを書いて実行できますか?

はい。すべてのAnsible Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Infrastructure Code をテストする理由
  2. molecule init と Scenario の構成
  3. Converge、Verify、Test Matrix
  4. パイプラインでの冪等性と Lint
← Ansible Academyに戻る