From 32720deca84147362da665a63690bf39bfc51a6f Mon Sep 17 00:00:00 2001 From: Cian Hatton Date: Thu, 25 Aug 2022 21:52:06 +0100 Subject: [PATCH] wait for ssh to be available --- roles/setup_linode/defaults/main.yml | 7 ++++++- roles/setup_linode/tasks/main.yml | 13 ++++++++++--- roles/setup_linode/templates/hosts.j2 | 4 +++- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/roles/setup_linode/defaults/main.yml b/roles/setup_linode/defaults/main.yml index 16db72e..ea79b65 100644 --- a/roles/setup_linode/defaults/main.yml +++ b/roles/setup_linode/defaults/main.yml @@ -1,5 +1,10 @@ --- # defaults file for setup_linode ssh_keys: - - /Users/chatton/.ssh/id_rsa.pub + - "{{ lookup('file', '~/.ssh/id_rsa.pub') }}" label: simple-linode + +# hosts that are added to the generated .ini file. +hosts: +- user: root + ip: "{{my_linode.instance.ipv4[0]}}" diff --git a/roles/setup_linode/tasks/main.yml b/roles/setup_linode/tasks/main.yml index d3999e0..a6c6623 100644 --- a/roles/setup_linode/tasks/main.yml +++ b/roles/setup_linode/tasks/main.yml @@ -15,14 +15,21 @@ state: present register: my_linode + +- name: Wait for SSH to come up + local_action: + module: wait_for + host={{ my_linode.instance.ipv4[0] }} + port=22 + search_regex=OpenSSH + timeout=320 + - name: Instance Details debug: msg: "{{my_linode}}" - name: Template Hosts File - vars: - linode_user: root - linode_ip: "{{my_linode.instance.ipv4[0]}}" template: src: hosts.j2 dest: linodehosts.ini + diff --git a/roles/setup_linode/templates/hosts.j2 b/roles/setup_linode/templates/hosts.j2 index 1db7e55..1b21cd0 100644 --- a/roles/setup_linode/templates/hosts.j2 +++ b/roles/setup_linode/templates/hosts.j2 @@ -1,2 +1,4 @@ [servers] -{{linode_user}}@{{linode_ip}} +{% for host in hosts %} +{{host.user}}@{{host.ip}} +{% endfor %}