5.3. Satellite Ansible Collection のモジュールに基づく Playbook の例
Satellite Ansible Collection のモジュールに基づくすべての Playbook には、Satellite API への接続方法の詳細を示すパラメーターを含める必要があります。以下の例では、Ansible Vault およびモジュールの defaults グループを使用して、これらのパラメーターを提供し、ユーザー名とパスワードを使用して認証します。詳細は、「Satellite Ansible コレクションのモジュールを使用した Playbook の作成」 を参照してください。
例5.2 Ansible Playbook の例: リポジトリーを有効にしてコンテンツビューを作成する
このサンプル Playbook では、次のモジュールを使用します。
-
redhat.satellite.repository_set -
redhat.satellite.content_view
Playbook は、リポジトリーが有効になっていることと、これらのリポジトリーを含むコンテンツビューが存在することを確認します。
この Playbook を実行する前に、マニフェストをアップロードし、Red Hat CDN にアクセスできることを確認してください。
- name: Ensure RHEL 9 repositories are enabled and a content view exists
hosts: localhost
vars_files:
- My_Vault.yml
module_defaults:
group/redhat.satellite.satellite:
username: "{{ My_Username }}"
password: "{{ My_Password }}"
server_url: "{{ My_Server_URL }}"
tasks:
- name: Ensure RHEL 9 BaseOS repositories are enabled
redhat.satellite.repository_set:
name: "Red Hat Enterprise Linux 9 for x86_64 - BaseOS (RPMs)"
organization: "Default Organization"
product: "Red Hat Enterprise Linux for x86_64"
repositories:
- releasever: "9"
state: enabled
- name: Ensure RHEL 9 AppStream repositories are enabled
redhat.satellite.repository_set:
name: "Red Hat Enterprise Linux 9 for x86_64 - AppStream (RPMs)"
organization: "Default Organization"
product: "Red Hat Enterprise Linux for x86_64"
repositories:
- releasever: "9"
state: enabled
- name: Ensure a content view for RHEL 9 repositories exists
redhat.satellite.content_view:
name: "RHEL 9 content view"
organization: "Default Organization"
repositories:
- name: "Red Hat Enterprise Linux 9 for x86_64 - BaseOS RPMs 9"
product: "Red Hat Enterprise Linux for x86_64"
- name: "Red Hat Enterprise Linux 9 for x86_64 - AppStream RPMs 9"
product: "Red Hat Enterprise Linux for x86_64"
詳細は、次のコマンドを含む Ansible モジュールのドキュメントを参照してください。
-
ansible-doc redhat.satellite.repository_sync -
ansible-doc redhat.satellite.content_view
例5.3 Ansible Playbook の例: リポジトリーを同期してコンテンツビューを公開する
このサンプル Playbook では、次のモジュールを使用します。
-
redhat.satellite.repository_sync -
redhat.satellite.content_view_version
Playbook はリポジトリーを同期し、このリポジトリーを含むコンテンツビューを公開します。
この Playbook を実行する前に、必要なリポジトリーが有効になっていて、コンテンツビューが作成されていることを確認してください。これを確認する Playbook の例は、例5.2「Ansible Playbook の例: リポジトリーを有効にしてコンテンツビューを作成する」 を参照してください。
- name: Ensure RHEL 9 repositories are synced and content view is published
hosts: localhost
vars_files:
- My_Vault.yml
module_defaults:
group/redhat.satellite.satellite:
username: "{{ My_Username }}"
password: "{{ My_Password }}"
server_url: "{{ My_Server_URL }}"
tasks:
- name: Sync RHEL repositories
redhat.satellite.repository_sync:
product: "Red Hat Enterprise Linux for x86_64"
organization: "Default Organization"
- name: Publish RHEL 9 content view
redhat.satellite.content_view_version:
content_view: "RHEL 9 content view"
organization: "Default Organization"
詳細は、次のコマンドを含む Ansible モジュールのドキュメントを参照してください。
-
ansible-doc redhat.satellite.repository_sync -
ansible-doc redhat.satellite.content_view_version
関連情報
-
システムにインストールされている Satellite Ansible モジュールを表示するには、
ansible-doc --list redhat.satelliteコマンドを使用します。 - Satellite Ansible モジュールの完全なリストとその他の関連情報は Red Hat Ansible Automation Platform を参照してください。