From 28060809e10c54bf2edd2f9bf2dd22ce5acfff0a Mon Sep 17 00:00:00 2001
From: Jason DeTiberus <jdetiber@redhat.com>
Date: Wed, 21 Oct 2015 16:00:06 -0400
Subject: Avoid hardcoded 30s pauses

- refactor node and master restart handlers to avoid 30s pauses
---
 roles/openshift_master/handlers/main.yml | 2 +-
 roles/openshift_master/tasks/main.yml    | 5 ++---
 roles/openshift_node/handlers/main.yml   | 1 +
 roles/openshift_node/tasks/main.yml      | 5 ++---
 4 files changed, 6 insertions(+), 7 deletions(-)

(limited to 'roles')

diff --git a/roles/openshift_master/handlers/main.yml b/roles/openshift_master/handlers/main.yml
index 2981979e0..f00e56908 100644
--- a/roles/openshift_master/handlers/main.yml
+++ b/roles/openshift_master/handlers/main.yml
@@ -1,4 +1,4 @@
 ---
 - name: restart master
   service: name={{ openshift.common.service_type }}-master state=restarted
-  when: not openshift_master_ha | bool
+  when: not (openshift_master_ha | bool or skip_master_restart | default(false))
diff --git a/roles/openshift_master/tasks/main.yml b/roles/openshift_master/tasks/main.yml
index 4dcab31d1..90e77e7c2 100644
--- a/roles/openshift_master/tasks/main.yml
+++ b/roles/openshift_master/tasks/main.yml
@@ -155,9 +155,8 @@
   when: not openshift_master_ha | bool
   register: start_result
 
-- name: pause to prevent service restart from interfering with bootstrapping
-  pause: seconds=30
-  when: start_result | changed
+- set_fact:
+    skip_master_restart = start_result | changed
 
 - name: Install cluster packages
   yum: pkg=pcs state=present
diff --git a/roles/openshift_node/handlers/main.yml b/roles/openshift_node/handlers/main.yml
index 633f3ed13..5638a23c1 100644
--- a/roles/openshift_node/handlers/main.yml
+++ b/roles/openshift_node/handlers/main.yml
@@ -1,6 +1,7 @@
 ---
 - name: restart node
   service: name={{ openshift.common.service_type }}-node state=restarted
+  when: not skip_node_restart | default(false)
 
 - name: restart docker
   service: name=docker state=restarted
diff --git a/roles/openshift_node/tasks/main.yml b/roles/openshift_node/tasks/main.yml
index d45dd8073..a6e8747a3 100644
--- a/roles/openshift_node/tasks/main.yml
+++ b/roles/openshift_node/tasks/main.yml
@@ -128,6 +128,5 @@
   service: name={{ openshift.common.service_type }}-node enabled=yes state=started
   register: start_result
 
-- name: pause to prevent service restart from interfering with bootstrapping
-  pause: seconds=30
-  when: start_result | changed
+- set_fact:
+    skip_node_restart = start_result | changed
-- 
cgit v1.2.3


From 48889b8ed74abfd070fb5ecad082c4f540f7a3fe Mon Sep 17 00:00:00 2001
From: Jason DeTiberus <jdetiber@redhat.com>
Date: Fri, 23 Oct 2015 11:00:33 -0400
Subject: cleanup naming for skipping master and node restart handlers

---
 roles/openshift_master/handlers/main.yml | 2 +-
 roles/openshift_master/tasks/main.yml    | 2 +-
 roles/openshift_node/handlers/main.yml   | 2 +-
 roles/openshift_node/tasks/main.yml      | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

(limited to 'roles')

diff --git a/roles/openshift_master/handlers/main.yml b/roles/openshift_master/handlers/main.yml
index f00e56908..37028e0f6 100644
--- a/roles/openshift_master/handlers/main.yml
+++ b/roles/openshift_master/handlers/main.yml
@@ -1,4 +1,4 @@
 ---
 - name: restart master
   service: name={{ openshift.common.service_type }}-master state=restarted
-  when: not (openshift_master_ha | bool or skip_master_restart | default(false))
+  when: (not openshift_master_ha | bool) and (not master_service_status_changed | default(false))
diff --git a/roles/openshift_master/tasks/main.yml b/roles/openshift_master/tasks/main.yml
index 90e77e7c2..0b20e054b 100644
--- a/roles/openshift_master/tasks/main.yml
+++ b/roles/openshift_master/tasks/main.yml
@@ -156,7 +156,7 @@
   register: start_result
 
 - set_fact:
-    skip_master_restart = start_result | changed
+    master_service_status_changed = start_result | changed
 
 - name: Install cluster packages
   yum: pkg=pcs state=present
diff --git a/roles/openshift_node/handlers/main.yml b/roles/openshift_node/handlers/main.yml
index 5638a23c1..447ca85f3 100644
--- a/roles/openshift_node/handlers/main.yml
+++ b/roles/openshift_node/handlers/main.yml
@@ -1,7 +1,7 @@
 ---
 - name: restart node
   service: name={{ openshift.common.service_type }}-node state=restarted
-  when: not skip_node_restart | default(false)
+  when: not node_service_status_changed | default(false)
 
 - name: restart docker
   service: name=docker state=restarted
diff --git a/roles/openshift_node/tasks/main.yml b/roles/openshift_node/tasks/main.yml
index a6e8747a3..a7d63befa 100644
--- a/roles/openshift_node/tasks/main.yml
+++ b/roles/openshift_node/tasks/main.yml
@@ -129,4 +129,4 @@
   register: start_result
 
 - set_fact:
-    skip_node_restart = start_result | changed
+    node_service_status_changed = start_result | changed
-- 
cgit v1.2.3