diff options
Diffstat (limited to 'playbooks')
20 files changed, 246 insertions, 160 deletions
diff --git a/playbooks/adhoc/uninstall.yml b/playbooks/adhoc/uninstall.yml index 1c8257162..97d835eae 100644 --- a/playbooks/adhoc/uninstall.yml +++ b/playbooks/adhoc/uninstall.yml @@ -393,10 +393,19 @@      - "{{ directories.results | default([]) }}"      - files +  - set_fact: +      client_users: "{{ [ansible_ssh_user, 'root'] | unique }}" + +  - name: Remove client kubeconfigs +    file: +      path: "~{{ item }}/.kube" +      state: absent +    with_items: +    - "{{ client_users }}" +    - name: Remove remaining files      file: path={{ item }} state=absent      with_items: -    - "~{{ ansible_ssh_user }}/.kube"      - /etc/ansible/facts.d/openshift.fact      - /etc/atomic-enterprise      - /etc/corosync @@ -421,7 +430,6 @@      - /etc/sysconfig/origin-master      - /etc/sysconfig/origin-master-api      - /etc/sysconfig/origin-master-controllers -    - /root/.kube      - /usr/share/openshift/examples      - /var/lib/atomic-enterprise      - /var/lib/openshift diff --git a/playbooks/byo/openshift-cluster/redeploy-etcd-ca.yml b/playbooks/byo/openshift-cluster/redeploy-etcd-ca.yml new file mode 100644 index 000000000..29f821eda --- /dev/null +++ b/playbooks/byo/openshift-cluster/redeploy-etcd-ca.yml @@ -0,0 +1,10 @@ +--- +- include: initialize_groups.yml +  tags: +  - always + +- include: ../../common/openshift-cluster/std_include.yml +  tags: +  - always + +- include: ../../common/openshift-cluster/redeploy-certificates/etcd-ca.yml diff --git a/playbooks/byo/openshift-cluster/redeploy-openshift-ca.yml b/playbooks/byo/openshift-cluster/redeploy-openshift-ca.yml index 3b33e0d6f..6e11a111b 100644 --- a/playbooks/byo/openshift-cluster/redeploy-openshift-ca.yml +++ b/playbooks/byo/openshift-cluster/redeploy-openshift-ca.yml @@ -7,4 +7,4 @@    tags:    - always -- include: ../../common/openshift-cluster/redeploy-certificates/ca.yml +- include: ../../common/openshift-cluster/redeploy-certificates/openshift-ca.yml diff --git a/playbooks/common/openshift-cluster/evaluate_groups.yml b/playbooks/common/openshift-cluster/evaluate_groups.yml index 46932b27f..c28ce4c14 100644 --- a/playbooks/common/openshift-cluster/evaluate_groups.yml +++ b/playbooks/common/openshift-cluster/evaluate_groups.yml @@ -155,5 +155,5 @@        groups: oo_glusterfs_to_config        ansible_ssh_user: "{{ g_ssh_user | default(omit) }}"        ansible_become: "{{ g_sudo | default(omit) }}" -    with_items: "{{ g_glusterfs_hosts | union(g_glusterfs_registry_hosts) | default([]) }}" +    with_items: "{{ g_glusterfs_hosts | union(g_glusterfs_registry_hosts | default([])) }}"      changed_when: no diff --git a/playbooks/common/openshift-cluster/openshift_hosted.yml b/playbooks/common/openshift-cluster/openshift_hosted.yml index 5db71b857..8d94b6509 100644 --- a/playbooks/common/openshift-cluster/openshift_hosted.yml +++ b/playbooks/common/openshift-cluster/openshift_hosted.yml @@ -45,6 +45,8 @@    - role: cockpit-ui      when: ( openshift.common.version_gte_3_3_or_1_3  | bool ) and ( openshift_hosted_manage_registry | default(true) | bool ) and not (openshift.docker.hosted_registry_insecure | default(false) | bool) +  - role: openshift_default_storage_class +    when: openshift_cloudprovider_kind is defined and (openshift_cloudprovider_kind == 'aws' or openshift_cloudprovider_kind == 'gce')  - name: Update master-config for publicLoggingURL    hosts: oo_masters_to_config:!oo_first_master diff --git a/playbooks/common/openshift-cluster/redeploy-certificates/etcd-ca.yml b/playbooks/common/openshift-cluster/redeploy-certificates/etcd-ca.yml new file mode 100644 index 000000000..6964e8567 --- /dev/null +++ b/playbooks/common/openshift-cluster/redeploy-certificates/etcd-ca.yml @@ -0,0 +1,158 @@ +--- +- name: Check cert expirys +  hosts: oo_etcd_to_config:oo_masters_to_config +  vars: +    openshift_certificate_expiry_show_all: yes +  roles: +  # Sets 'check_results' per host which contains health status for +  # etcd, master and node certificates.  We will use 'check_results' +  # to determine if any certificates were expired prior to running +  # this playbook. Service restarts will be skipped if any +  # certificates were previously expired. +  - role: openshift_certificate_expiry + +- name: Backup existing etcd CA certificate directories +  hosts: oo_etcd_to_config +  roles: +  - role: etcd_common +    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" +  tasks: +  - name: Determine if CA certificate directory exists +    stat: +      path: "{{ etcd_ca_dir }}" +    register: etcd_ca_certs_dir_stat +  - name: Backup generated etcd certificates +    command: > +      tar -czf {{ etcd_conf_dir }}/etcd-ca-certificate-backup-{{ ansible_date_time.epoch }}.tgz +      {{ etcd_ca_dir }} +    args: +      warn: no +    when: etcd_ca_certs_dir_stat.stat.exists | bool +  - name: Remove CA certificate directory +    file: +      path: "{{ etcd_ca_dir }}" +      state: absent +    when: etcd_ca_certs_dir_stat.stat.exists | bool + +- name: Generate new etcd CA +  hosts: oo_first_etcd +  roles: +  - role: openshift_etcd_ca +    etcd_peers: "{{ groups.oo_etcd_to_config | default([], true) }}" +    etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" +    etcd_certificates_etcd_hosts: "{{ groups.oo_etcd_to_config | default([], true) }}" + +- name: Create temp directory for syncing certs +  hosts: localhost +  connection: local +  become: no +  gather_facts: no +  tasks: +  - name: Create local temp directory for syncing certs +    local_action: command mktemp -d /tmp/openshift-ansible-XXXXXXX +    register: g_etcd_mktemp +    changed_when: false + +- name: Distribute etcd CA to etcd hosts +  hosts: oo_etcd_to_config +  vars: +    etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" +  roles: +  - role: etcd_common +    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" +  tasks: +  - name: Create a tarball of the etcd ca certs +    command: > +      tar -czvf {{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz +        -C {{ etcd_ca_dir }} . +    args: +      creates: "{{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz" +      warn: no +    delegate_to: "{{ etcd_ca_host }}" +    run_once: true +  - name: Retrieve etcd ca cert tarball +    fetch: +      src: "{{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz" +      dest: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/" +      flat: yes +      fail_on_missing: yes +      validate_checksum: yes +    delegate_to: "{{ etcd_ca_host }}" +    run_once: true +  - name: Ensure ca directory exists +    file: +      path: "{{ etcd_ca_dir }}" +      state: directory +  - name: Unarchive etcd ca cert tarballs +    unarchive: +      src: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/{{ etcd_ca_name }}.tgz" +      dest: "{{ etcd_ca_dir }}" +  - name: Read current etcd CA +    slurp: +      src: "{{ etcd_conf_dir }}/ca.crt" +    register: g_current_etcd_ca_output +  - name: Read new etcd CA +    slurp: +      src: "{{ etcd_ca_dir }}/ca.crt" +    register: g_new_etcd_ca_output +  - copy: +      content: "{{ (g_new_etcd_ca_output.content|b64decode) + (g_current_etcd_ca_output.content|b64decode) }}" +      dest: "{{ item }}/ca.crt" +    with_items: +    - "{{ etcd_conf_dir }}" +    - "{{ etcd_ca_dir }}" + +- include: ../../openshift-etcd/restart.yml +  # Do not restart etcd when etcd certificates were previously expired. +  when: ('expired' not in (hostvars +                           | oo_select_keys(groups['etcd']) +                           | oo_collect('check_results.check_results.etcd') +                           | oo_collect('health'))) + +- name: Retrieve etcd CA certificate +  hosts: oo_first_etcd +  roles: +  - role: etcd_common +    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" +  tasks: +  - name: Retrieve etcd CA certificate +    fetch: +      src: "{{ etcd_conf_dir }}/ca.crt" +      dest: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/" +      flat: yes +      fail_on_missing: yes +      validate_checksum: yes + +- name: Distribute etcd CA to masters +  hosts: oo_masters_to_config +  vars: +    openshift_ca_host: "{{ groups.oo_first_master.0 }}" +  tasks: +  - name: Deploy etcd CA +    copy: +      src: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/ca.crt" +      dest: "{{ openshift.common.config_base }}/master/master.etcd-ca.crt" +    when: groups.oo_etcd_to_config | default([]) | length > 0 + +- name: Delete temporary directory on localhost +  hosts: localhost +  connection: local +  become: no +  gather_facts: no +  tasks: +  - file: +      name: "{{ g_etcd_mktemp.stdout }}" +      state: absent +    changed_when: false + +- include: ../../openshift-master/restart.yml +  # Do not restart masters when master certificates were previously expired. +  when: ('expired' not in hostvars +                       | oo_select_keys(groups['oo_masters_to_config']) +                       | oo_collect('check_results.check_results.ocp_certs') +                       | oo_collect('health', {'path':hostvars[groups.oo_first_master.0].openshift.common.config_base ~ "/master/master.server.crt"})) +        and +        ('expired' not in hostvars +                          | oo_select_keys(groups['oo_masters_to_config']) +                          | oo_collect('check_results.check_results.ocp_certs') +                          | oo_collect('health', {'path':hostvars[groups.oo_first_master.0].openshift.common.config_base ~ "/master/ca-bundle.crt"})) diff --git a/playbooks/common/openshift-cluster/redeploy-certificates/ca.yml b/playbooks/common/openshift-cluster/redeploy-certificates/openshift-ca.yml index 0d94a011a..089ae6bbc 100644 --- a/playbooks/common/openshift-cluster/redeploy-certificates/ca.yml +++ b/playbooks/common/openshift-cluster/redeploy-certificates/openshift-ca.yml @@ -7,7 +7,7 @@      when: not openshift.common.version_gte_3_2_or_1_2 | bool  - name: Check cert expirys -  hosts: oo_nodes_to_config:oo_etcd_to_config:oo_masters_to_config +  hosts: oo_nodes_to_config:oo_masters_to_config    vars:      openshift_certificate_expiry_show_all: yes    roles: @@ -18,140 +18,6 @@    # certificates were previously expired.    - role: openshift_certificate_expiry -- name: Backup existing etcd CA certificate directories -  hosts: oo_etcd_to_config -  roles: -  - role: etcd_common -    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" -  tasks: -  - name: Determine if CA certificate directory exists -    stat: -      path: "{{ etcd_ca_dir }}" -    register: etcd_ca_certs_dir_stat -  - name: Backup generated etcd certificates -    command: > -      tar -czf {{ etcd_conf_dir }}/etcd-ca-certificate-backup-{{ ansible_date_time.epoch }}.tgz -      {{ etcd_ca_dir }} -    args: -      warn: no -    when: etcd_ca_certs_dir_stat.stat.exists | bool -  - name: Remove CA certificate directory -    file: -      path: "{{ etcd_ca_dir }}" -      state: absent -    when: etcd_ca_certs_dir_stat.stat.exists | bool - -- name: Generate new etcd CA -  hosts: oo_first_etcd -  roles: -  - role: openshift_etcd_ca -    etcd_peers: "{{ groups.oo_etcd_to_config | default([], true) }}" -    etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" -    etcd_certificates_etcd_hosts: "{{ groups.oo_etcd_to_config | default([], true) }}" - -- name: Create temp directory for syncing certs -  hosts: localhost -  connection: local -  become: no -  gather_facts: no -  tasks: -  - name: Create local temp directory for syncing certs -    local_action: command mktemp -d /tmp/openshift-ansible-XXXXXXX -    register: g_etcd_mktemp -    changed_when: false - -- name: Distribute etcd CA to etcd hosts -  hosts: oo_etcd_to_config -  vars: -    etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}" -  roles: -  - role: etcd_common -    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" -  tasks: -  - name: Create a tarball of the etcd ca certs -    command: > -      tar -czvf {{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz -        -C {{ etcd_ca_dir }} . -    args: -      creates: "{{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz" -      warn: no -    delegate_to: "{{ etcd_ca_host }}" -    run_once: true -  - name: Retrieve etcd ca cert tarball -    fetch: -      src: "{{ etcd_conf_dir }}/{{ etcd_ca_name }}.tgz" -      dest: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/" -      flat: yes -      fail_on_missing: yes -      validate_checksum: yes -    delegate_to: "{{ etcd_ca_host }}" -    run_once: true -  - name: Ensure ca directory exists -    file: -      path: "{{ etcd_ca_dir }}" -      state: directory -  - name: Unarchive etcd ca cert tarballs -    unarchive: -      src: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/{{ etcd_ca_name }}.tgz" -      dest: "{{ etcd_ca_dir }}" -  - name: Read current etcd CA -    slurp: -      src: "{{ etcd_conf_dir }}/ca.crt" -    register: g_current_etcd_ca_output -  - name: Read new etcd CA -    slurp: -      src: "{{ etcd_ca_dir }}/ca.crt" -    register: g_new_etcd_ca_output -  - copy: -      content: "{{ (g_new_etcd_ca_output.content|b64decode) + (g_current_etcd_ca_output.content|b64decode) }}" -      dest: "{{ item }}/ca.crt" -    with_items: -    - "{{ etcd_conf_dir }}" -    - "{{ etcd_ca_dir }}" - -- name: Retrieve etcd CA certificate -  hosts: oo_first_etcd -  roles: -  - role: etcd_common -    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" -  tasks: -  - name: Retrieve etcd CA certificate -    fetch: -      src: "{{ etcd_conf_dir }}/ca.crt" -      dest: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/" -      flat: yes -      fail_on_missing: yes -      validate_checksum: yes - -- name: Distribute etcd CA to masters -  hosts: oo_masters_to_config -  vars: -    openshift_ca_host: "{{ groups.oo_first_master.0 }}" -  tasks: -  - name: Deploy CA certificate, key, bundle and serial -    copy: -      src: "{{ hostvars['localhost'].g_etcd_mktemp.stdout }}/ca.crt" -      dest: "{{ openshift.common.config_base }}/master/master.etcd-ca.crt" -    when: groups.oo_etcd_to_config | default([]) | length > 0 - -- name: Delete temporary directory on localhost -  hosts: localhost -  connection: local -  become: no -  gather_facts: no -  tasks: -  - file: -      name: "{{ g_etcd_mktemp.stdout }}" -      state: absent -    changed_when: false - -- include: ../../openshift-etcd/restart.yml -  # Do not restart etcd when etcd certificates were previously expired. -  when: ('expired' not in (hostvars -                           | oo_select_keys(groups['etcd']) -                           | oo_collect('check_results.check_results.etcd') -                           | oo_collect('health'))) -  # Update master config when ca-bundle not referenced. Services will be  # restarted below after new CA certificate has been distributed.  - name: Ensure ca-bundle.crt is referenced in master configuration diff --git a/playbooks/common/openshift-cluster/upgrades/disable_node_excluders.yml b/playbooks/common/openshift-cluster/upgrades/disable_node_excluders.yml index 7988e97ab..a66301c0d 100644 --- a/playbooks/common/openshift-cluster/upgrades/disable_node_excluders.yml +++ b/playbooks/common/openshift-cluster/upgrades/disable_node_excluders.yml @@ -1,6 +1,6 @@  ---  - name: Disable excluders -  hosts: oo_nodes_to_config +  hosts: oo_nodes_to_upgrade:!oo_masters_to_config    gather_facts: no    roles:    - role: openshift_excluder diff --git a/playbooks/common/openshift-cluster/upgrades/etcd/backup.yml b/playbooks/common/openshift-cluster/upgrades/etcd/backup.yml index b7fd2c0c5..616ba04f8 100644 --- a/playbooks/common/openshift-cluster/upgrades/etcd/backup.yml +++ b/playbooks/common/openshift-cluster/upgrades/etcd/backup.yml @@ -3,12 +3,12 @@    hosts: oo_etcd_hosts_to_backup    roles:    - role: openshift_facts -  - role: etcd_upgrade -    r_etcd_upgrade_action: backup -    r_etcd_backup_tag: etcd_backup_tag +  - role: etcd_common +    r_etcd_common_action: backup +    r_etcd_common_backup_tag: etcd_backup_tag      r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}" -    r_etcd_upgrade_embedded_etcd: "{{ groups.oo_etcd_to_config | default([]) | length == 0 }}" -    r_etcd_backup_sufix_name: "{{ lookup('pipe', 'date +%Y%m%d%H%M%S') }}" +    r_etcd_common_embedded_etcd: "{{ groups.oo_etcd_to_config | default([]) | length == 0 }}" +    r_etcd_common_backup_sufix_name: "{{ lookup('pipe', 'date +%Y%m%d%H%M%S') }}"  - name: Gate on etcd backup    hosts: localhost @@ -18,7 +18,7 @@    - set_fact:        etcd_backup_completed: "{{ hostvars                                   | oo_select_keys(groups.oo_etcd_hosts_to_backup) -                                 | oo_collect('inventory_hostname', {'r_etcd_upgrade_backup_complete': true}) }}" +                                 | oo_collect('inventory_hostname', {'r_etcd_common_backup_complete': true}) }}"    - set_fact:        etcd_backup_failed: "{{ groups.oo_etcd_hosts_to_backup | difference(etcd_backup_completed) }}"    - fail: diff --git a/playbooks/common/openshift-cluster/upgrades/etcd/main.yml b/playbooks/common/openshift-cluster/upgrades/etcd/main.yml index 3e01883ae..64abc54e7 100644 --- a/playbooks/common/openshift-cluster/upgrades/etcd/main.yml +++ b/playbooks/common/openshift-cluster/upgrades/etcd/main.yml @@ -16,7 +16,8 @@    tasks:    - include_role:        name: etcd_common -      tasks_from: etcdctl.yml +    vars: +      r_etcd_common_action: drop_etcdctl  - name: Perform etcd upgrade    include: ./upgrade.yml diff --git a/playbooks/common/openshift-cluster/upgrades/pre/verify_upgrade_targets.yml b/playbooks/common/openshift-cluster/upgrades/pre/verify_upgrade_targets.yml index 1b437dce9..9b4a8e413 100644 --- a/playbooks/common/openshift-cluster/upgrades/pre/verify_upgrade_targets.yml +++ b/playbooks/common/openshift-cluster/upgrades/pre/verify_upgrade_targets.yml @@ -14,24 +14,26 @@  - 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 +    repoquery: +      name: "{{ openshift.common.service_type }}" +      ignore_excluders: true +    register: repoquery_out    - name: Fail when unable to determine available OpenShift RPM version      fail:        msg: "Unable to determine available OpenShift RPM version"      when: -    - avail_openshift_version.stdout == '' +    - not repoquery_out.results.package_found + +  - name: Set fact avail_openshift_version +    set_fact: +      avail_openshift_version: "{{ repoquery_out.results.versions.available_versions.0 }}"    - 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" +      msg: "OpenShift {{ avail_openshift_version }} 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, '<') +    - avail_openshift_version | default('0.0', True) | version_compare(openshift_release, '<')  - name: Fail when openshift version does not meet minium requirement for Origin upgrade    fail: diff --git a/playbooks/common/openshift-cluster/upgrades/upgrade_control_plane.yml b/playbooks/common/openshift-cluster/upgrades/upgrade_control_plane.yml index e10c4c540..b980909eb 100644 --- a/playbooks/common/openshift-cluster/upgrades/upgrade_control_plane.yml +++ b/playbooks/common/openshift-cluster/upgrades/upgrade_control_plane.yml @@ -247,8 +247,8 @@    hosts: oo_masters_to_config:&oo_nodes_to_upgrade    # This var must be set with -e on invocation, as it is not a per-host inventory var    # and is evaluated early. Values such as "20%" can also be used. -  serial: "{{ openshift_upgrade_nodes_serial | default(1) }}" -  any_errors_fatal: true +  serial: "{{ openshift_upgrade_control_plane_nodes_serial | default(1) }}" +  max_fail_percentage: "{{ openshift_upgrade_control_plane_nodes_max_fail_percentage | default(0) }}"    pre_tasks:    - name: Load lib_openshift modules diff --git a/playbooks/common/openshift-cluster/upgrades/upgrade_nodes.yml b/playbooks/common/openshift-cluster/upgrades/upgrade_nodes.yml index 4d455fe0a..91dbc2cd4 100644 --- a/playbooks/common/openshift-cluster/upgrades/upgrade_nodes.yml +++ b/playbooks/common/openshift-cluster/upgrades/upgrade_nodes.yml @@ -4,7 +4,7 @@    # This var must be set with -e on invocation, as it is not a per-host inventory var    # and is evaluated early. Values such as "20%" can also be used.    serial: "{{ openshift_upgrade_nodes_serial | default(1) }}" -  any_errors_fatal: true +  max_fail_percentage: "{{ openshift_upgrade_nodes_max_fail_percentage | default(0) }}"    pre_tasks:    - name: Load lib_openshift modules 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 new file mode 100644 index 000000000..ed89dbe8d --- /dev/null +++ b/playbooks/common/openshift-cluster/upgrades/v3_5/master_config_upgrade.yml @@ -0,0 +1,16 @@ +--- +- modify_yaml: +    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" +    yaml_key: 'admissionConfig.pluginConfig' +    yaml_value: "{{ openshift.master.admission_plugin_config }}" +  when: "'admission_plugin_config' in openshift.master" + +- modify_yaml: +    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" +    yaml_key: 'admissionConfig.pluginOrderOverride' +    yaml_value: + +- modify_yaml: +    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" +    yaml_key: 'kubernetesMasterConfig.admissionConfig' +    yaml_value: diff --git a/playbooks/common/openshift-cluster/upgrades/v3_5/upgrade_control_plane.yml b/playbooks/common/openshift-cluster/upgrades/v3_5/upgrade_control_plane.yml index 21e1d440d..74c2964aa 100644 --- a/playbooks/common/openshift-cluster/upgrades/v3_5/upgrade_control_plane.yml +++ b/playbooks/common/openshift-cluster/upgrades/v3_5/upgrade_control_plane.yml @@ -115,6 +115,8 @@    - include: ../cleanup_unused_images.yml  - include: ../upgrade_control_plane.yml +  vars: +    master_config_hook: "v3_5/master_config_upgrade.yml"  - include: ../post_control_plane.yml 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 new file mode 100644 index 000000000..ed89dbe8d --- /dev/null +++ b/playbooks/common/openshift-cluster/upgrades/v3_6/master_config_upgrade.yml @@ -0,0 +1,16 @@ +--- +- modify_yaml: +    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" +    yaml_key: 'admissionConfig.pluginConfig' +    yaml_value: "{{ openshift.master.admission_plugin_config }}" +  when: "'admission_plugin_config' in openshift.master" + +- modify_yaml: +    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" +    yaml_key: 'admissionConfig.pluginOrderOverride' +    yaml_value: + +- modify_yaml: +    dest: "{{ openshift.common.config_base}}/master/master-config.yaml" +    yaml_key: 'kubernetesMasterConfig.admissionConfig' +    yaml_value: diff --git a/playbooks/common/openshift-cluster/upgrades/v3_6/upgrade_control_plane.yml b/playbooks/common/openshift-cluster/upgrades/v3_6/upgrade_control_plane.yml index e34259b00..a66fb51ff 100644 --- a/playbooks/common/openshift-cluster/upgrades/v3_6/upgrade_control_plane.yml +++ b/playbooks/common/openshift-cluster/upgrades/v3_6/upgrade_control_plane.yml @@ -115,6 +115,8 @@    - include: ../cleanup_unused_images.yml  - include: ../upgrade_control_plane.yml +  vars: +    master_config_hook: "v3_6/master_config_upgrade.yml"  - include: ../post_control_plane.yml diff --git a/playbooks/common/openshift-master/config.yml b/playbooks/common/openshift-master/config.yml index 60cf56108..ddc4db8f8 100644 --- a/playbooks/common/openshift-master/config.yml +++ b/playbooks/common/openshift-master/config.yml @@ -117,6 +117,7 @@                                       | oo_collect('openshift.common.hostname')                                       | default(none, true) }}"      openshift_master_hosts: "{{ groups.oo_masters_to_config }}" +    r_etcd_common_etcd_runtime: "{{ openshift.common.etcd_runtime }}"      etcd_ca_host: "{{ groups.oo_etcd_to_config.0 }}"      etcd_cert_subdir: "openshift-master-{{ openshift.common.hostname }}"      etcd_cert_config_dir: "{{ openshift.common.config_base }}/master" diff --git a/playbooks/common/openshift-node/config.yml b/playbooks/common/openshift-node/config.yml index 792ffb4e2..acebabc91 100644 --- a/playbooks/common/openshift-node/config.yml +++ b/playbooks/common/openshift-node/config.yml @@ -32,7 +32,7 @@        ansible_ssh_user: "{{ g_ssh_user | default(omit) }}"        ansible_become: "{{ g_sudo | default(omit) }}"      with_items: "{{ groups.oo_nodes_to_config | default([]) }}" -    when: hostvars[item].openshift.common is defined and hostvars[item].openshift.common.is_containerized | bool and (item in groups.oo_nodes_to_config and item in groups.oo_masters_to_config) +    when: hostvars[item].openshift is defined and hostvars[item].openshift.common is defined and hostvars[item].openshift.common.is_containerized | bool and (item in groups.oo_nodes_to_config and item in groups.oo_masters_to_config)      changed_when: False  - name: Configure containerized nodes diff --git a/playbooks/libvirt/openshift-cluster/config.yml b/playbooks/libvirt/openshift-cluster/config.yml index f782d6dab..477213f4e 100644 --- a/playbooks/libvirt/openshift-cluster/config.yml +++ b/playbooks/libvirt/openshift-cluster/config.yml @@ -3,6 +3,8 @@  # is localhost, so no hostname value (or public_hostname) value is getting  # assigned +- include: ../../common/openshift-cluster/std_include.yml +  - hosts: localhost    gather_facts: no    tasks:  | 
