From 9f12d3b64fa9f8d5e441d2be817a9a7a575de180 Mon Sep 17 00:00:00 2001 From: akumari Date: Wed, 11 Sep 2024 01:34:31 +0530 Subject: [PATCH] Add CentOS Stream 9 provisioning using theforeman.foreman modules This PR refactors the CentOS Stream 9 provisioning tasks by replacing Hammer CLI commands with theforeman.foreman Ansible modules. --- playbooks/foreman_provisioning.yml | 6 ++++++ requirements.yml | 3 +++ .../tasks/configure_centos_9.yml | 21 +++++++++++++++++++ roles/foreman_provisioning/tasks/main.yml | 2 +- 4 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 roles/foreman_provisioning/tasks/configure_centos_9.yml diff --git a/playbooks/foreman_provisioning.yml b/playbooks/foreman_provisioning.yml index 8e46945dc..51c52c129 100644 --- a/playbooks/foreman_provisioning.yml +++ b/playbooks/foreman_provisioning.yml @@ -2,6 +2,12 @@ become: true vars: libvirt_tftp: true + module_defaults: + group/theforeman.foreman.foreman: + username: admin + password: changeme + server_url: "https://localhost/" + validate_certs: false roles: - foreman - libvirt diff --git a/requirements.yml b/requirements.yml index eea98b91a..d9acb0b61 100644 --- a/requirements.yml +++ b/requirements.yml @@ -1,4 +1,7 @@ collections: + - name: https://github.com/theforeman/foreman-ansible-modules.git + type: git + - name: https://github.com/theforeman/foreman-operations-collection type: git diff --git a/roles/foreman_provisioning/tasks/configure_centos_9.yml b/roles/foreman_provisioning/tasks/configure_centos_9.yml new file mode 100644 index 000000000..611087920 --- /dev/null +++ b/roles/foreman_provisioning/tasks/configure_centos_9.yml @@ -0,0 +1,21 @@ +- name: "Ensure CentOS Stream 9" # noqa: args[module] + theforeman.foreman.operatingsystem: + name: CentOS_Stream + family: Redhat + major: 9 + architectures: + - x86_64 + media: + - CentOS Stream 9 mirror + provisioning_templates: + - Kickstart default + ptables: + - Kickstart default + state: present + +- name: "Set default template for CentOS Stream 9" # noqa: args[module] + theforeman.foreman.os_default_template: + operatingsystem: "CentOS_Stream 9" + template_kind: "provision" + provisioning_template: "Kickstart default" + state: present diff --git a/roles/foreman_provisioning/tasks/main.yml b/roles/foreman_provisioning/tasks/main.yml index 3079ffa36..a8b9ef18a 100644 --- a/roles/foreman_provisioning/tasks/main.yml +++ b/roles/foreman_provisioning/tasks/main.yml @@ -1,6 +1,6 @@ --- - name: 'Setup CentOS 7 provisioning' - import_tasks: configure_centos_7.yml + import_tasks: configure_centos_9.yml - name: 'Setup Fedora 27 provisioning' import_tasks: configure_fedora_27.yml