ansible: Enable Rocky PowerTools on Rocky Linux 8
[lttng-ci.git] / automation / ansible / roles / common / tasks / setup-Suse.yml
index 4123ed1612d39527f3ffa61978d4d253b94a8af3..a35ee7bded4b8a1cc71f701d8b3c28f90daefc80 100644 (file)
@@ -1,8 +1,39 @@
 ---
-- name: Define common_patterns.
-  set_fact:
-    common_patterns: "{{ __common_patterns | list }}"
-  when: common_patterns is not defined
+- name: Register with SLES
+  when: ansible_distribution == 'SLES'
+  block:
+    - name: Check registration
+      ansible.builtin.command:
+        argv: ['SUSEConnect', '--status']
+      register: registration_status
+      ignore_errors: true
+    - name: Cleanup registration
+      when: registration_status.rc != 0
+      ansible.builtin.command:
+        argv[ 'SUSEConnect', '--cleanup']
+    - ansible.builtin.set_fact:
+        registration_status_data: "{{registration_status.stdout|ansible.builtin.from_json|first}}"
+    - name: Get key from host environment
+      when: registration_status_data['status'] == 'Not Registered'
+      ansible.builtin.set_fact:
+        registration_key: "{{lookup('ansible.builtin.env', 'SLES_REGISTRATION_CODE_' + ansible_architecture, default='')}}"
+    - name: Get key from bitwarden
+      when: registration_key|default('') == '' and registration_status_data['status'] == 'Not Registered'
+      ansible.builtin.set_fact:
+        registration_key: "{{lookup('community.general.bitwarden', 'bec75018-99e8-4064-9cd9-addd011947e5', search='id', field='SLES_REGISTRATION_CODE_' +ansible_architecture)[0]}}"
+    - name: Perform registration
+      when: registration_status_data['status'] == 'Not Registered'
+      ansible.builtin.command:
+        argv: ['SUSEConnect', '-r', "{{registration_key}}"]
+
+- name: Connect SLES Repo
+  when: ansible_distribution == 'SLES'
+  include_role:
+    name: suse
+    tasks_from: product
+  loop: "{{common_sles_connect_repos}}"
+  loop_control:
+    loop_var: 'product'
 
 - name: Ensure common patterns are installed.
   zypper: "name={{ common_patterns }} type=pattern state=present update_cache=yes"
This page took 0.02199 seconds and 4 git commands to generate.