diff options
author | Steve Milner <smilner@redhat.com> | 2017-02-23 14:49:22 -0500 |
---|---|---|
committer | Steve Milner <smilner@redhat.com> | 2017-03-02 09:52:10 -0500 |
commit | 2437a98760d25e83f37a5d78372f4c67e486ade1 (patch) | |
tree | 646291c2c44ab80113d409a2ce1c9149d40d518c | |
parent | 1629eb0af60e14f70f942b66a6c4c37e875dabe1 (diff) | |
download | openshift-2437a98760d25e83f37a5d78372f4c67e486ade1.tar.gz openshift-2437a98760d25e83f37a5d78372f4c67e486ade1.tar.bz2 openshift-2437a98760d25e83f37a5d78372f4c67e486ade1.tar.xz openshift-2437a98760d25e83f37a5d78372f4c67e486ade1.zip |
Fail on Atomic if docker is too old
If the docker version on a master or node is under 1.12 and the OS is an
Atomic Host variant the installation should fail.
Fixes: BZ1425583
-rw-r--r-- | roles/openshift_facts/tasks/main.yml | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/roles/openshift_facts/tasks/main.yml b/roles/openshift_facts/tasks/main.yml index 0ec294bbc..c538ff7a1 100644 --- a/roles/openshift_facts/tasks/main.yml +++ b/roles/openshift_facts/tasks/main.yml @@ -26,6 +26,25 @@ msg: "openshift-ansible requires Python 2 for {{ ansible_distribution }}" when: ansible_distribution != 'Fedora' and ansible_python['version']['major'] != 2 +# Fail as early as possible if Atomic and old version of Docker +- block: + + # See https://access.redhat.com/articles/2317361 + # and https://github.com/ansible/ansible/issues/15892 + # NOTE: the "'s can not be removed at this level else the docker command will fail + # NOTE: When ansible >2.2.1.x is used this can be updated per + # https://github.com/openshift/openshift-ansible/pull/3475#discussion_r103525121 + - name: Determine Atomic Host Docker Version + shell: 'CURLY="{"; docker version --format "$CURLY{json .Server.Version}}"' + register: l_atomic_docker_version + + - assert: + msg: Installation on Atomic Host requires Docker 1.12 or later. Please upgrade and restart the Atomic Host. + that: + - l_atomic_docker_version.stdout | replace('"', '') | version_compare('1.12','>=') + + when: l_is_atomic | bool + - name: Ensure various deps are installed package: name={{ item }} state=present with_items: "{{ required_packages }}" |