summaryrefslogtreecommitdiffstats
path: root/roles/openshift_master_facts/tasks
diff options
context:
space:
mode:
authorJason DeTiberus <jdetiber@redhat.com>2016-11-23 16:57:37 -0500
committerJason DeTiberus <jdetiber@redhat.com>2016-11-29 12:47:18 -0500
commit81d8b6a835de79f18b2cae87b7b58ba4d02f0b14 (patch)
treecd4ffc636a782614c5754ef327959192ec96bac4 /roles/openshift_master_facts/tasks
parentcef42e2541f7ddeaf284b1350eed7f4e46234fe9 (diff)
downloadopenshift-81d8b6a835de79f18b2cae87b7b58ba4d02f0b14.tar.gz
openshift-81d8b6a835de79f18b2cae87b7b58ba4d02f0b14.tar.bz2
openshift-81d8b6a835de79f18b2cae87b7b58ba4d02f0b14.tar.xz
openshift-81d8b6a835de79f18b2cae87b7b58ba4d02f0b14.zip
refactor handling of scheduler defaults
Diffstat (limited to 'roles/openshift_master_facts/tasks')
-rw-r--r--roles/openshift_master_facts/tasks/main.yml37
1 files changed, 35 insertions, 2 deletions
diff --git a/roles/openshift_master_facts/tasks/main.yml b/roles/openshift_master_facts/tasks/main.yml
index 1f27a2c1d..170861484 100644
--- a/roles/openshift_master_facts/tasks/main.yml
+++ b/roles/openshift_master_facts/tasks/main.yml
@@ -64,8 +64,6 @@
master_count: "{{ openshift_master_count | default(None) }}"
controller_lease_ttl: "{{ osm_controller_lease_ttl | default(None) }}"
master_image: "{{ osm_image | default(None) }}"
- scheduler_predicates: "{{ openshift_master_scheduler_predicates | default(None) }}"
- scheduler_priorities: "{{ openshift_master_scheduler_priorities | default(None) }}"
admission_plugin_config: "{{openshift_master_admission_plugin_config | default(None) }}"
kube_admission_plugin_config: "{{openshift_master_kube_admission_plugin_config | default(None) }}" # deprecated, merged with admission_plugin_config
oauth_template: "{{ openshift_master_oauth_template | default(None) }}" # deprecated in origin 1.2 / OSE 3.2
@@ -79,3 +77,38 @@
audit_config: "{{ openshift_master_audit_config | default(None) }}"
metrics_public_url: "{% if openshift_hosted_metrics_deploy | default(false) %}https://{{ metrics_hostname }}/hawkular/metrics{% endif %}"
scheduler_args: "{{ openshift_master_scheduler_args | default(None) }}"
+
+- name: Determine if scheduler config present
+ stat:
+ path: "{{ openshift_master_scheduler_conf }}"
+ register: scheduler_config_stat
+
+- block:
+ - set_fact:
+ openshift_master_scheduler_predicates: "{{ lookup('openshift_master_facts_default_predicates') }}"
+ when: "{{ openshift_master_scheduler_predicates is not defined }}"
+
+ - set_fact:
+ openshift_master_scheduler_priorities: "{{ lookup('openshift_master_facts_default_priorities') }}"
+ when: "{{ openshift_master_scheduler_priorities is not defined }}"
+ when: "{{ not scheduler_config_stat.stat.exists }}"
+
+- block:
+ - name: Retrieve current scheduler config
+ slurp:
+ src: "{{ openshift_master_scheduler_conf }}"
+ register: current_scheduler_config
+
+ - fail:
+ msg: "Could not decode scheduler config"
+ when: "{{ (current_scheduler_config.content | b64decode | from_json).apiVersion | default(none) != 'v1' }}"
+
+ - set_fact:
+ openshift_master_scheduler_predicates: "{{ (current_scheduler_config.content | b64decode | from_json).predicates }}"
+ when: "{{ openshift_master_scheduler_predicates is not defined }}"
+
+ - set_fact:
+ openshift_master_scheduler_priorities: "{{ (current_scheduler_config.content | b64decode | from_json).priorities }}"
+ when: "{{ openshift_master_scheduler_priorities is not defined }}"
+
+ when: "{{ scheduler_config_stat.stat.exists }}"