| {% from 'cookied-mcp-newton-dvr/underlay.yaml' import HOSTNAME_CFG01 with context %} |
| {% from 'cookied-mcp-newton-dvr/underlay.yaml' import HOSTNAME_CTL01 with context %} |
| {% from 'cookied-mcp-newton-dvr/underlay.yaml' import HOSTNAME_CTL02 with context %} |
| {% from 'cookied-mcp-newton-dvr/underlay.yaml' import HOSTNAME_CTL03 with context %} |
| {% from 'cookied-mcp-newton-dvr/underlay.yaml' import HOSTNAME_GTW01 with context %} |
| {% from 'shared-salt.yaml' import IPV4_NET_EXTERNAL_PREFIX with context %} |
| {% from 'shared-salt.yaml' import IPV4_NET_TENANT_PREFIX with context %} |
| {% set LAB_CONFIG_NAME = os_env('LAB_CONFIG_NAME') %} |
| {% set OVERRIDE_POLICY = os_env('OVERRIDE_POLICY', '') %} |
| |
| {% import 'shared-openstack.yaml' as SHARED_OPENSTACK with context %} |
| {% import 'shared-salt.yaml' as SHARED with context %} |
| |
| # Install OpenStack control services |
| |
| {%- if OVERRIDE_POLICY != '' %} |
| - description: Upload policy override |
| upload: |
| local_path: {{ config.salt_deploy.templates_dir }}{{ LAB_CONFIG_NAME }}/ |
| local_filename: overrides-policy.yml |
| remote_path: /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/ |
| node_name: {{ HOSTNAME_CFG01 }} |
| |
| - description: Create custom cluster control class |
| cmd: echo -e "classes:\n- cluster.{{ LAB_CONFIG_NAME }}.openstack.control_orig\n$(cat /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/overrides-policy.yml)" > /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/overrides-policy.yml |
| node_name: {{ HOSTNAME_CFG01 }} |
| |
| - description: Rename control classes |
| cmd: mv /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/control.yml /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/control_orig.yml && |
| ln -s /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/overrides-policy.yml /srv/salt/reclass/classes/cluster/{{ LAB_CONFIG_NAME }}/openstack/control.yml && |
| salt --hard-crash --state-output=mixed --state-verbose=False '*' saltutil.sync_all && |
| salt --hard-crash --state-output=mixed --state-verbose=False '*' saltutil.refresh_pillar |
| node_name: {{ HOSTNAME_CFG01 }} |
| {%- endif %} |
| |
| # Deploy nginx before openstack services (PROD-22740) |
| - description: Deploy nginx proxy |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False |
| -C 'I@nginx:server' state.sls nginx |
| node_name: {{ HOSTNAME_CFG01 }} |
| retry: {count: 1, delay: 5} |
| skip_fail: true |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_KEYSTONE() }} |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_GLANCE() }} |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_NOVA() }} |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_CINDER() }} |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_NEUTRON() }} |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_HEAT() }} |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_DESIGNATE(INSTALL_POWERDNS=true) }} |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_HORIZON() }} |
| |
| {{ SHARED_OPENSTACK.MACRO_INSTALL_COMPUTE() }} |