diff options
author | Brenton Leanhardt <bleanhar@redhat.com> | 2016-01-13 11:52:21 -0500 |
---|---|---|
committer | Brenton Leanhardt <bleanhar@redhat.com> | 2016-01-13 11:52:21 -0500 |
commit | 674e812aaac80c0060d57761a3f43762581b5cfe (patch) | |
tree | 41cb4c992b2de5896ea5e66ec27338af0ebe12e4 /playbooks/common/openshift-node | |
parent | 965c614859a0318c956b4a9ab312c7c856facaa1 (diff) | |
parent | 2e3e0ebe0d98f5374fbfb3a95145a9665d57fe69 (diff) | |
download | openshift-674e812aaac80c0060d57761a3f43762581b5cfe.tar.gz openshift-674e812aaac80c0060d57761a3f43762581b5cfe.tar.bz2 openshift-674e812aaac80c0060d57761a3f43762581b5cfe.tar.xz openshift-674e812aaac80c0060d57761a3f43762581b5cfe.zip |
Merge pull request #1159 from abutcher/wait-for-api
API Verification
Diffstat (limited to 'playbooks/common/openshift-node')
-rw-r--r-- | playbooks/common/openshift-node/config.yml | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/playbooks/common/openshift-node/config.yml b/playbooks/common/openshift-node/config.yml index 483a7768c..336cbed5e 100644 --- a/playbooks/common/openshift-node/config.yml +++ b/playbooks/common/openshift-node/config.yml @@ -215,6 +215,23 @@ | oo_collect('openshift.common.hostname') }}" openshift_node_vars: "{{ hostvars | oo_select_keys(groups['oo_nodes_to_config']) }}" pre_tasks: - + # Necessary because when you're on a node that's also a master the master will be + # restarted after the node restarts docker and it will take up to 60 seconds for + # systemd to start the master again + - name: Wait for master API to become available before proceeding + # Using curl here since the uri module requires python-httplib2 and + # wait_for port doesn't provide health information. + command: > + curl -k --head --silent {{ openshift.master.api_url }} + register: api_available_output + until: api_available_output.stdout.find("200 OK") != -1 + retries: 120 + delay: 1 + changed_when: false + when: openshift.common.is_containerized | bool + - fail: + msg: > + Unable to contact master API at {{ openshift.master.api_url }} + when: openshift.common.is_containerized | bool and api_available_output.stdout.find("200 OK") == -1 roles: - openshift_manage_node |