1f4ef0e86e
* Reorder tests in packet file (#6067)
* Skip molecule tests for Ubuntu 18.04 (#6077)
* Fix kubernetes-dashboard template identation (#6066)
The 98e7a07fba
commit udpates the
dashboard version to 2.0.0 but it enable skip login flag wasn't
updated. This change updates its identation to avoid issues when
dashboard_skip_login is enabled.
* Disable OVH CI (#6114)
* Create namespace when dashboard deployment uses customized namespace. (#6107)
* Create namespace when dashboard deployment uses customized namespace.
* Fix syntax.
* Fix apiserver port when upgrading (#6136)
* Fix docker fedora packages (#6097)
* Match docker-cli version with docker-engine version (when available)
* Disable upgrade jobs to allow release 2.13.1 (docker-cli bug)
Co-authored-by: Maxime Guyot <Miouge1@users.noreply.github.com>
Co-authored-by: Victor Morales <electrocucaracha@gmail.com>
Co-authored-by: petruha <5363545+p37ruh4@users.noreply.github.com>
Co-authored-by: Mateus Caruccio <mateus.caruccio@getupcloud.com>
77 lines
2.5 KiB
YAML
77 lines
2.5 KiB
YAML
---
|
|
- name: kubeadm | Check api is up
|
|
uri:
|
|
url: "https://{{ ip | default(fallback_ips[inventory_hostname]) }}:{{ kube_apiserver_port }}/healthz"
|
|
validate_certs: false
|
|
when: inventory_hostname == groups['kube-master']|first
|
|
register: _result
|
|
retries: 60
|
|
delay: 5
|
|
until: _result.status == 200
|
|
|
|
- name: kubeadm | Upgrade first master
|
|
command: >-
|
|
timeout -k 600s 600s
|
|
{{ bin_dir }}/kubeadm
|
|
upgrade apply -y {{ kube_version }}
|
|
--config={{ kube_config_dir }}/kubeadm-config.yaml
|
|
--ignore-preflight-errors=all
|
|
--allow-experimental-upgrades
|
|
--allow-release-candidate-upgrades
|
|
--etcd-upgrade=false
|
|
{{ (kubeadm_output.stdout is version('v1.16.0', '>=')) | ternary('--certificate-renewal=true', '') }}
|
|
--force
|
|
register: kubeadm_upgrade
|
|
# Retry is because upload config sometimes fails
|
|
retries: 3
|
|
until: kubeadm_upgrade.rc == 0
|
|
when: inventory_hostname == groups['kube-master']|first
|
|
failed_when: kubeadm_upgrade.rc != 0 and "field is immutable" not in kubeadm_upgrade.stderr
|
|
notify: Master | restart kubelet
|
|
|
|
# FIXME: https://github.com/kubernetes/kubeadm/issues/1498 remove stdout_lines
|
|
# check after issue is fixed
|
|
- name: kubeadm | Upgrade other masters
|
|
command: >-
|
|
timeout -k 600s 600s
|
|
{{ bin_dir }}/kubeadm
|
|
upgrade apply -y {{ kube_version }}
|
|
--config={{ kube_config_dir }}/kubeadm-config.yaml
|
|
--ignore-preflight-errors=all
|
|
--allow-experimental-upgrades
|
|
--allow-release-candidate-upgrades
|
|
--etcd-upgrade=false
|
|
{{ (kubeadm_output.stdout is version('v1.16.0', '>=')) | ternary('--certificate-renewal=true', '') }}
|
|
--force
|
|
register: kubeadm_upgrade
|
|
when: inventory_hostname != groups['kube-master']|first
|
|
failed_when:
|
|
- kubeadm_upgrade.rc != 0
|
|
- '"field is immutable" not in kubeadm_upgrade.stderr'
|
|
- kubeadm_upgrade.stdout_lines | length > 1
|
|
notify: Master | restart kubelet
|
|
|
|
- name: kubeadm | clean kubectl cache to refresh api types
|
|
file:
|
|
path: "{{ item }}"
|
|
state: absent
|
|
with_items:
|
|
- /root/.kube/cache
|
|
- /root/.kube/http-cache
|
|
|
|
# FIXME: https://github.com/kubernetes/kubeadm/issues/1318
|
|
- name: kubeadm | scale down coredns replicas to 0 if not using coredns dns_mode
|
|
command: >-
|
|
{{ bin_dir }}/kubectl
|
|
--kubeconfig /etc/kubernetes/admin.conf
|
|
-n kube-system
|
|
scale deployment/coredns --replicas 0
|
|
register: scale_down_coredns
|
|
retries: 6
|
|
delay: 5
|
|
until: scale_down_coredns is succeeded
|
|
run_once: yes
|
|
when:
|
|
- kubeadm_scale_down_coredns_enabled
|
|
- dns_mode not in ['coredns', 'coredns_dual']
|
|
changed_when: false
|