fix: wait for cloud-init before package install during bootstrap
Fresh Ubuntu cloud-init clones still hold apt and dpkg locks during first boot, which caused the Ansible common role to fail before the control plane could finish bootstrap. Wait for cloud-init, increase apt lock timeouts, and skip the final kubeconfig rewrite when no kubeconfig was fetched yet.
This commit is contained in:
@@ -1,12 +1,25 @@
|
||||
---
|
||||
- name: Check if cloud-init is installed
|
||||
command: which cloud-init
|
||||
register: cloud_init_binary
|
||||
changed_when: false
|
||||
failed_when: false
|
||||
|
||||
- name: Wait for cloud-init to finish first-boot tasks
|
||||
command: cloud-init status --wait
|
||||
changed_when: false
|
||||
when: cloud_init_binary.rc == 0
|
||||
|
||||
- name: Update apt cache
|
||||
apt:
|
||||
update_cache: true
|
||||
cache_valid_time: 3600
|
||||
lock_timeout: 600
|
||||
|
||||
- name: Upgrade packages
|
||||
apt:
|
||||
upgrade: dist
|
||||
lock_timeout: 600
|
||||
when: common_upgrade_packages | default(false)
|
||||
|
||||
- name: Install required packages
|
||||
@@ -23,6 +36,7 @@
|
||||
- htop
|
||||
- vim
|
||||
state: present
|
||||
lock_timeout: 600
|
||||
|
||||
- name: Disable swap
|
||||
command: swapoff -a
|
||||
|
||||
Reference in New Issue
Block a user