4 - name: Copy all files to undercloud
6 src: "{{ apex_temp_dir }}/{{ item }}"
7 dest: "/home/stack/{{ item }}"
12 - network-environment.yaml
14 - overcloud-full.qcow2
16 - virtual-environment.yaml
17 - baremetal-environment.yaml
18 - "{{ apex_env_file }}"
19 - name: Copy network data to undercloud
21 src: "{{ apex_temp_dir }}/network_data.yaml"
22 dest: "/home/stack/network_data.yaml"
26 when: os_version != 'ocata'
28 src: "{{ apex_temp_dir }}/storage-environment.yaml"
29 dest: /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml
34 src: "{{ apex_temp_dir }}/neutron-opendaylight-sriov.yaml"
35 dest: /usr/share/openstack-tripleo-heat-templates/environments/neutron-opendaylight-sriov.yaml
40 name: openstack-swift-proxy
44 - name: Workaround to downgrade pacemaker (LP#1770692)
46 - name: Pull haproxy container
47 shell: docker pull {{ undercloud_ip }}:8787/tripleo{{ os_version }}/centos-binary-haproxy:current-tripleo-rdo
48 - name: Find container pacemaker version
49 shell: docker run {{ undercloud_ip }}:8787/tripleo{{ os_version }}/centos-binary-haproxy:current-tripleo-rdo /bin/rpm -q pacemaker
51 - name: Create centos74 repo (contains older pacemaker)
53 dest: /tmp/centos74.repo
56 name=CentOS-74 - Updates
57 baseurl=http://mirror.centos.org/centos/7.4.1708/updates/$basearch/
59 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
62 - name: Install container pacemaker version to overcloud image
64 LIBGUESTFS_BACKEND=direct virt-customize -a /home/stack/overcloud-full.qcow2
65 --upload /tmp/centos74.repo:/etc/yum.repos.d/
66 --run-command "yum remove -y pacemaker-cluster-libs pacemaker-libs pacemaker pacemaker-cli"
67 --run-command "yum install -y {{ pcs_version.stdout }}" -v
71 - name: Remove Ceph OSD from ceph storage role
73 path: /usr/share/openstack-tripleo-heat-templates/roles_data.yaml
74 line: ' - OS::TripleO::Services::CephOSD'
79 - name: Insert Ceph OSDs into Compute role
81 path: /usr/share/openstack-tripleo-heat-templates/roles_data.yaml
82 insertbefore: '^\s*-\sOS::TripleO::Services::NovaCompute$'
83 line: ' - OS::TripleO::Services::CephOSD'
87 - name: Upload glance images
88 shell: "{{ stackrc }} && openstack overcloud image upload"
91 - name: Import inventory (baremetal)
92 shell: "{{ stackrc }} && openstack overcloud node import instackenv.json"
94 - name: Introspect inventory (baremetal)
95 shell: "{{ stackrc }} && openstack overcloud node introspect --all-manageable --provide"
97 - name: Import inventory (virtual)
98 shell: "{{ stackrc }} && openstack overcloud node import --provide instackenv.json"
101 shell: '{{ stackrc }} && openstack flavor set --property "cpu_arch"="{{ ansible_architecture }}" {{ item }}'
106 - name: Configure DNS server for ctlplane network
107 shell: "{{ stackrc }} && openstack subnet set ctlplane-subnet {{ dns_server_args }}"
109 - name: Execute Overcloud Deployment
110 shell: "{{ stackrc }} && bash deploy_command"
113 - name: Show overcloud failures
114 shell: "{{ stackrc }} && openstack stack failures list overcloud --long"
117 - name: Show Keystone output
118 shell: "{{ overcloudrc }} && {{ item }}"
121 - openstack endpoint list
122 - openstack service list
123 - name: Get overcloud nodes and IPs
124 shell: "{{ stackrc }} && openstack server list -f json"
126 - name: Write nova list output to file
127 local_action: copy content="{{ nova_list.stdout }}" dest="{{ apex_temp_dir }}/nova_output"
128 - name: Fetch overcloudrc
130 src: /home/stack/overcloudrc
131 dest: "{{ apex_temp_dir }}/"