16.3. テンプレートのインポート
任意のリポジトリーからテンプレートをインポートできます。/tmp/dir
、git://example.com
、https://example.com
、ssh://example.com
などの異なるプロトコルを使用してリポジトリーにポイントさせることもできます。
Satellite が提供するテンプレートはロックされ、デフォルトではインポートできません。この動作を上書きするには、Template Sync メニューの Force import
設定を yes
に変更するか、force
パラメーター -d '{ "force": "true" }'
を import コマンドに追加します。
前提条件
各テンプレートに、テンプレートが属するロケーションおよび組織が含まれている必要がある。これは、すべてのタイプのテンプレートタイプに適用されます。テンプレートをインポートする前に、以下のセクションをテンプレートに追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Satellite Web UI の代わりに CLI を使用する場合は、CLI 手順 を参照してください。
API を使用するには、API の手順 を参照してください。
Ansible を使用するには、Ansible の手順 を参照してください。
手順
- Satellite Web UI で、Hosts > Templates > Sync Templates に移動します。
- Import をクリックします。
- 各フィールドに、Administer > Settings > Template Sync で設定した値が入力されます。インポートするテンプレートに従って値を変更します。各フィールドの詳細は、「テンプレート同期設定」 を参照してください。
- Submit をクリックします。
Satellite Web UI はインポートのステータスを表示します。ステータスは永続的ではありません。ステータスページを離れると、ページに戻ることはできません。
CLI 手順
リポジトリーからテンプレートをインポートするには、以下のコマンドを実行します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow テンプレートのインデックス化と管理には、
--prefix
を使用してテンプレートにカテゴリーを設定することができます。大型リポジトリーから特定のテンプレートを選択するには、--filter
を使用してインポートするテンプレートのタイトルを定義します。たとえば、--filter '.*Ansible Default$'
とすると、各種 Ansible Default テンプレートをインポートします。
API の手順
POST
リクエストをapi/v2/templates/import
に送信します。curl -H "Accept:application/json" \ -H "Content-Type:application/json" \ -u login:password \ -k https://satellite.example.com/api/v2/templates/import \ -X POST
# curl -H "Accept:application/json" \ -H "Content-Type:application/json" \ -u login:password \ -k https://satellite.example.com/api/v2/templates/import \ -X POST
Copy to Clipboard Copied! Toggle word wrap Toggle overflow インポートが成功すると、
{"message":"Success"}
が表示されます。
Ansible の手順
-
redhat.satellite.templates_import
モジュールを使用します。
詳細は、Ansible モジュールのドキュメント ansible-doc redhat.satellite.templates_import
を参照してください。