diff options
| author | Michael Gugino <mgugino@redhat.com> | 2017-11-09 17:48:27 -0500 | 
|---|---|---|
| committer | Michael Gugino <mgugino@redhat.com> | 2017-11-09 17:48:27 -0500 | 
| commit | 4877e1c21a26d2aba314e6272478005d12b7f14b (patch) | |
| tree | dffbc50aee9211685265d0a570156aa5103f778c /playbooks/common/openshift-cluster | |
| parent | 7900f45d2d8ef566cf3f330a33364dd217a93c1d (diff) | |
| download | openshift-4877e1c21a26d2aba314e6272478005d12b7f14b.tar.gz openshift-4877e1c21a26d2aba314e6272478005d12b7f14b.tar.bz2 openshift-4877e1c21a26d2aba314e6272478005d12b7f14b.tar.xz openshift-4877e1c21a26d2aba314e6272478005d12b7f14b.zip | |
Combine master upgrade play with role
Currently, there are plays importing tasks directly from
openshift_master role.  This has caused numerous bugs
and code duplicaiton in the past.
This commit combines the upgrade into openshift_master role
utilizing include_role syntax.
Diffstat (limited to 'playbooks/common/openshift-cluster')
6 files changed, 6 insertions, 312 deletions
| diff --git a/playbooks/common/openshift-cluster/upgrades/rpm_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/rpm_upgrade.yml deleted file mode 100644 index 8cc46ab68..000000000 --- a/playbooks/common/openshift-cluster/upgrades/rpm_upgrade.yml +++ /dev/null @@ -1,38 +0,0 @@ ---- -# When we update package "a-${version}" and a requires b >= ${version} if we -# don't specify the version of b yum will choose the latest version of b -# available and the whole set of dependencies end up at the latest version. -# Since the package module, unlike the yum module, doesn't flatten a list -# of packages into one transaction we need to do that explicitly. The ansible -# core team tells us not to rely on yum module transaction flattening anyway. - -# TODO: If the sdn package isn't already installed this will install it, we -# should fix that -- name: Upgrade master packages -  package: name={{ master_pkgs | join(',') }} state=present -  vars: -    master_pkgs: -      - "{{ openshift.common.service_type }}{{ openshift_pkg_version }}" -      - "{{ openshift.common.service_type }}-master{{ openshift_pkg_version }}" -      - "{{ openshift.common.service_type }}-node{{ openshift_pkg_version }}" -      - "{{ openshift.common.service_type }}-sdn-ovs{{ openshift_pkg_version }}" -      - "{{ openshift.common.service_type }}-clients{{ openshift_pkg_version }}" -      - "tuned-profiles-{{ openshift.common.service_type }}-node{{ openshift_pkg_version }}" -      - PyYAML -  when: -    - component == "master" -    - not openshift.common.is_atomic | bool - -- name: Upgrade node packages -  package: name={{ node_pkgs | join(',') }} state=present -  vars: -    node_pkgs: -      - "{{ openshift.common.service_type }}{{ openshift_pkg_version }}" -      - "{{ openshift.common.service_type }}-node{{ openshift_pkg_version }}" -      - "{{ openshift.common.service_type }}-sdn-ovs{{ openshift_pkg_version }}" -      - "{{ openshift.common.service_type }}-clients{{ openshift_pkg_version }}" -      - "tuned-profiles-{{ openshift.common.service_type }}-node{{ openshift_pkg_version }}" -      - PyYAML -  when: -    - component == "node" -    - not openshift.common.is_atomic | bool diff --git a/playbooks/common/openshift-cluster/upgrades/upgrade_control_plane.yml b/playbooks/common/openshift-cluster/upgrades/upgrade_control_plane.yml index a5e2f7940..2d6b7302e 100644 --- a/playbooks/common/openshift-cluster/upgrades/upgrade_control_plane.yml +++ b/playbooks/common/openshift-cluster/upgrades/upgrade_control_plane.yml @@ -63,13 +63,9 @@    vars:      openshift_master_ha: "{{ groups.oo_masters_to_config | length > 1 }}"    serial: 1 -  handlers: -  - include: ../../../../roles/openshift_master/handlers/main.yml -    static: yes -  roles: -  - openshift_facts -  - lib_utils -  post_tasks: +  tasks: +  - include_role: +      name: openshift_facts    # Run the pre-upgrade hook if defined:    - debug: msg="Running master pre-upgrade hook {{ openshift_master_upgrade_pre_hook }}" @@ -78,55 +74,9 @@    - include: "{{ openshift_master_upgrade_pre_hook }}"      when: openshift_master_upgrade_pre_hook is defined -  - include: rpm_upgrade.yml component=master -    when: not openshift.common.is_containerized | bool - -  - include_vars: ../../../../roles/openshift_master_facts/vars/main.yml - -  - include: upgrade_scheduler.yml - -  - include: "{{ master_config_hook }}" -    when: master_config_hook is defined - -  - include_vars: ../../../../roles/openshift_master/vars/main.yml - -  - name: Update journald config -    include: ../../../../roles/openshift_master/tasks/journald.yml - -  - name: Remove any legacy systemd units and update systemd units -    include: ../../../../roles/openshift_master/tasks/systemd_units.yml - -  - name: Check for ca-bundle.crt -    stat: -      path: "{{ openshift.common.config_base }}/master/ca-bundle.crt" -    register: ca_bundle_stat -    failed_when: false - -  - name: Check for ca.crt -    stat: -      path: "{{ openshift.common.config_base }}/master/ca.crt" -    register: ca_crt_stat -    failed_when: false - -  - name: Migrate ca.crt to ca-bundle.crt -    command: mv ca.crt ca-bundle.crt -    args: -      chdir: "{{ openshift.common.config_base }}/master" -    when: ca_crt_stat.stat.isreg and not ca_bundle_stat.stat.exists - -  - name: Link ca.crt to ca-bundle.crt -    file: -      src: "{{ openshift.common.config_base }}/master/ca-bundle.crt" -      path: "{{ openshift.common.config_base }}/master/ca.crt" -      state: link -    when: ca_crt_stat.stat.isreg and not ca_bundle_stat.stat.exists - -  - name: Update oreg value -    yedit: -      src: "{{ openshift.common.config_base }}/master/master-config.yaml" -      key: 'imageConfig.format' -      value: "{{ oreg_url | default(oreg_url_master) }}" -    when: oreg_url is defined or oreg_url_master is defined +  - include_role: +      name: openshift_master +      tasks_from: upgrade.yml    # Run the upgrade hook prior to restarting services/system if defined:    - debug: msg="Running master upgrade hook {{ openshift_master_upgrade_hook }}" diff --git a/playbooks/common/openshift-cluster/upgrades/upgrade_scheduler.yml b/playbooks/common/openshift-cluster/upgrades/upgrade_scheduler.yml deleted file mode 100644 index 8558bf3e9..000000000 --- a/playbooks/common/openshift-cluster/upgrades/upgrade_scheduler.yml +++ /dev/null @@ -1,173 +0,0 @@ ---- -# Upgrade predicates -- vars: -    prev_predicates: "{{ lookup('openshift_master_facts_default_predicates', short_version=openshift_upgrade_min, deployment_type=openshift_deployment_type) }}" -    prev_predicates_no_region: "{{ lookup('openshift_master_facts_default_predicates', short_version=openshift_upgrade_min, deployment_type=openshift_deployment_type, regions_enabled=False) }}" -    default_predicates_no_region: "{{ lookup('openshift_master_facts_default_predicates', regions_enabled=False) }}" -    # older_predicates are the set of predicates that have previously been -    # hard-coded into openshift_facts -    older_predicates: -    - - name: MatchNodeSelector -      - name: PodFitsResources -      - name: PodFitsPorts -      - name: NoDiskConflict -      - name: NoVolumeZoneConflict -      - name: MaxEBSVolumeCount -      - name: MaxGCEPDVolumeCount -      - name: Region -        argument: -          serviceAffinity: -            labels: -            - region -    - - name: MatchNodeSelector -      - name: PodFitsResources -      - name: PodFitsPorts -      - name: NoDiskConflict -      - name: NoVolumeZoneConflict -      - name: Region -        argument: -          serviceAffinity: -            labels: -            - region -    - - name: MatchNodeSelector -      - name: PodFitsResources -      - name: PodFitsPorts -      - name: NoDiskConflict -      - name: Region -        argument: -          serviceAffinity: -            labels: -            - region -    # older_predicates_no_region are the set of predicates that have previously -    # been hard-coded into openshift_facts, with the Region predicate removed -    older_predicates_no_region: -    - - name: MatchNodeSelector -      - name: PodFitsResources -      - name: PodFitsPorts -      - name: NoDiskConflict -      - name: NoVolumeZoneConflict -      - name: MaxEBSVolumeCount -      - name: MaxGCEPDVolumeCount -    - - name: MatchNodeSelector -      - name: PodFitsResources -      - name: PodFitsPorts -      - name: NoDiskConflict -      - name: NoVolumeZoneConflict -    - - name: MatchNodeSelector -      - name: PodFitsResources -      - name: PodFitsPorts -      - name: NoDiskConflict -  block: - -  # Handle case where openshift_master_predicates is defined -  - block: -    - debug: -        msg: "WARNING: openshift_master_scheduler_predicates is set to defaults from an earlier release of OpenShift current defaults are: {{ openshift_master_scheduler_default_predicates }}" -      when: openshift_master_scheduler_predicates in older_predicates + older_predicates_no_region + [prev_predicates] + [prev_predicates_no_region] - -    - debug: -        msg: "WARNING: openshift_master_scheduler_predicates does not match current defaults of: {{ openshift_master_scheduler_default_predicates }}" -      when: openshift_master_scheduler_predicates != openshift_master_scheduler_default_predicates -    when: openshift_master_scheduler_predicates | default(none) is not none - -  # Handle cases where openshift_master_predicates is not defined -  - block: -    - debug: -        msg: "WARNING: existing scheduler config does not match previous known defaults automated upgrade of scheduler config is disabled.\nexisting scheduler predicates: {{ openshift_master_scheduler_current_predicates }}\ncurrent scheduler default predicates are: {{ openshift_master_scheduler_default_predicates }}" -      when: -      - openshift_master_scheduler_current_predicates != openshift_master_scheduler_default_predicates -      - openshift_master_scheduler_current_predicates not in older_predicates + [prev_predicates] - -    - set_fact: -        openshift_upgrade_scheduler_predicates: "{{ openshift_master_scheduler_default_predicates }}" -      when: -      - openshift_master_scheduler_current_predicates != openshift_master_scheduler_default_predicates -      - openshift_master_scheduler_current_predicates in older_predicates + [prev_predicates] - -    - set_fact: -        openshift_upgrade_scheduler_predicates: "{{ default_predicates_no_region }}" -      when: -      - openshift_master_scheduler_current_predicates != default_predicates_no_region -      - openshift_master_scheduler_current_predicates in older_predicates_no_region + [prev_predicates_no_region] - -    when: openshift_master_scheduler_predicates | default(none) is none - - -# Upgrade priorities -- vars: -    prev_priorities: "{{ lookup('openshift_master_facts_default_priorities', short_version=openshift_upgrade_min, deployment_type=openshift_deployment_type) }}" -    prev_priorities_no_zone: "{{ lookup('openshift_master_facts_default_priorities', short_version=openshift_upgrade_min, deployment_type=openshift_deployment_type, zones_enabled=False) }}" -    default_priorities_no_zone: "{{ lookup('openshift_master_facts_default_priorities', zones_enabled=False) }}" -    # older_priorities are the set of priorities that have previously been -    # hard-coded into openshift_facts -    older_priorities: -    - - name: LeastRequestedPriority -        weight: 1 -      - name: SelectorSpreadPriority -        weight: 1 -      - name: Zone -        weight: 2 -        argument: -          serviceAntiAffinity: -            label: zone -    # older_priorities_no_region are the set of priorities that have previously -    # been hard-coded into openshift_facts, with the Zone priority removed -    older_priorities_no_zone: -    - - name: LeastRequestedPriority -        weight: 1 -      - name: SelectorSpreadPriority -        weight: 1 -  block: - -  # Handle case where openshift_master_priorities is defined -  - block: -    - debug: -        msg: "WARNING: openshift_master_scheduler_priorities is set to defaults from an earlier release of OpenShift current defaults are: {{ openshift_master_scheduler_default_priorities }}" -      when: openshift_master_scheduler_priorities in older_priorities + older_priorities_no_zone + [prev_priorities] + [prev_priorities_no_zone] - -    - debug: -        msg: "WARNING: openshift_master_scheduler_priorities does not match current defaults of: {{ openshift_master_scheduler_default_priorities }}" -      when: openshift_master_scheduler_priorities != openshift_master_scheduler_default_priorities -    when: openshift_master_scheduler_priorities | default(none) is not none - -  # Handle cases where openshift_master_priorities is not defined -  - block: -    - debug: -        msg: "WARNING: existing scheduler config does not match previous known defaults automated upgrade of scheduler config is disabled.\nexisting scheduler priorities: {{ openshift_master_scheduler_current_priorities }}\ncurrent scheduler default priorities are: {{ openshift_master_scheduler_default_priorities }}" -      when: -      - openshift_master_scheduler_current_priorities != openshift_master_scheduler_default_priorities -      - openshift_master_scheduler_current_priorities not in older_priorities + [prev_priorities] - -    - set_fact: -        openshift_upgrade_scheduler_priorities: "{{ openshift_master_scheduler_default_priorities }}" -      when: -      - openshift_master_scheduler_current_priorities != openshift_master_scheduler_default_priorities -      - openshift_master_scheduler_current_priorities in older_priorities + [prev_priorities] - -    - set_fact: -        openshift_upgrade_scheduler_priorities: "{{ default_priorities_no_zone }}" -      when: -      - openshift_master_scheduler_current_priorities != default_priorities_no_zone -      - openshift_master_scheduler_current_priorities in older_priorities_no_zone + [prev_priorities_no_zone] - -    when: openshift_master_scheduler_priorities | default(none) is none - - -# Update scheduler -- vars: -    scheduler_config: -      kind: Policy -      apiVersion: v1 -      predicates: "{{ openshift_upgrade_scheduler_predicates -                      | default(openshift_master_scheduler_current_predicates) }}" -      priorities: "{{ openshift_upgrade_scheduler_priorities -                      | default(openshift_master_scheduler_current_priorities) }}" -  block: -  - name: Update scheduler config -    copy: -      content: "{{ scheduler_config | to_nice_json }}" -      dest: "{{ openshift_master_scheduler_conf }}" -      backup: true -  when: > -    openshift_upgrade_scheduler_predicates is defined or -    openshift_upgrade_scheduler_priorities is defined diff --git a/playbooks/common/openshift-cluster/upgrades/v3_5/master_config_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/v3_5/master_config_upgrade.yml deleted file mode 100644 index 52458e03c..000000000 --- a/playbooks/common/openshift-cluster/upgrades/v3_5/master_config_upgrade.yml +++ /dev/null @@ -1,10 +0,0 @@ ---- -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'controllerConfig.serviceServingCert.signer.certFile' -    yaml_value: service-signer.crt - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'controllerConfig.serviceServingCert.signer.keyFile' -    yaml_value: service-signer.key diff --git a/playbooks/common/openshift-cluster/upgrades/v3_6/master_config_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/v3_6/master_config_upgrade.yml deleted file mode 100644 index db0c8f886..000000000 --- a/playbooks/common/openshift-cluster/upgrades/v3_6/master_config_upgrade.yml +++ /dev/null @@ -1,15 +0,0 @@ ---- -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'controllerConfig.serviceServingCert.signer.certFile' -    yaml_value: service-signer.crt - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'controllerConfig.serviceServingCert.signer.keyFile' -    yaml_value: service-signer.key - -- modify_yaml: -    dest: "{{ openshift.common.config_base }}/master/master-config.yaml" -    yaml_key: servingInfo.clientCA -    yaml_value: ca.crt diff --git a/playbooks/common/openshift-cluster/upgrades/v3_7/master_config_upgrade.yml b/playbooks/common/openshift-cluster/upgrades/v3_7/master_config_upgrade.yml deleted file mode 100644 index 1d4d1919c..000000000 --- a/playbooks/common/openshift-cluster/upgrades/v3_7/master_config_upgrade.yml +++ /dev/null @@ -1,20 +0,0 @@ ---- -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'controllerConfig.election.lockName' -    yaml_value: 'openshift-master-controllers' - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'controllerConfig.serviceServingCert.signer.certFile' -    yaml_value: service-signer.crt - -- modify_yaml: -    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" -    yaml_key: 'controllerConfig.serviceServingCert.signer.keyFile' -    yaml_value: service-signer.key - -- modify_yaml: -    dest: "{{ openshift.common.config_base }}/master/master-config.yaml" -    yaml_key: servingInfo.clientCA -    yaml_value: ca.crt | 
