47 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
- name: Upgrade from 1.26 to 1.27
 | 
						|
  hosts: root_master
 | 
						|
  become: yes
 | 
						|
  become_method: sudo
 | 
						|
  become_user: root
 | 
						|
  tasks:
 | 
						|
  - name: Check if keyring exists
 | 
						|
    stat:
 | 
						|
      path: /etc/apt/keyrings/kubernetes-apt-keyring{{ K8S_TARGET_VERSION}}.gpg
 | 
						|
    register: keyring_file
 | 
						|
  - name: Install certificate
 | 
						|
    command: "{{ item }} chdir=/tmp"
 | 
						|
    with_items:
 | 
						|
      - "curl -o Release.key -fsSL https://pkgs.k8s.io/core:/stable:/{{ K8S_TARGET_VERSION }}/deb/Release.key"
 | 
						|
      - "gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring{{ K8S_TARGET_VERSION }}.gpg Release.key"
 | 
						|
      - "rm Release.key"
 | 
						|
    when: not keyring_file.stat.exists
 | 
						|
  - name: Check if apt repo exists
 | 
						|
    stat:
 | 
						|
      path: /etc/apt/sources.list.d/kubernetes_{{ K8S_TARGET_VERSION}}.list
 | 
						|
    register: apt_repo
 | 
						|
  - name: Setup APT repo
 | 
						|
    copy:
 | 
						|
      dest: /etc/apt/sources.list.d/kubernetes_{{ K8S_TARGET_VERSION}}.list
 | 
						|
      content: "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring{{ K8S_TARGET_VERSION}}.gpg] https://pkgs.k8s.io/core:/stable:/{{ K8S_TARGET_VERSION }}/deb/ /"
 | 
						|
    when: not apt_repo.stat.exists
 | 
						|
  - name: Update cache
 | 
						|
    apt:
 | 
						|
      update_cache: yes
 | 
						|
  - name: Unhold packages
 | 
						|
    dpkg_selections:
 | 
						|
      name: "{{ item }}"
 | 
						|
      selection: install
 | 
						|
    with_items:
 | 
						|
      - "kubelet"
 | 
						|
      - "kubeadm"
 | 
						|
  - name: Upgrading packages
 | 
						|
    apt:
 | 
						|
      upgrade: yes
 | 
						|
  - name: Upgrade plan
 | 
						|
    shell: "kubeadm upgrade plan >> /etc/kubernetes/upgrade_plan_{{ K8S_SOURCE_VERSION}}_{{ K8S_TARGET_VERSION}}"
 | 
						|
    args:
 | 
						|
      creates: /etc/kubernetes/upgrade_plan_{{ K8S_SOURCE_VERSION}}_{{ K8S_TARGET_VERSION}}
 | 
						|
  - name: Apply upgrade plan
 | 
						|
    shell: "sudo kubeadm upgrade apply v1.27.13 >> /etc/kubernetes/upgrade_ops_{{ K8S_SOURCE_VERSION}}_{{ K8S_TARGET_VERSION}}"
 | 
						|
    args:
 | 
						|
      creates: /etc/kubernetes/upgrade_ops_{{ K8S_SOURCE_VERSION}}_{{ K8S_TARGET_VERSION}} |