From fe801cb7fbf983ef397257117da30ce4ccc938b4 Mon Sep 17 00:00:00 2001
From: Michael Gugino <mgugino@redhat.com>
Date: Thu, 14 Dec 2017 15:54:45 -0500
Subject: Move repo and subscribe to prerequisites

This commit refactors some steps in rhel subscribe and
moves repos.yml from init/main to prerequisites.
---
 roles/rhel_subscribe/tasks/main.yml      | 55 +++++++-------------------------
 roles/rhel_subscribe/tasks/satellite.yml |  2 +-
 2 files changed, 12 insertions(+), 45 deletions(-)

(limited to 'roles/rhel_subscribe')

diff --git a/roles/rhel_subscribe/tasks/main.yml b/roles/rhel_subscribe/tasks/main.yml
index 74ee8bbfe..6337cd644 100644
--- a/roles/rhel_subscribe/tasks/main.yml
+++ b/roles/rhel_subscribe/tasks/main.yml
@@ -1,22 +1,8 @@
 ---
-- set_fact:
-    rhel_subscription_pass: "{{ lookup('env', 'rhel_subscription_pass') | default(rhsub_pass | default(omit, True)) }}"
-    rhel_subscription_pool: "{{ lookup('env', 'rhel_subscription_pool') | default(rhsub_pool | default('Red Hat OpenShift Container Platform, Premium*')) }}"
-    rhel_subscription_user: "{{ lookup('env', 'rhel_subscription_user') | default(rhsub_user | default(omit, True)) }}"
-    rhel_subscription_server: "{{ lookup('env', 'rhel_subscription_server') | default(rhsub_server | default(omit, True)) }}"
-
 - fail:
     msg: "This role is only supported for Red Hat hosts"
   when: ansible_distribution != 'RedHat'
 
-- fail:
-    msg: The rhel_subscription_user variable is required for this role.
-  when: rhel_subscription_user is not defined or not rhsub_user is not defined
-
-- fail:
-    msg: The rhel_subscription_pass variable is required for this role.
-  when: rhel_subscription_pass is not defined or not rhsub_pass is not defined
-
 - name: Install Red Hat Subscription manager
   yum:
     name: subscription-manager
@@ -25,21 +11,18 @@
   until: result | success
 
 - name: Is host already registered?
-  command: bash -c "subscription-manager version"
+  command: "subscription-manager version"
   register: rh_subscribed
-  changed_when: "'not registered' in rh_subscribed.stdout"
-  ignore_errors: yes
+  changed_when: False
 
 - name: Register host
   redhat_subscription:
-    username: "{{ rhel_subscription_user }}"
-    password: "{{ rhel_subscription_pass }}"
+    username: "{{ rhsub_user }}"
+    password: "{{ rhsub_pass }}"
   register: rh_subscription
   until: rh_subscription | succeeded
   when:
     - "'not registered' in rh_subscribed.stdout"
-    - rhel_subscription_user is defined
-    - rhel_subscription_pass is defined
 
 - fail:
     msg: 'Unable to register host with Red Hat Subscription Manager'
@@ -48,34 +31,18 @@
     - rh_subscription.failed
 
 - name: Determine if OpenShift Pool Already Attached
-  command: bash -c "subscription-manager list --consumed --pool-only --matches '*OpenShift*' | grep {{ rhel_subscription_pool }}"
+  command: "subscription-manager list --consumed --pool-only --matches '*OpenShift*'"
   register: openshift_pool_attached
-  changed_when: rhel_subscription_pool not in openshift_pool_attached.stdout
-  failed_when: openshift_pool_attached.rc == 2
+  changed_when: False
   ignore_errors: yes
 
-- name: Retrieve the OpenShift Pool ID
-  command: bash -c "subscription-manager list --available --pool-only --matches '*OpenShift*' | grep {{ rhel_subscription_pool }}"
-  register: openshift_pool_retrieve
-  changed_when: rhel_subscription_pool in openshift_pool_retrieve.stdout
-  when: rhel_subscription_pool not in openshift_pool_attached.stdout
-  ignore_errors: yes
-
-- fail:
-    msg: "Unable to find pool matching {{ rhel_subscription_pool }} in available pools"
-  when:
-    - rhel_subscription_pool not in openshift_pool_attached.stdout
-    - rhel_subscription_pool not in openshift_pool_retrieve.stdout
-
 - name: Attach to OpenShift Pool
-  command: bash -c "subscription-manager attach --pool {{ rhel_subscription_pool }}"
+  command: "subscription-manager attach --pool {{ rhsub_pool }}"
   register: openshift_pool_attached
   changed_when: "'Successfully attached a subscription' in openshift_pool_attached.stdout"
-  when: rhel_subscription_pool not in openshift_pool_attached.stdout
+  when: rhsub_pool not in openshift_pool_attached.stdout
 
-- include_role:
-    role: rhel_subscribe
-    tasks_from: satellite
+- include_tasks: satellite.yml
   when:
-    - (rhel_subscription_server or rhsub_server) is defined
-    - (rhel_subscription_server or rhsub_server)
+    - rhsub_server is defined
+    - rhsub_server
diff --git a/roles/rhel_subscribe/tasks/satellite.yml b/roles/rhel_subscribe/tasks/satellite.yml
index b2b2a621d..dadbe3487 100644
--- a/roles/rhel_subscribe/tasks/satellite.yml
+++ b/roles/rhel_subscribe/tasks/satellite.yml
@@ -1,5 +1,5 @@
 ---
 - name: Satellite preparation
-  command: "rpm -Uvh http://{{ rhel_subscription_server }}/pub/katello-ca-consumer-latest.noarch.rpm"
+  command: "rpm -Uvh http://{{ rhsub_server }}/pub/katello-ca-consumer-latest.noarch.rpm"
   args:
     creates: /etc/rhsm/ca/katello-server-ca.pem
-- 
cgit v1.2.3