ahuffman.satellite6_manage_content_views
ahuffman.satellite6_manage_content_views
Satellite6のコンテンツビューおよびコンポジットコンテンツビューの公開とプロモーションを管理するAnsibleロールです。
ロール変数
変数名 | 必須 | 説明 | デフォルト値 | 種類 |
---|---|---|---|---|
sat6_fqdn | はい | Satellite6サーバーの完全修飾ドメイン名。 | "" | 文字列 |
sat6_user | はい | コンテンツビューを表示/読み取り/削除/公開/プロモーションする権限を持つSatellite6ユーザー。 | "" | 文字列 |
sat6_pass | はい | sat6_user のパスワード。暗号化された値をAnsibleボールトに保存することをお勧めします。 |
"" | 文字列 |
sat6_organization | はい | コンテンツビューが存在するSatellite6組織の名前。 | "" | 文字列 |
sat6_max_task_retries | いいえ | Satellite 6でタスクの状態を確認する最大試行回数。sat6_retry_delay と併用します。 |
"240" | 整数 |
sat6_retry_delay | いいえ | Satellite6のタスク状態チェックを再試行する間の遅延時間(秒)。sat6_max_task_retries と併用します。例えば、sat6_max_task_retries * sat6_retry_delay / 60 = 120 (1時間)。これが、コンテンツビューの公開、プロモーション、作成、削除が完了するまでの待機時間です。 |
"30" | 整数 |
sat6_content_views | はい | このロールで操作するコンテンツビューのリスト。詳細はsat6_content_views - 辞書フィールド セクションを参照してください。 |
[] | 辞書のリスト |
sat6_content_view_show_stats | いいえ | このロールがコンテンツビューで完了したアクションの要約を表示するかどうか | True | ブール値 |
sat6_content_views - 辞書フィールド
変数名 | 必須 | 説明 | デフォルト値 | 種類 |
---|---|---|---|---|
name | はい | 管理するコンテンツビューの名前。 | N/A | 文字列 |
create_on_missing | いいえ | 未実装です | False | ブール値 |
publish_new_version | いいえ | True の場合、新しいコンテンツビューのバージョンを公開します。 |
False | ブール値 |
publish_description | いいえ | 新しいバージョンを公開する際のコンテンツビューの変更内容の説明。コンポジットコンテンツビューと併用する場合、下位のコンテンツビューもこの説明で公開されます(components.publish_all: True を使用)。 |
"" | 文字列 |
publish_force_yum_metadata_regeneration | いいえ | 新しいコンテンツビューのバージョンを公開する際にyumメタデータの再生成を強制するかどうか | False | ブール値 |
promote_to | いいえ | 新しいコンテンツビューをプロモートするライフサイクル環境/パスのリスト。既にプロモートされた環境はスキップします。 | [] | リスト |
promote_description | いいえ | コンテンツビューをプロモートする際の変更内容の説明。コンポジットコンテンツビューと併用する場合、下位のコンテンツビューもこの説明が適用されます(components.publish_all: True を使用)。 |
"" | 文字列 |
promote_force_yum_metadata_regeneration | いいえ | コンテンツビューをライフサイクル環境/パスにプロモートする際にyumメタデータの再生成を強制するかどうか。 | False | ブール値 |
promote_remove_previous_version | いいえ | 新しいバージョンのコンテンツビューをプロモートする際に以前のバージョンを削除するかどうか。以前のバージョンがプロモートされているすべてのライフサイクル環境に新しいバージョンをプロモートする必要があります(つまり、以前のバージョンをまだライフサイクル環境に付けることはできません)。 | False | ブール値 |
keep_content_view_versions_count | いいえ | 保持するコンテンツビューのバージョン数。 remove_content_view_versions またはpromote_remove_previous_version を指定している場合は使用しないでください。失敗したり、予測不可能な結果を生む可能性があります。 |
'' | 整数 |
promote_bypass_environment_path | いいえ | 通常のパス制限を越えてライフサイクル環境/パスにプロモーションを強制する | False | ブール値 |
remove_content_view_versions | いいえ | 指定されたコンテンツビューのバージョンを削除します。これは、Satellite6のコンテンツビューの「バージョン」タブの「バージョン」列にあるバージョン番号に対応します。このリクエストされたバージョンは現在どのライフサイクル環境とも関連付けられていない必要があります(Library を含む)。Library ライフサイクル環境に関連付けられているコンテンツビューのバージョンを削除したい場合は、まずその環境から削除してください。 |
[] | リスト |
components | はい | コンポジットコンテンツビューの設定。 コンポジットコンテンツビューを扱う際のみ必須です。 | n/a | 辞書 |
sat6_content_views.components - 辞書フィールド
変数名 | 必須 | 説明 | デフォルト値 | 種類 |
---|---|---|---|---|
publish_all | はい | コンポジットコンテンツビューのすべてのコンテンツビューの新しいバージョンを公開するかどうか | False | ブール値 |
content_views | いいえ | コンポジットコンテンツビューを公開するためのコンテンツビューのバージョン名とバージョンのリスト | n/a | 辞書のリスト |
sat6_content_views.components.content_views - 辞書フィールド
変数名 | 必須 | 説明 | デフォルト値 | 種類 |
---|---|---|---|---|
name | はい | コンポジットコンテンツビュー内のコンテンツビューの名前 | n/a | 文字列 |
version | はい | コンポジットコンテンツビュー内のコンテンツビューのバージョン番号 | n/a | 文字列 |
特殊統計報告変数
変数名 | 説明 | 種類 |
---|---|---|
sat6_content_view_stats | このロールによって完了したすべてのアクションの要約。この値を取得するためにこのロールの外でタスクを実行(例えば、メール通知を送信するタスクや結果を別にログするタスクなど)することができます。 | リスト |
プレイブックの使用例
---
- name: "自動化されたSatellite6コンテンツビューの公開とプロモーション"
hosts: "localhost"
gather_facts: False
tasks:
- name: "コンテンツビューの管理"
vars_files:
- "vars/secrets.yml"
include_role:
name: "ansible-satellite6_manage_content_views"
vars:
sat6_fqdn: "huff-satellite.huffnet.org"
sat6_user: "admin"
sat6_pass: "{{ vaulted_sat6_pass }}"
sat6_organization: "Huffnet"
sat6_content_views:
- name: "RHEL7"
publish_new_version: True
publish_description: "Red Hat CDNの最新コンテンツ"
promote_to:
- "RHEL7-Prod"
promote_force_yum_metadata_regeneration: True
promote_bypass_environment_path: True
# 新しいバージョンを公開し、すべてのライフサイクル環境にプロモートし、古いコンテンツビューのバージョンを削除
- name: "RHEL6"
publish_new_version: True
promote_to:
- "RHEL6-Dev"
- "RHEL6-QA"
- "RHEL6-Prod"
promote_remove_previous_version: True
# 指定されたコンテンツビューのバージョンを削除
- name: "RHEL7-HA Clustering"
remove_content_view_versions:
- "1.0"
- "2.0"
- "3.0"
# コンポジットビュー内のすべてのコンテンツビューの新しいバージョンを公開し、以前のコンポジットコンテンツビューのバージョンは削除せず、Devにプロモート
- name: "RHEL7コンポジット"
publish_new_version: True
components:
publish_all: True
promote_to:
- "RHEL7-Dev"
# 公開およびプロモートの説明を持つコンポジットコンテンツビュー内の特定のコンテンツビューのバージョンを公開し、以前のコンポジットコンテンツビューのバージョンを削除し、2つのライフサイクル環境にプロモート
- name: "RHEL7コンポジット2"
publish_new_version: True
publish_description: "Ansibleによって公開"
promote_description: "Ansibleによってプロモート"
promote_remove_previous_version: True
components:
publish_all: False
content_views:
- name: "RHEL7"
version: "3.0"
- name: "RHEL7-HA Clustering"
version: "5.0"
promote_to:
- "RHEL7-Dev"
- "RHEL7-QA"
# コンテンツビューのバージョンを2つだけ保持し、残りを削除(プロモートや公開機能とともに使用可能)
- name: "RHEL7"
keep_content_view_versions_count: "2"
ライセンス
作者情報
プロジェクトについて
An Ansible Role to manage Satellite 6 Content Views
インストール
ansible-galaxy install ahuffman.satellite6_manage_content_views
ライセンス
mit
ダウンロード
304