4 - name: Enable ssh to overcloud nodes from jumphost
5 shell: "cat /home/stack/jumphost_id_rsa.pub | ssh -T {{ SSH_OPTIONS }} heat-admin@{{ item.value }} 'cat >> ~/.ssh/authorized_keys'"
6 with_dict: "{{ overcloud_nodes }}"
9 - name: Configure external network
10 shell: "{{ overcloudrc }} && {{ item }}"
11 with_items: "{{ external_network_cmds }}"
12 when: vim == 'openstack'
13 - name: Configure gluon networks
14 shell: "{{ overcloudrc }} && {{ item }}"
17 - openstack network create gluon-network --share --provider-network-type vxlan
18 - openstack subnet create gluon-subnet --no-gateway --no-dhcp --network GluonNetwork --subnet-range 0.0.0.0/1
19 - name: Find admin project id
20 shell: "{{ overcloudrc }} && openstack project list | grep admin | awk '{print $2}'"
21 register: os_project_id
22 - name: Ensure rc files owned by stack
24 path: "/home/stack/{{ item }}"
30 with_items: "{{ overcloudrc_files }}"
31 - name: Inject OS_PROJECT_ID and OS_TENANT_NAME into overcloudrc
34 path: /home/stack/overcloudrc
38 - "export OS_PROJECT_ID={{ os_project_id.stdout }}"
39 - "export OS_TENANT_NAME=admin"
40 - name: Install Docker
44 when: yardstick or dovetail
50 when: yardstick or dovetail
52 - name: Pull yardstick docker image
57 - name: Pull dovetail docker image
62 - name: Register SDN VIP
63 shell: "{{ stackrc }} && neutron port-list | grep control_virtual_ip | grep -Eo '([0-9]+\\.){3}[0-9]+'"
68 - name: Write SDN controller VIP to overcloudrc
70 line: "export SDN_CONTROLLER_IP={{ sdn_vip.stdout }}"
71 regexp: 'SDN_CONTROLLER_IP'
72 path: "/home/stack/{{ item }}"
76 with_items: "{{ overcloudrc_files }}"
77 - name: Write SDN WEB and REST PORT to overcloudrc
79 line: "export {{ item[0] }}=8081"
80 regexp: "{{ item[0] }}"
81 path: "/home/stack/{{ item[1] }}"
86 - [ 'SDN_CONTROLLER_WEBPORT', 'SDN_CONTROLLER_RESTCONFPORT' ]
87 - "{{ overcloudrc_files }}"
88 - name: Grab Heat Environment variables
89 shell: "{{ stackrc }} && openstack stack environment show overcloud -f json"
93 - name: Write SDN controller password to overcloudrc for ODL
95 line: "export SDN_CONTROLLER_PASSWORD={{(heat_env.stdout|from_json)['parameter_defaults']['OpenDaylightPassword']}}"
96 regexp: 'SDN_CONTROLLER_PASSWORD'
97 path: "/home/stack/{{ item }}"
98 when: sdn == 'opendaylight'
101 with_items: "{{ overcloudrc_files }}"
102 - name: Register OS Region
103 shell: "{{ overcloudrc }} && openstack endpoint list -c Region -f json"
105 when: vim == 'openstack'
106 - name: Write Region into overcloudrc
108 line: "export OS_REGION_NAME={{(region.stdout|from_json)[1]['Region']}}"
109 regexp: 'OS_REGION_NAME'
110 path: "/home/stack/{{ item }}"
113 with_items: "{{ overcloudrc_files }}"
114 when: vim == 'openstack'
115 - name: Create congress datasources
116 shell: "{{ overcloudrc }} && openstack congress datasource create {{ item }}"
120 with_items: "{{ congress_datasources }}"
122 - name: Configure Calipso
128 - name: Install Calipso dependencies
135 - name: Create Calipso user
139 - name: Remove old docker
148 - name: Add Docker CE repo
149 shell: yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
150 - name: Install Docker CE
159 - name: Install Calipso
161 python3 /root/calipso-installer.py --command start-all
162 --copy q --hostname {{ calipso_ip }} --dbport 37017 --webport 81
163 --apiport 8001 --rabbitmport 15673 --home /root