Browse Source

Merge pull request #294 from brenton/master

Adding support for labeling nodes as unscheduleable
Thomas Wiest 9 years ago
parent
commit
cf1fb0bedb
1 changed files with 21 additions and 0 deletions
  1. 21 0
      roles/openshift_node/tasks/main.yml

+ 21 - 0
roles/openshift_node/tasks/main.yml

@@ -73,3 +73,24 @@
 
 - name: Start and enable openshift-node
   service: name=openshift-node enabled=yes state=started
+
+- name: Check scheduleable state
+  delegate_to: "{{ openshift_first_master }}"
+  command: >
+    {{ openshift.common.client_binary }} get node {{ inventory_hostname }}
+  register: ond_get_node
+  until: ond_get_node.rc == 0
+  retries: 10
+  delay: 5
+
+- name: Handle unscheduleable node
+  delegate_to: "{{ openshift_first_master }}"
+  command: >
+    {{ openshift.common.admin_binary }} manage-node {{ inventory_hostname }} --schedulable=false
+  when: openshift_scheduleable is defined and openshift_scheduleable == False and "SchedulingDisabled" not in ond_get_node.stdout
+
+- name: Handle scheduleable node
+  delegate_to: "{{ openshift_first_master }}"
+  command: >
+    {{ openshift.common.admin_binary }} manage-node {{ inventory_hostname }} --schedulable=true
+  when: (openshift_scheduleable is not defined or openshift_scheduleable == True) and "SchedulingDisabled" in ond_get_node.stdout