From 80c3d3332507fe620fcab99e65f2ffd81d48a69e Mon Sep 17 00:00:00 2001
From: Vinny Valdez <vvaldez@redhat.com>
Date: Tue, 29 Mar 2016 16:52:05 -0500
Subject: Add subscription-manager support for Hosted or Satellite

---
 roles/subscription-manager/tasks/main.yml | 93 +++++++++++++++++++++++++++++++
 1 file changed, 93 insertions(+)
 create mode 100644 roles/subscription-manager/tasks/main.yml

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
new file mode 100644
index 000000000..2e04a7a22
--- /dev/null
+++ b/roles/subscription-manager/tasks/main.yml
@@ -0,0 +1,93 @@
+---
+- name: Initializing Subscription Manager authenticaiton method
+  set_fact:
+    rhsm_authentication: false
+
+# 'rhsm_activationkey' will take precedence even if 'rhsm_username' and 'rhsm_password' are also set
+- name: Setting Subscription Manager Activation Key Fact
+  set_fact:
+    rhsm_authentication: "key"
+  when:
+    - rhsm_activationkey is defined
+    - rhsm_activationkey is not none
+    - rhsm_activationkey|trim != ''
+    - not rhsm_authentication
+
+# If 'rhsm_username' and 'rhsm_password' are set but not 'rhsm_activationkey', set 'rhsm_authentication' to password
+- name: Setting Subscription Manager Username and Password Fact
+  set_fact:
+    rhsm_authentication: "password"
+  when:
+    - rhsm_username is defined and rhsm_username is not none and rhsm_username|trim != ''
+    - rhsm_password is defined and rhsm_password is not none and rhsm_password|trim != ''
+    - not rhsm_authentication
+
+- name: Initializing registration status
+  set_fact:
+    registered: false
+
+- name: Checking subscription status (a failure means it is not registered and will be)
+  command: "/usr/bin/subscription-manager status"
+  ignore_errors: yes
+  changed_when: no
+  register: check_if_registered
+
+- name: Set registration fact
+  set_fact:
+    registered: true
+  when: check_if_registered.rc == 0
+
+- name: Cleaning any old subscriptions
+  command: "/usr/bin/subscription-manager clean"
+  when:
+    - not registered
+    - rhsm_authentication is defined
+
+- name: Install Satellite certificate
+  command: "rpm -Uvh --force http://{{ rhsm_server }}/pub/katello-ca-consumer-latest.noarch.rpm"
+  when:
+    - not registered
+    - rhsm_method == 'satellite'
+
+- name: Register to Satellite using activation key
+  command: "/usr/bin/subscription-manager register --activationkey={{ rhsm_activationkey }} --org={{ rhsm_org }}"
+  when:
+    - not registered
+    - rhsm_authentication == 'key'
+    - rhsm_method == 'satellite'
+
+# This can apply to either Hosted or Satellite
+- name: Register using username and password
+  command: "/usr/bin/subscription-manager register --username={{ rhsm_username }} --password={{ rhsm_password }}"
+  when:
+    - not registered
+    - rhsm_authentication != "key"
+
+- name: Auto-attach to Subscription Manager Pool
+  command: "/usr/bin/subscription-manager attach --auto"
+  when:
+    - not registered
+    - rhsm_authentication != "key"
+
+- name: Attach to a specific pool
+  command: "/usr/bin/subscription-manager attach --pool={{ rhsm_pool }}"
+  when:
+    - rhsm_pool is defined and rhsm_pool is not none and rhsm_pool|trim != ''
+    - and not registered
+    - rhsm_authentication != "key"
+
+- name: Disable all repositories
+  command: "/usr/bin/subscription-manager repos --disable=*"
+  when:
+    - not registered
+    - not rhsm_authentication == "key"
+
+- name: Enable specified repositories
+  command: "/usr/bin/subscription-manager repos --enable={{ item }}"
+  with_items: rhsm_repos
+  when:
+    - not registered
+    - not rhsm_authentication == "key"
+
+- name: Cleaning yum repositories
+  command: "yum clean all"
-- 
cgit v1.2.3


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/tasks/main.yml | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index 2e04a7a22..78ceaccd1 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -32,7 +32,7 @@
   changed_when: no
   register: check_if_registered
 
-- name: Set registration fact
+- name: Set registration fact if system is already registered
   set_fact:
     registered: true
   when: check_if_registered.rc == 0
@@ -44,17 +44,21 @@
     - rhsm_authentication is defined
 
 - name: Install Satellite certificate
-  command: "rpm -Uvh --force http://{{ rhsm_server }}/pub/katello-ca-consumer-latest.noarch.rpm"
+  command: "rpm -Uvh --force http://{{ rhsm_satellite }}/pub/katello-ca-consumer-latest.noarch.rpm"
   when:
     - not registered
-    - rhsm_method == 'satellite'
+    - rhsm_satellite is defined
+    - rhsm_satellite is not none
+    - rhsm_satellite|trim != ''
 
 - name: Register to Satellite using activation key
   command: "/usr/bin/subscription-manager register --activationkey={{ rhsm_activationkey }} --org={{ rhsm_org }}"
   when:
     - not registered
     - rhsm_authentication == 'key'
-    - rhsm_method == 'satellite'
+    - rhsm_satellite is defined
+    - rhsm_satellite is not none
+    - rhsm_satellite|trim != ''
 
 # This can apply to either Hosted or Satellite
 - name: Register using username and password
@@ -80,14 +84,18 @@
   command: "/usr/bin/subscription-manager repos --disable=*"
   when:
     - not registered
-    - not rhsm_authentication == "key"
+    - rhsm_repos is defined
+    - rhsm_repos is not none
+    - rhsm_repos|trim != ''
 
 - name: Enable specified repositories
   command: "/usr/bin/subscription-manager repos --enable={{ item }}"
   with_items: rhsm_repos
   when:
     - not registered
-    - not rhsm_authentication == "key"
+    - rhsm_repos is defined
+    - rhsm_repos is not none
+    - rhsm_repos|trim != ''
 
 - name: Cleaning yum repositories
   command: "yum clean all"
-- 
cgit v1.2.3


From 644f1e672c80bd10f34fabafcfe805c306e77b5e Mon Sep 17 00:00:00 2001
From: Vinny Valdez <vvaldez@redhat.com>
Date: Tue, 5 Apr 2016 12:23:35 -0500
Subject: Fix bad syntax with extra 'and' in when using rhsm_pool

---
 roles/subscription-manager/tasks/main.yml | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index 78ceaccd1..414bf8f7a 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -1,4 +1,5 @@
 ---
+
 - name: Initializing Subscription Manager authenticaiton method
   set_fact:
     rhsm_authentication: false
@@ -61,6 +62,7 @@
     - rhsm_satellite|trim != ''
 
 # This can apply to either Hosted or Satellite
+
 - name: Register using username and password
   command: "/usr/bin/subscription-manager register --username={{ rhsm_username }} --password={{ rhsm_password }}"
   when:
@@ -72,12 +74,15 @@
   when:
     - not registered
     - rhsm_authentication != "key"
+    - rhsm_pool is undefined or rhsm_pool is none or rhsm_pool|trim == ''
 
 - name: Attach to a specific pool
   command: "/usr/bin/subscription-manager attach --pool={{ rhsm_pool }}"
   when:
-    - rhsm_pool is defined and rhsm_pool is not none and rhsm_pool|trim != ''
-    - and not registered
+    - rhsm_pool is defined
+    - rhsm_pool is not none
+    - rhsm_pool|trim != ''
+    - not registered
     - rhsm_authentication != "key"
 
 - name: Disable all repositories
-- 
cgit v1.2.3


From 96aaa6df25774e05cda3e4a6f73b030ae989100a Mon Sep 17 00:00:00 2001
From: Vinny Valdez <vvaldez@redhat.com>
Date: Tue, 5 Apr 2016 18:17:36 -0500
Subject: Refactor use of rhsm_password to prevent display to CLI

---
 roles/subscription-manager/tasks/main.yml | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index 414bf8f7a..6e51be7e4 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -1,5 +1,12 @@
 ---
-
+- name: Initialize rhsm_password variable if vars_prompt was used
+  set_fact:
+    rhsm_password: "{{ hostvars.localhost.rhsm_password }}"
+  when:
+      - rhsm_password is defined
+      - rhsm_password is not none
+      - rhsm_password|trim != ''
+  
 - name: Initializing Subscription Manager authenticaiton method
   set_fact:
     rhsm_authentication: false
@@ -19,8 +26,12 @@
   set_fact:
     rhsm_authentication: "password"
   when:
-    - rhsm_username is defined and rhsm_username is not none and rhsm_username|trim != ''
-    - rhsm_password is defined and rhsm_password is not none and rhsm_password|trim != ''
+    - rhsm_username is defined
+    - rhsm_username is not none
+    - rhsm_username|trim != ''
+    - rhsm_password is defined
+    - rhsm_password is not none
+    - rhsm_password|trim != ''
     - not rhsm_authentication
 
 - name: Initializing registration status
@@ -62,18 +73,17 @@
     - rhsm_satellite|trim != ''
 
 # This can apply to either Hosted or Satellite
-
 - name: Register using username and password
   command: "/usr/bin/subscription-manager register --username={{ rhsm_username }} --password={{ rhsm_password }}"
+  no_log: true
   when:
     - not registered
-    - rhsm_authentication != "key"
+    - rhsm_authentication == "password"
 
 - name: Auto-attach to Subscription Manager Pool
   command: "/usr/bin/subscription-manager attach --auto"
   when:
     - not registered
-    - rhsm_authentication != "key"
     - rhsm_pool is undefined or rhsm_pool is none or rhsm_pool|trim == ''
 
 - name: Attach to a specific pool
@@ -83,7 +93,6 @@
     - rhsm_pool is not none
     - rhsm_pool|trim != ''
     - not registered
-    - rhsm_authentication != "key"
 
 - name: Disable all repositories
   command: "/usr/bin/subscription-manager repos --disable=*"
-- 
cgit v1.2.3


From 71f4817263a21b6e2062b35928ebfab373d26278 Mon Sep 17 00:00:00 2001
From: Vinny Valdez <vvaldez@redhat.com>
Date: Fri, 8 Apr 2016 11:02:57 -0500
Subject: Cosmetic changes to task names and move yum clean all to prereqs

---
 roles/subscription-manager/tasks/main.yml | 33 ++++++++++++++-----------------
 1 file changed, 15 insertions(+), 18 deletions(-)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index 6e51be7e4..adf3a8e85 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -1,5 +1,5 @@
 ---
-- name: Initialize rhsm_password variable if vars_prompt was used
+- name: "Initialize rhsm_password variable if vars_prompt was used"
   set_fact:
     rhsm_password: "{{ hostvars.localhost.rhsm_password }}"
   when:
@@ -7,12 +7,12 @@
       - rhsm_password is not none
       - rhsm_password|trim != ''
   
-- name: Initializing Subscription Manager authenticaiton method
+- name: "Initializing Subscription Manager authenticaiton method"
   set_fact:
     rhsm_authentication: false
 
 # 'rhsm_activationkey' will take precedence even if 'rhsm_username' and 'rhsm_password' are also set
-- name: Setting Subscription Manager Activation Key Fact
+- name: "Setting Subscription Manager Activation Key Fact"
   set_fact:
     rhsm_authentication: "key"
   when:
@@ -22,7 +22,7 @@
     - not rhsm_authentication
 
 # If 'rhsm_username' and 'rhsm_password' are set but not 'rhsm_activationkey', set 'rhsm_authentication' to password
-- name: Setting Subscription Manager Username and Password Fact
+- name: "Setting Subscription Manager Username and Password Fact"
   set_fact:
     rhsm_authentication: "password"
   when:
@@ -34,28 +34,28 @@
     - rhsm_password|trim != ''
     - not rhsm_authentication
 
-- name: Initializing registration status
+- name: "Initializing registration status"
   set_fact:
     registered: false
 
-- name: Checking subscription status (a failure means it is not registered and will be)
+- name: "Checking subscription status (a failure means it is not registered and will be)"
   command: "/usr/bin/subscription-manager status"
   ignore_errors: yes
   changed_when: no
   register: check_if_registered
 
-- name: Set registration fact if system is already registered
+- name: "Set registration fact if system is already registered"
   set_fact:
     registered: true
   when: check_if_registered.rc == 0
 
-- name: Cleaning any old subscriptions
+- name: "Cleaning any old subscriptions"
   command: "/usr/bin/subscription-manager clean"
   when:
     - not registered
     - rhsm_authentication is defined
 
-- name: Install Satellite certificate
+- name: "Install Satellite certificate"
   command: "rpm -Uvh --force http://{{ rhsm_satellite }}/pub/katello-ca-consumer-latest.noarch.rpm"
   when:
     - not registered
@@ -63,7 +63,7 @@
     - rhsm_satellite is not none
     - rhsm_satellite|trim != ''
 
-- name: Register to Satellite using activation key
+- name: "Register to Satellite using activation key"
   command: "/usr/bin/subscription-manager register --activationkey={{ rhsm_activationkey }} --org={{ rhsm_org }}"
   when:
     - not registered
@@ -73,20 +73,20 @@
     - rhsm_satellite|trim != ''
 
 # This can apply to either Hosted or Satellite
-- name: Register using username and password
+- name: "Register using username and password"
   command: "/usr/bin/subscription-manager register --username={{ rhsm_username }} --password={{ rhsm_password }}"
   no_log: true
   when:
     - not registered
     - rhsm_authentication == "password"
 
-- name: Auto-attach to Subscription Manager Pool
+- name: "Auto-attach to Subscription Manager Pool"
   command: "/usr/bin/subscription-manager attach --auto"
   when:
     - not registered
     - rhsm_pool is undefined or rhsm_pool is none or rhsm_pool|trim == ''
 
-- name: Attach to a specific pool
+- name: "Attach to a specific pool"
   command: "/usr/bin/subscription-manager attach --pool={{ rhsm_pool }}"
   when:
     - rhsm_pool is defined
@@ -94,7 +94,7 @@
     - rhsm_pool|trim != ''
     - not registered
 
-- name: Disable all repositories
+- name: "Disable all repositories"
   command: "/usr/bin/subscription-manager repos --disable=*"
   when:
     - not registered
@@ -102,7 +102,7 @@
     - rhsm_repos is not none
     - rhsm_repos|trim != ''
 
-- name: Enable specified repositories
+- name: "Enable specified repositories"
   command: "/usr/bin/subscription-manager repos --enable={{ item }}"
   with_items: rhsm_repos
   when:
@@ -110,6 +110,3 @@
     - rhsm_repos is defined
     - rhsm_repos is not none
     - rhsm_repos|trim != ''
-
-- name: Cleaning yum repositories
-  command: "yum clean all"
-- 
cgit v1.2.3


From 39f973fcfd40fde18f5e92259d05e4ba6b30e22e Mon Sep 17 00:00:00 2001
From: Vinny Valdez <vvaldez@redhat.com>
Date: Fri, 8 Apr 2016 18:44:23 -0500
Subject: Remove vars_prompt, add info to README to re-enable and for
 ansible-vault

---
 roles/subscription-manager/tasks/main.yml | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index adf3a8e85..bdb8ca7c4 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -3,9 +3,7 @@
   set_fact:
     rhsm_password: "{{ hostvars.localhost.rhsm_password }}"
   when:
-      - rhsm_password is defined
-      - rhsm_password is not none
-      - rhsm_password|trim != ''
+    - rhsm_password is not defined or rhsm_password is none or rhsm_password|trim == ''
   
 - name: "Initializing Subscription Manager authenticaiton method"
   set_fact:
-- 
cgit v1.2.3


From 305140bfaeb6cd1bbe34279cbd6750d1136816d6 Mon Sep 17 00:00:00 2001
From: Vinny Valdez <vvaldez@redhat.com>
Date: Sat, 23 Apr 2016 12:50:25 -0500
Subject: Add org parameter to Satellite with user/pass

---
 roles/subscription-manager/tasks/main.yml | 12 ++++++++++++
 1 file changed, 12 insertions(+)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index bdb8ca7c4..9bc430665 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -77,6 +77,18 @@
   when:
     - not registered
     - rhsm_authentication == "password"
+    - rhsm_org is not defined or rhsm_org is none or rhsm_org|trim == ''
+
+# This can apply to either Hosted or Satellite
+- name: "Register using username, password and organization"
+  command: "/usr/bin/subscription-manager register --username={{ rhsm_username }} --password={{ rhsm_password }} --org={{ rhsm_org }}"
+  no_log: true
+  when:
+    - not registered
+    - rhsm_authentication == "password"
+    - rhsm_org is defined
+    - rhsm_org is not none
+    - rhsm_org|trim != ''
 
 - name: "Auto-attach to Subscription Manager Pool"
   command: "/usr/bin/subscription-manager attach --auto"
-- 
cgit v1.2.3


From 150b709052688c1cf1ab435c9775501154c7e35a Mon Sep 17 00:00:00 2001
From: Vinny Valdez <vvaldez@redhat.com>
Date: Wed, 27 Apr 2016 17:14:42 -0500
Subject: Fix typo in task name

---
 roles/subscription-manager/tasks/main.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index bdb8ca7c4..f3bd8b656 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -5,7 +5,7 @@
   when:
     - rhsm_password is not defined or rhsm_password is none or rhsm_password|trim == ''
   
-- name: "Initializing Subscription Manager authenticaiton method"
+- name: "Initializing Subscription Manager authentication method"
   set_fact:
     rhsm_authentication: false
 
-- 
cgit v1.2.3


From d827e1796c6a3705007365cb58aa6b36a92d3b6e Mon Sep 17 00:00:00 2001
From: Eric Sauer <esauer@redhat.com>
Date: Fri, 3 Jun 2016 19:10:27 -0400
Subject: Subscription manager role should accomodate orgs with spaces

---
 roles/subscription-manager/tasks/main.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index f3bd8b656..c73204a29 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -62,7 +62,7 @@
     - rhsm_satellite|trim != ''
 
 - name: "Register to Satellite using activation key"
-  command: "/usr/bin/subscription-manager register --activationkey={{ rhsm_activationkey }} --org={{ rhsm_org }}"
+  command: "/usr/bin/subscription-manager register --activationkey={{ rhsm_activationkey }} --org='{{ rhsm_org }}'"
   when:
     - not registered
     - rhsm_authentication == 'key'
-- 
cgit v1.2.3


From fbda334b6797eb0109cd9c13afb99a47e3916b36 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C3=98ystein=20Bedin?= <bedin@redhat.com>
Date: Tue, 15 Nov 2016 22:26:58 -0500
Subject: Fixing ansible impl to work with OSP9 and ansible 2.2

---
 roles/subscription-manager/tasks/main.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

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

diff --git a/roles/subscription-manager/tasks/main.yml b/roles/subscription-manager/tasks/main.yml
index 0b3aa351f..2dd14b48e 100644
--- a/roles/subscription-manager/tasks/main.yml
+++ b/roles/subscription-manager/tasks/main.yml
@@ -114,7 +114,7 @@
 
 - name: "Enable specified repositories"
   command: "/usr/bin/subscription-manager repos --enable={{ item }}"
-  with_items: rhsm_repos
+  with_items: "{{ rhsm_repos }}"
   when:
     - not registered
     - rhsm_repos is defined
-- 
cgit v1.2.3