diff mbox series

[v2,1/3] codereadyrepo: Refactor to prepare for more complex usage scenarios

Message ID 20241214170139.253602-2-cel@kernel.org (mailing list archive)
State New
Headers show
Series Recent fixes | expand

Commit Message

Chuck Lever Dec. 14, 2024, 5:01 p.m. UTC
From: Chuck Lever <chuck.lever@oracle.com>

I'm about to add a few more cases that the codereadyrepo role needs
to handle. The only difference for all of these cases is the name of
the repo to enable, so pull out the selection of that name, then do
the repo enablement task only when a repo name was found.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
---
 playbooks/roles/codereadyrepo/tasks/main.yml | 26 +++++++++++++++-----
 1 file changed, 20 insertions(+), 6 deletions(-)
diff mbox series

Patch

diff --git a/playbooks/roles/codereadyrepo/tasks/main.yml b/playbooks/roles/codereadyrepo/tasks/main.yml
index 71ad05c9d539..7cf6d83bcccf 100644
--- a/playbooks/roles/codereadyrepo/tasks/main.yml
+++ b/playbooks/roles/codereadyrepo/tasks/main.yml
@@ -1,14 +1,28 @@ 
 ---
-- name: Enable the CodeReady repo
-  become: yes
-  ansible.builtin.command: /usr/bin/dnf config-manager --enable codeready-builder-for-rhel-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}-rpms
+- name: Select the RHEL CodeReady Builder repo
+  ansible.builtin.set_fact:
+    codeready_repo: "codeready-builder-for-rhel-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}-rpms"
   when:
     - ansible_distribution == 'RedHat'
     - not devconfig_custom_yum_repofile
 
-- name: Enable the CodeReady repo
-  become: yes
-  ansible.builtin.command: /usr/bin/dnf config-manager --enable crb
+- name: Select the CentOS CodeReady Builder repo
+  ansible.builtin.set_fact:
+    codeready_repo: "crb"
   when:
     - ansible_distribution == 'CentOS'
     - not devconfig_custom_yum_repofile
+
+- name: Enable the selected CodeReady Builder repo
+  become: true
+  become_method: ansible.builtin.sudo
+  ansible.builtin.command:
+    argv:
+      - "/usr/bin/dnf"
+      - "config-manager"
+      - "--enable"
+      - "{{ codeready_repo }}"
+  register: dnf_result
+  when:
+    - codeready_repo is defined
+  changed_when: dnf_result is success