問題タブ [molecule]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ansible - Molecule for Ansible を使用してインストールおよびアンインストールのシナリオをテストするにはどうすればよいですか?
私が作成している Ansible ロールでは、インストールとアンインストールの両方のシナリオをカバーしています。
foo-install.yml
フラグが に設定されているmain.yml
ときから呼び出されます。install
true
foo-uninstall.yml
フラグが に設定されているmain.yml
ときから呼び出されます。install
false
インストールには RPM パッケージのインストール、構成ファイルのコピー、システム サービスの開始が含まれますが、アンインストールの手順は基本的にインストールを逆に行います。つまり、システム サービスを停止し、RPM パッケージをアンインストールし、アプリケーション フォルダーを削除します。
善良な市民として、CentOS Vagrant ボックスでロールを実行するMoleculeを使用してロールのテストを作成しました。これは、Python テスト (を使用testinfra
) を使用して、RPM がインストールされていること、サービスが開始されていることなどを検証するインストール シナリオでは問題なく機能します。
Molecule を使用してアンインストール シナリオもテストするにはどうすればよいですか? Moleculeのステップを変更して、このようなことをする方法はありますか(簡略化)?
- 作成
- 収束 (役割のインストール部分を実行)
- 冪等性 (インストール部分用)
- 検証 (インストール手順)
- 収束 (役割のアンインストール部分を実行)
- べき等性 (アンインストール部分用)
- 検証 (アンインストール手順)
- 破壊する
たぶん私は何かが欠けているかもしれませんが、このようなことをする方法についての明白な方法 (または例) を見つけていません。
このようなシナリオをカバーする方法はありますか? それとも、インストール シナリオをテストするだけでよいのでしょうか?
ansible - Ansible Molecule でテストするときに、いくつかの役割タスクをスキップするにはどうすればよいですか?
Ansible Molecule を使用して機能テストを実行するときに、いくつかの役割タスクをスキップする最も簡単な方法は何ですか?
ansible - あるサーバーでは分子の prepare.yml を実行し、別のサーバーではプレイブックを実行する方法は?
質問が 1 つあります。問題を説明しようと思います。確認して、それが可能かどうか教えてください。
プレイブックの自動テストに分子と DroneCI を使用しています。分子はネイティブで Proxmox をサポートしていませんが、Ansible には Proxmox モジュールがあるため、Proxmox サーバー上に LXC コンテナーを作成する準備プレイブックを作成しました。それはうまくいきますが、私の LXC コンテナーは DHCP サーバーから IP を取得し、インベントリにその IP がないため、新しく作成された LXC でプレイブックを実行するソリューションがないため、問題があります。
この問題の解決策はありますか、またはこれを行う方法を知っている人はいますか?
ありがとうございました。