4 - name: Generate SSH key for stack if missing
5 shell: test -e ~/.ssh/id_rsa || ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa
6 - name: Fix ssh key for stack
7 shell: restorecon -r /home/stack
10 path: /home/stack/nics
16 src: /root/.ssh/id_rsa.pub
17 dest: /home/stack/jumphost_id_rsa.pub
22 src: "{{ apex_temp_dir }}/{{ item }}.yaml"
23 dest: "/home/stack/nics/{{ item }}.yaml"
32 regexp: 'Defaults\s*requiretty'
35 - name: openstack-configs undercloud
36 shell: openstack-config --set undercloud.conf DEFAULT {{ item }}
37 with_items: "{{ undercloud_config }}"
38 - name: openstack-configs ironic
39 shell: openstack-config --set /etc/ironic/ironic.conf {{ item }}
41 with_items: "{{ ironic_config }}"
42 - name: openstack-configs undercloud aarch64
43 shell: openstack-config --set undercloud.conf DEFAULT ipxe_enabled false
46 path: /usr/lib/python2.7/site-packages/ironic/common/pxe_utils.py
47 regexp: '_link_ip_address_pxe_configs'
48 line: ' _link_mac_pxe_configs(task)'
51 - name: undercloud install
52 shell: openstack undercloud install &> apex-undercloud-install.log
56 - name: undercloud install retry
57 shell: openstack undercloud install >> apex-undercloud-install.log 2>&1
61 - name: fetch undercloud log
63 src: /home/stack/apex-undercloud-install.log
64 dest: "{{ apex_temp_dir }}/"
66 - name: openstack-configs nova
67 shell: openstack-config --set /etc/nova/nova.conf DEFAULT {{ item }}
69 with_items: "{{ nova_config }}"
70 - name: restart nova services
76 - openstack-nova-conductor
77 - openstack-nova-compute
79 - openstack-nova-scheduler
80 - name: openstack-configs neutron
81 shell: openstack-config --set /etc/neutron/neutron.conf DEFAULT {{ item }}
83 with_items: "{{ neutron_config }}"
84 - name: restart neutron services
92 - name: configure external network vlan ifcfg
94 src: external_vlan_ifcfg.yml.j2
95 dest: "/etc/sysconfig/network-scripts/ifcfg-vlan{{ external_network.vlan }}"
101 - external_network.vlan != "native"
102 - external_network.enabled
103 - name: bring up vlan ifcfg
104 shell: "ifup vlan{{ external_network.vlan }}"
107 - external_network.vlan != "native"
108 - external_network.enabled
109 - name: assign IP to native eth2
110 shell: ip a a {{ external_network.ip }}/{{ external_network.prefix }} dev eth2
113 - external_network.vlan == "native"
114 - external_network.enabled
116 - name: bring up eth2
117 shell: ip link set up dev eth2
119 - external_network.vlan == "native"
120 - external_network.enabled
123 - name: assign IP to native eth0 if aarch64
124 shell: ip a a {{ external_network.ip }}/{{ external_network.prefix }} dev eth0
127 - external_network.vlan == "native"
128 - external_network.enabled
130 - name: bring up eth0 if aarch64
131 shell: ip link set up dev eth0
133 - external_network.vlan == "native"
134 - external_network.enabled
137 - name: fetch storage environment file
139 src: /usr/share/openstack-tripleo-heat-templates/environments/storage-environment.yaml
140 dest: "{{ apex_temp_dir }}/"
143 - include: undercloud_aarch64.yml