diff --git a/playbooks/groups/twistedbots.yml b/playbooks/groups/twistedbots.yml index d4f2900743..685a729dfa 100644 --- a/playbooks/groups/twistedbots.yml +++ b/playbooks/groups/twistedbots.yml @@ -8,7 +8,7 @@ - ${private}/vars.yml tasks: - - include: $tasks/persistent_cloud.yml + - include: $tasks/persistent_cloud_nodisks.yml - name: provision instance hosts: twistedbots diff --git a/tasks/persistent_cloud_nodisks.yml b/tasks/persistent_cloud_nodisks.yml new file mode 100644 index 0000000000..1ee6740efd --- /dev/null +++ b/tasks/persistent_cloud_nodisks.yml @@ -0,0 +1,19 @@ +--- +- name: check it out + local_action: shell nc -d -z -w 5 ${inventory_hostname} 22 >>/dev/null + register: host_is_up + ignore_errors: true + +- name: spin it up + local_action: ec2_create keypair=${keypair} image=${image} type=${instance_type} wait=true group=${security_group} + register: inst_res + only_if: "'${host_is_up.rc}' != '0'" + +- name: assign it a special ip + local_action: shell euca-associate-address -i ${inst_res.instances[0].id} ${public_ip} + only_if: "'${host_is_up.rc}' != '0'" + +- name: wait for the reassignation + local_action: wait_for host=${public_ip} port=22 delay=20 timeout=300 + only_if: "'${host_is_up.rc}' != '0'" +