From 06366ee5e6e60734cc416638e488285a9a003789 Mon Sep 17 00:00:00 2001 From: MichaelFisher1997 Date: Wed, 22 Apr 2026 03:40:55 +0000 Subject: [PATCH] fix: accept cloud-init exit code 2 after first boot Ubuntu cloud-init returns exit code 2 for some completed boots even when the status output is 'done'. Treat that as a successful wait state so Ansible can continue into the package install phase instead of aborting early. --- ansible/roles/common/tasks/main.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ansible/roles/common/tasks/main.yml b/ansible/roles/common/tasks/main.yml index 1129edc..4811500 100644 --- a/ansible/roles/common/tasks/main.yml +++ b/ansible/roles/common/tasks/main.yml @@ -7,7 +7,14 @@ - name: Wait for cloud-init to finish first-boot tasks command: cloud-init status --wait + register: cloud_init_wait changed_when: false + failed_when: >- + cloud_init_wait.rc not in [0, 2] or + ( + 'status: done' not in cloud_init_wait.stdout and + 'status: disabled' not in cloud_init_wait.stdout + ) when: cloud_init_binary.rc == 0 - name: Update apt cache