Red Hat Ansible Automation Platform連携
Red Hat Ansible Automation Platform (AAP) と統合し、プレイブックをスキャンできます。Spotterにより、有効かつコンプライアンスに準拠したプレイブックのみがAAPで実行されるため、プレイブックの品質とコンプライアンスを向上できます。
Steampunk Spotter を使用した実行環境の構築
AAP のランタイムで Steampunk Spotter を有効にするには、Steampunk Spotter CLI が統合された実行環境(EE)を構築します。
一般的に実行環境を構築するには、次のようなコマンドを実行します。
$ ansible-builder build --file execution_environment.yml
Steampunk Spotter を有効にした実行環境を構築するには、代わりにSpotter CLIの次のコマンドを使用します。
$ spotter build --file execution_environment.yml
このコマンドはansible-builderを実行します。また、Steampunk Spotter CLI が適切にインストールされ、AAP ランタイムに含まれるように構成されていることも確認します。
ansible-builder buildのスイッチやフラグは、spotter buildでも使用できます。スイッチなどの詳細については、
公式ドキュメントを参照してください。
AAP 連携での Steampunk Spotter の使用
AAP連携の Steampunk Spotter は次のタスクを実行できます。
- プリフライトチェック: Ansible によって実行される前に実行環境内のプレイブックをスキャンします。
- ランタイムスキャン: プレイブックの実行中にスキャンを実行します。このモードでは、Spotter は、利用可能なすべての評価済み変数と式を把握します。
実行環境で Steampunk Spotter を制御するには、次の変数を設定します。
- SPOTTER_ENDPOINT: Steampunk Spotter バックエンドの API エンドポイント
- SPOTTER_TOKEN: Steampunk Spotter バックエンドでの認証に使用する API トークン。トークンは、Steampunk SpotterのWebページにログインして生成します。
- SPOTTER_ON_ERROR_EXIT: 0 以外の値に設定すると、失敗状態に達した場合に Steampunk Spotter が AAP 実行を停止します。
- SPOTTER_PREFLIGHT_ENABLED: 0 以外の値に設定すると、プリフライトチェックが実行されます。SPOTTER_DEBUGは必須、SPOTTER_ORGANIZATIONとSPOTTER_PROJECTはオプションです。
- SPOTTER_DEBUG: 0 以外の値に設定すると、デバッグ情報を出力します。プリフライトチェックの場合(SPOTTER_PREFLIGHT_ENABLED)では必須です。
- SPOTTER_ORGANIZATION: スキャンを実行するOrganization IDを指定します。ランタイムスキャンの場合(SPOTTER_RUNTIME_ENABLED)では必須です。
- SPOTTER_PROJECT: スキャン結果が保存されるプロジェクトのIDを指定します。ランタイムスキャンの場合(SPOTTER_RUNTIME_ENABLED)では必須です。
- SPOTTER_RUNTIME_ENABLED: 0 以外の値に設定すると、ランタイムスキャンが実行されます。SPOTTER_ORGANIZATIONとSPOTTER_PROJECTは必須です。
Related Articles
13. 分析とレポート
Spotter アプリは、スキャンを実行した場所に関係なく、スキャン履歴と分析を確認できるため、失敗したプレイブックの実行頻度を追跡し、一般的なエラーを特定し、傾向を見つけ、進行状況を監視できます。 問題の原因を探すのに何時間も費やす必要はありません。プレイブックの問題点に対処し、潜在的な解決策を見つけることがより迅速で簡単、明確になります。 ...
5. スキャンプロファイルの設定
スキャンを実行する際、特定の目標をターゲットにします。 たとえば、あるプロジェクトでは Ansible 環境を新しいバージョンにアップグレードすることに焦点を当て、別のプロジェクトでは現在のバージョンのプレイブックを強化することを目指す場合があります。 つまり、Steampunk Spotter によって提供される特定のチェック結果は、あるプロジェクトには関連していても、他のプロジェクトには関連していない可能性があります。 Spotter は、「--profile」引数 (選択されたチェック ...
9. サプライチェーンの管理
自動化プレイブックで使用される Ansible コンテンツを厳密に管理します。 Ansible Runtimeや Ansible Collection バージョンなどの自動化依存関係が、セキュリティおよびコンプライアンス ポリシーに準拠していることを確認します。 Spotter を使用すると、セキュリティ チームは安全なバージョンを承認し、脆弱なソフトウェアや未承認のソフトウェアをブロックできます。 一方、プレイブック作成者は、Python の専門知識を必要とせずに自動化ロジックに集中できます。 ...
10. Playbookのアップグレード
Spotter は、プレイブックが最新の Ansible バージョンと互換性があるかどうかをチェックし、プレイブックが破損しないようにするためのアドバイスを提供し、 書き換え機能やその他の機能を使用してアップグレード自体を高速化します。 > > spotter scan playbook.yml playbook.yml:8:3: ERROR: [E903] Use a fully-qualified name, such as ansibbuiltin.pip instead of ...
7. 修正の自動適用
Spotter はあらゆるエラーを検出するだけでなく、特定のエラーを自動的に修正することもできます。 「--rewrite」引数を指定して Spotter スキャン コマンドを実行し、Spotter が Ansible コンテンツを自動的に変更することを確認します。 $ spotter scan --rewrite playbook.yml 通常のスキャン中に、Spotter は書き換え可能なチェックを強調表示します。 > spotter scan playbook.yml ...