summaryrefslogtreecommitdiffstats
path: root/playbooks/openstack/openshift-cluster/tasks/configure_openstack.yml
blob: 2cbdb4805f3e7f89831e49d616d54d583b14a738 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
---
- name: Check infra
  command: 'heat stack-show {{ openstack_network_prefix }}-stack'
  register: stack_show_result
  changed_when: false
  failed_when: stack_show_result.rc != 0 and 'Stack not found' not in stack_show_result.stderr

- name: Create infra
  command: 'heat stack-create -f {{ openstack_infra_heat_stack }} -P cluster-id={{ cluster_id }} -P network-prefix={{ openstack_network_prefix }} -P dns-nameservers={{ openstack_network_dns | join(",") }} -P cidr={{ openstack_network_cidr }} -P ssh-incoming={{ openstack_ssh_access_from }} {{ openstack_network_prefix }}-stack'
  when: stack_show_result.rc == 1

- name: Update infra
  command: 'heat stack-update -f {{ openstack_infra_heat_stack }} -P cluster-id={{ cluster_id }} -P network-prefix={{ openstack_network_prefix }} -P dns-nameservers={{ openstack_network_dns | join(",") }} -P cidr={{ openstack_network_cidr }} -P ssh-incoming={{ openstack_ssh_access_from }} {{ openstack_network_prefix }}-stack'
  when: stack_show_result.rc == 0

- name: Wait for infra readiness
  shell: 'heat stack-show {{ openstack_network_prefix }}-stack | awk ''$2 == "stack_status" {print $4}'''
  register: stack_show_status_result
  until: stack_show_status_result.stdout not in ['CREATE_IN_PROGRESS', 'UPDATE_IN_PROGRESS']
  retries: 30
  delay: 1
  failed_when: stack_show_status_result.stdout not in ['CREATE_COMPLETE', 'UPDATE_COMPLETE']

- name: Create ssh keypair
  nova_keypair:
    name: "{{ openstack_ssh_keypair }}"
    public_key: "{{ openstack_ssh_public_key }}"