{% from 'cookied-mcp-mitaka-ovs/underlay.yaml' import HOSTNAME_CFG01 with context %}
{% from 'cookied-mcp-mitaka-ovs/underlay.yaml' import HOSTNAME_CTL01 with context %}
{% from 'cookied-mcp-mitaka-ovs/underlay.yaml' import HOSTNAME_CTL02 with context %}
{% from 'cookied-mcp-mitaka-ovs/underlay.yaml' import HOSTNAME_CTL03 with context %}
{% from 'cookied-mcp-mitaka-ovs/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 %}

{% import 'shared-openstack.yaml' as SHARED_OPENSTACK with context %}
{% import 'shared-salt.yaml' as SHARED with context %}

# 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

- description: Install neutron service on primary node
  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
    -C "I@neutron:server and *01*" state.sls neutron.server
  node_name: {{ HOSTNAME_CFG01 }}
  retry: {count: 1, delay: 5}
  skip_fail: false

- description: Install neutron service on other nodes
  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
    -C "I@neutron:server" state.sls neutron.server
  node_name: {{ HOSTNAME_CFG01 }}
  retry: {count: 1, delay: 5}
  skip_fail: false

- description: Install neutron on gtw node
  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
    -C 'I@neutron:gateway' state.sls neutron
  node_name: {{ HOSTNAME_CFG01 }}
  retry: {count: 1, delay: 5}
  skip_fail: false

# WORKAROUND PROD-20976
- description: WORKAROUND PROD-20976
  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
    -C 'I@neutron:server or I@neutron:gateway' cmd.run "sed -i
    's/#min_l3_agents_per_router = 2/min_l3_agents_per_router = 1/'
    /etc/neutron/neutron.conf"
  node_name: {{ HOSTNAME_CFG01 }}
  retry: {count: 1, delay: 5}
  skip_fail: false

- description: Restart Neutron services
  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
    -C 'I@neutron:server or I@neutron:gateway' cmd.run 'systemctl restart
    neutron*'
  node_name: {{ HOSTNAME_CFG01 }}
  retry: {count: 1, delay: 5}
  skip_fail: false

- description: Check neutron agent-list
  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
    -C 'I@keystone:server' cmd.run '. /root/keystonerc; neutron agent-list'
  node_name: {{ HOSTNAME_CFG01 }}
  retry: {count: 3, delay: 20}
  skip_fail: false

{{ SHARED_OPENSTACK.MACRO_INSTALL_HEAT() }}

# install designate backend
- description: Install powerdns
  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
    -C 'I@powerdns:server' state.sls powerdns.server
  node_name: {{ HOSTNAME_CFG01 }}
  retry: {count: 1, delay: 5}
  skip_fail: false

{{ SHARED_OPENSTACK.MACRO_INSTALL_DESIGNATE() }}

{{ SHARED_OPENSTACK.MACRO_INSTALL_HORIZON() }}

{{ SHARED_OPENSTACK.MACRO_INSTALL_COMPUTE() }}
