summaryrefslogtreecommitdiffstats
path: root/playbooks/common/openshift-cluster/upgrades/pre/verify_upgrade_targets.yml
blob: 1b437dce919420de2bdaac0b23e96584a2ab3d5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
---
- name: Fail when OpenShift is not installed
  fail:
    msg: Verify OpenShift is already installed
  when: openshift.common.version is not defined

- name: Verify containers are available for upgrade
  command: >
    docker pull {{ openshift.common.cli_image }}:{{ openshift_image_tag }}
  register: pull_result
  changed_when: "'Downloaded newer image' in pull_result.stdout"
  when: openshift.common.is_containerized | bool

- when: not openshift.common.is_containerized | bool
  block:
  - name: Check latest available OpenShift RPM version
    command: >
      {{ repoquery_cmd }} --qf '%{version}' "{{ openshift.common.service_type }}"
    failed_when: false
    changed_when: false
    register: avail_openshift_version

  - name: Fail when unable to determine available OpenShift RPM version
    fail:
      msg: "Unable to determine available OpenShift RPM version"
    when:
    - avail_openshift_version.stdout == ''

  - name: Verify OpenShift RPMs are available for upgrade
    fail:
      msg: "OpenShift {{ avail_openshift_version.stdout }} is available, but {{ openshift_upgrade_target }} or greater is required"
    when:
    - not avail_openshift_version | skipped
    - avail_openshift_version.stdout | default('0.0', True) | version_compare(openshift_release, '<')

- name: Fail when openshift version does not meet minium requirement for Origin upgrade
  fail:
    msg: "This upgrade playbook must be run against OpenShift {{ openshift_upgrade_min }} or later"
  when:
  - deployment_type == 'origin'
  - openshift.common.version | version_compare(openshift_upgrade_min,'<')