main.yml 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. ---
  2. - name: create HOT stack template prefix
  3. register: stack_template_pre
  4. tempfile:
  5. state: directory
  6. prefix: casl-ansible
  7. - name: set template paths
  8. set_fact:
  9. stack_template_path: "{{ stack_template_pre.path }}/stack.yaml"
  10. server_template_path: "{{ stack_template_pre.path }}/server.yaml"
  11. user_data_template_path: "{{ stack_template_pre.path }}/user-data"
  12. - name: generate HOT stack template from jinja2 template
  13. template:
  14. src: heat_stack.yaml.j2
  15. dest: "{{ stack_template_path }}"
  16. - name: generate HOT server template from jinja2 template
  17. template:
  18. src: heat_stack_server.yaml.j2
  19. dest: "{{ server_template_path }}"
  20. - name: generate user_data from jinja2 template
  21. template:
  22. src: user_data.j2
  23. dest: "{{ user_data_template_path }}"
  24. - name: create stack
  25. ignore_errors: False
  26. register: stack_create
  27. os_stack:
  28. name: "{{ stack_name }}"
  29. state: present
  30. template: "{{ stack_template_path }}"
  31. wait: yes
  32. # NOTE(bogdando) OS::Neutron::Subnet doesn't support live updates for
  33. # dns_nameservers, so we can't do that for the "create stack" task.
  34. - include: subnet_update_dns_servers.yaml
  35. when: private_dns_server is defined
  36. - name: cleanup temp files
  37. file:
  38. path: "{{ stack_template_pre.path }}"
  39. state: absent