browbeat/ansible/install/roles/workloads/tasks/main.yml

43 lines
1.7 KiB
YAML

---
- name: Check browbeat_network
fail: msg="browbeat_network needs to be set"
when: browbeat_network is not defined or browbeat_network is none
- name: Copy userdata files
template:
src: "{{ browbeat_workloads[item].src }}"
dest: "{{ browbeat_workloads[item].dest }}"
with_items: "{{ browbeat_workloads }}"
- name: Build images
shell: source {{ overcloudrc }} ; openstack server create --wait --flavor m1.small --image {{ browbeat_workloads[item].image }} --nic net-id={{ browbeat_network }} --user-data {{ browbeat_workloads[item].dest }} {{ browbeat_workloads[item].name }} | egrep '\sid\s' | awk '{print $4}'
register: workload_ids
with_items: "{{ browbeat_workloads }}"
- name: Check status of images
shell: source {{ overcloudrc }} ; nova console-log {{ item.stdout }}
register: guest_output
until: guest_output.stdout.find("Browbeat workload installed") != -1
retries: 30
with_items: "{{ workload_ids.results }}"
- name: Clean up glance
shell: source {{ overcloudrc }} ; openstack image delete {{ browbeat_workloads[item].name }}
with_items: "{{ browbeat_workloads }}"
ignore_errors: true
- name: Copy prepared workload guest into Glance
shell: source {{ overcloudrc }} ; openstack server image create --wait --name {{ browbeat_workloads[item].name }} {{ browbeat_workloads[item].name }}
with_items: "{{ browbeat_workloads }}"
- name: Update visibility
shell: source {{ overcloudrc }} ; openstack image set {{ browbeat_workloads[item].name }} --public
with_items: "{{ browbeat_workloads }}"
- name: Delete workload guests after copying
shell: |
. {{ overcloudrc }}
openstack server delete {{browbeat_workloads[item].name}}
with_items: "{{browbeat_workloads}}"