diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2023-08-10 17:50:50 +0200 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2023-08-10 19:30:13 +0200 |
commit | a86d828553d4d724d4ad3ca5335711b6bb1c0eb5 (patch) | |
tree | db7b9ae3803aec2f871c8ead356b9091a581c014 /roles/cloud_init_wait | |
parent | cloud_init_wait: tolerate reboots (diff) | |
download | infra-ansible-a86d828553d4d724d4ad3ca5335711b6bb1c0eb5.tar.gz infra-ansible-a86d828553d4d724d4ad3ca5335711b6bb1c0eb5.zip |
cloud_init_wait: factor out to file_wait
Diffstat (limited to 'roles/cloud_init_wait')
-rw-r--r-- | roles/cloud_init_wait/defaults/main.yml | 1 | ||||
-rw-r--r-- | roles/cloud_init_wait/tasks/check.yml | 23 | ||||
-rw-r--r-- | roles/cloud_init_wait/tasks/main.yml | 10 |
3 files changed, 5 insertions, 29 deletions
diff --git a/roles/cloud_init_wait/defaults/main.yml b/roles/cloud_init_wait/defaults/main.yml index e5971c9..b857f1d 100644 --- a/roles/cloud_init_wait/defaults/main.yml +++ b/roles/cloud_init_wait/defaults/main.yml @@ -1,3 +1,2 @@ cloud_init_wait_path: /var/lib/cloud/instance/boot-finished cloud_init_wait_seconds: 300 -cloud_init_wait_delay: 10 diff --git a/roles/cloud_init_wait/tasks/check.yml b/roles/cloud_init_wait/tasks/check.yml deleted file mode 100644 index 2dc20aa..0000000 --- a/roles/cloud_init_wait/tasks/check.yml +++ /dev/null @@ -1,23 +0,0 @@ -# Make a playbook usable immediately after creating a VM - even before -# the SSH server is started. -- name: Wait for SSH connection - ansible.builtin.wait_for_connection: - timeout: '{{ cloud_init_wait_seconds }}' - -# Again, make a playbook usable immediately after creating a VM - that includes -# waiting until cloud-init is done. -- name: Wait until cloud-init is finished - ansible.builtin.file: - path: '{{ cloud_init_wait_path }}' - state: file - register: boot_finished - until: boot_finished is succeeded - # About 5 minutes worth of attempts. - retries: '{{ cloud_init_wait_seconds // cloud_init_wait_delay }}' - delay: '{{ cloud_init_wait_delay }}' - ignore_unreachable: true - ignore_errors: true - -- ansible.builtin.include_tasks: check.yml - when: - - boot_finished is unreachable diff --git a/roles/cloud_init_wait/tasks/main.yml b/roles/cloud_init_wait/tasks/main.yml index dec4162..22c258d 100644 --- a/roles/cloud_init_wait/tasks/main.yml +++ b/roles/cloud_init_wait/tasks/main.yml @@ -1,5 +1,5 @@ -- ansible.builtin.include_tasks: check.yml - -- ansible.builtin.fail: - msg: Failed to wait until cloud-init is done - when: boot_finished is not defined or boot_finished is not succeeded +- ansible.builtin.include_role: + name: file_wait + vars: + file_wait_path: '{{ cloud_init_wait_path }}' + file_wait_seconds: '{{ cloud_init_wait_seconds }}' |