From 177950b76a185c20317aa0e89d356cdf8b97c4c3 Mon Sep 17 00:00:00 2001
From: Vinny Valdez <vvaldez@redhat.com>
Date: Wed, 30 Mar 2016 15:46:31 -0500
Subject: Refactor role to dynamically determine rhsm_method

* Removes rhsm_method
* Renames rhsm_server to rhsm_satellite
* Add additional pre_task checks (hosted + key)
* Change conditionals from rhsm_method check to rhsm_satellite defined
* Change repos disable/enable from key to if repos are defined
* Update README and examples in inventory file
---
 roles/subscription-manager/pre_tasks/pre_tasks.yml | 41 ++++++++++++----------
 1 file changed, 22 insertions(+), 19 deletions(-)

(limited to 'roles/subscription-manager/pre_tasks')

diff --git a/roles/subscription-manager/pre_tasks/pre_tasks.yml b/roles/subscription-manager/pre_tasks/pre_tasks.yml
index 497f39353..dcd56b2b9 100644
--- a/roles/subscription-manager/pre_tasks/pre_tasks.yml
+++ b/roles/subscription-manager/pre_tasks/pre_tasks.yml
@@ -1,37 +1,40 @@
 ---
 - name: Initialize Subscription Manager fact
   set_fact:
-    rhsm_skip: false
+    rhsm_register: true
 
-- name: Determine if Subscription Manager should be skipped or not
+- name: Determine if Subscription Manager should be used
   set_fact:
-    rhsm_skip: true
-  when: rhsm_method is undefined or rhsm_method is none or rhsm_method|trim == ''
-
-- name: Determine Subscription Manager method
-  fail: msg="Value for 'rhsm_method' of '{{ rhsm_method }}' is not valid, it should be one of 'hosted', 'satellite', or false/none/blank"
-  when: 
-    - rhsm_method != 'hosted' and rhsm_method != 'satellite'
-    - not rhsm_skip
-
-- name: Validate Subscription Manager host is set
-  fail: msg="Cannot determine Subscription Manager server hostname without a value for 'rhsm_server'"
+    rhsm_register: false
   when: 
-    - rhsm_server is undefined or rhsm_server is none or rhsm_server|trim == ''
-    - not rhsm_method == 'hosted'
-    - not rhsm_skip
+    - rhsm_satellite is undefined or rhsm_satellite is none or rhsm_satellite|trim == ''
+    - rhsm_username is undefined or rhsm_username is none or rhsm_username|trim == ''
+    - rhsm_password is undefined or rhsm_password is none or rhsm_password|trim == ''
+    - rhsm_org is undefined or rhsm_org is none or rhsm_org|trim == ''
+    - rhsm_activationkey is undefined or rhsm_activationkey is none or rhsm_activationkey|trim == ''
+    - rhsm_pool is undefined or rhsm_pool is none or rhsm_pool|trim == ''
 
 - name: Validate Subscription Manager organization is set
   fail: msg="Cannot register to a Satellite server without a value for the Organization via 'rhsm_org'"
   when: 
     - rhsm_org is undefined or rhsm_org is none or rhsm_org|trim == ''
-    - rhsm_method == 'satellite'
-    - not rhsm_skip
+    - rhsm_satellite is defined
+    - rhsm_satellite is not none
+    - rhsm_satellite|trim != ''
+    - rhsm_register
 
 - name: Validate Subscription Manager authentication is defined
   fail: msg="Cannot register without ('rhsm_username' and 'rhsm_password') or 'rhsm_activationkey' variables set"
   when:
     - (rhsm_username is undefined or rhsm_username is none or rhsm_username|trim == '') or (rhsm_password is undefined or rhsm_password is none or rhsm_password|trim == '')
     - rhsm_activationkey is undefined or rhsm_activationkey is none or rhsm_activationkey|trim == ''
-    - not rhsm_skip
+    - rhsm_register
 
+- name: Validate activation key and Hosted are not requested together
+  fail: msg="Cannot register to RHSM Hosted with 'rhsm_activationkey'"
+  when:
+    - rhsm_satellite is undefined or rhsm_satellite is none or rhsm_satellite|trim == ''
+    - rhsm_activationkey is defined
+    - rhsm_activationkey is not none
+    - rhsm_activationkey|trim != ''
+    - rhsm_register
-- 
cgit v1.2.3