summaryrefslogtreecommitdiffstats
path: root/playbooks/common/openshift-cluster
diff options
context:
space:
mode:
authorScott Dodson <sdodson@redhat.com>2016-09-02 16:03:49 -0400
committerGitHub <noreply@github.com>2016-09-02 16:03:49 -0400
commit00ff458cc4d5a919d6c0138bbed3e0373afd37c1 (patch)
tree60ef8bb72905192173139fdc021cbac2014f18cc /playbooks/common/openshift-cluster
parent9b563de8cfb63629a4789aa3532259d99e57c0db (diff)
parent66c902d8be315cd05042d63500958b2319c3d0d7 (diff)
downloadopenshift-00ff458cc4d5a919d6c0138bbed3e0373afd37c1.tar.gz
openshift-00ff458cc4d5a919d6c0138bbed3e0373afd37c1.tar.bz2
openshift-00ff458cc4d5a919d6c0138bbed3e0373afd37c1.tar.xz
openshift-00ff458cc4d5a919d6c0138bbed3e0373afd37c1.zip
Merge pull request #2406 from sdodson/record-schedulability
Record schedulability of node prior to upgrade and re-set it to that
Diffstat (limited to 'playbooks/common/openshift-cluster')
-rw-r--r--playbooks/common/openshift-cluster/upgrades/upgrade.yml14
1 files changed, 13 insertions, 1 deletions
diff --git a/playbooks/common/openshift-cluster/upgrades/upgrade.yml b/playbooks/common/openshift-cluster/upgrades/upgrade.yml
index be4e02c4a..cb5103e3a 100644
--- a/playbooks/common/openshift-cluster/upgrades/upgrade.yml
+++ b/playbooks/common/openshift-cluster/upgrades/upgrade.yml
@@ -173,6 +173,18 @@
# TODO: To better handle re-trying failed upgrades, it would be nice to check if the node
# or docker actually needs an upgrade before proceeding. Perhaps best to save this until
# we merge upgrade functionality into the base roles and a normal config.yml playbook run.
+ - name: Determine if node is currently scheduleable
+ command: >
+ {{ openshift.common.client_binary }} get node {{ openshift.common.hostname | lower }} -o json
+ register: node_output
+ delegate_to: "{{ groups.oo_first_master.0 }}"
+ changed_when: false
+ when: inventory_hostname in groups.oo_nodes_to_config
+
+ - set_fact:
+ was_schedulable: "{{ 'unschedulable' not in (node_output.stdout | from_json).spec }}"
+ when: inventory_hostname in groups.oo_nodes_to_config
+
- name: Mark unschedulable if host is a node
command: >
{{ openshift.common.admin_binary }} manage-node {{ openshift.common.hostname | lower }} --schedulable=false
@@ -203,7 +215,7 @@
command: >
{{ openshift.common.admin_binary }} manage-node {{ openshift.common.hostname | lower }} --schedulable=true
delegate_to: "{{ groups.oo_first_master.0 }}"
- when: inventory_hostname in groups.oo_nodes_to_config and openshift.node.schedulable | bool
+ when: inventory_hostname in groups.oo_nodes_to_config and was_schedulable | bool
##############################################################################