Closed steve-butler closed 4 years ago
The fix delivered in 3.3.3 does not resolve the issue for vsc.
Error:
TASK [vsc-predeploy : Creating VSC stack] **************************************
fatal: [sdwvsc01pgam.sdwan.tc.corp]: FAILED! =>
msg: |-
The task includes an option with an undefined variable. The error was: 'openstack_availability_zone' is undefined
The error appears to have been in '/home/metro/nuage-metro/src/roles/vsc-predeploy/tasks/openstack.yml': line 36, column 5, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
- name: Creating VSC stack
^ here
In 3.3.4, the failing task looks like this:
- name: Creating VSC stack
register: create_stack
os_stack:
name: "{{ vm_name }}"
template: "{{ vsc_heat_template }}"
auth:
"{{ openstack_auth }}"
parameters:
vm_name: "{{ vm_name }}"
vsc_image: "{{ openstack_image }}"
vsc_flavor: "{{ openstack_flavor }}"
vsc_management_network: "{{ openstack_mgmt_network }}"
vsc_management_subnet: "{{ openstack_mgmt_subnet | default('NONE') }}"
vsc_control_network: "{{ openstack_control_network }}"
vsc_control_subnet: "{{ openstack_control_subnet | default('NONE') }}"
mgmt_ip: "{{ mgmt_ip | default('NONE') }}"
control_ip: "{{ control_ip | default('NONE') }}"
availability_zone: "{{ openstack_availability_zone }}"
delegate_to: localhost
The availability_zone parameter should be conditional on existence of openstack_availability_zone.
Additionally, src/roles/vsd-predeploy/tasks/openstack.yml and src/roles/vstat-predeploy/tasks/openstack.yml are not using the availability_zone parameter. Therefore the feature implementation is not complete.
Correction: VSD and VSTAT implementation is okay. VSC conditional statement should be in template src/roles/vsc-predeploy/templates/openstack.j2 (Use vsd and vstat templates as reference)
Fixed in #1293 (MetroAE v3.3.5) and #1274 (MetroAE v3.3.3).
openstack_availability_zone should be an optional parameter. As a required parameter, functionality breaks for OpenStack environments not using availability zones.
The following files need to be updated:
Replace line:
openstack_availability_zone: {{ item.openstack_availability_zone }}
with:Notability, dev branch already handles this correctly.
Error seen in v3.3.2: