---

heat_template_version: queens

description: MCP environment for released-heat-cicd-pike-dvr-sl

parameters:
  instance_domain:
    type: string
    default: released-heat-cicd-pike-dvr-sl.local
  mcp_version:
    type: string
  env_name:
    type: string
  control_subnet_cidr:
    type: string
    default: "10.6.0.0/24"
  tenant_subnet_cidr:
    type: string
    default: "10.8.0.0/24"
  external_subnet_cidr:
    type: string
    default: "10.9.0.0/16"
  management_subnet_cidr:
    type: string
    default: "10.7.0.0/24"
  management_subnet_cfg01_ip:
    type: string
    default: 10.7.0.15
  management_subnet_gateway_ip:
    type: string
    default: 10.7.0.1
  management_subnet_pool_start:
    type: string
    default: 10.7.0.20
  management_subnet_pool_end:
    type: string
    default: 10.7.0.90
  salt_master_control_ip:
    type: string
    default: 10.6.0.15

  key_pair:
    type: string

  ctl_flavor:
    type: string
  cfg_flavor:
    type: string
  cid_flavor:
    type: string
  kvm_fake_flavor:
    type: string
  dbs_flavor:
    type: string
  msg_flavor:
    type: string
  mon_flavor:
    type: string
  log_flavor:
    type: string
  mtr_flavor:
    type: string
  cmp_flavor:
    type: string
  foundation_flavor:
    type: string
  cmn_flavor:
    type: string
  rgw_flavor:
    type: string
  osd_flavor:
    type: string
  gtw_flavor:
    type: string
  dns_flavor:
    type: string
  kmn_flavor:
    type: string
  prx_flavor:
    type: string
  mdb_flavor:
    type: string

  net_public:
    type: string

  foundation_image:
    type: string

  bm_availability_zone:
    type: string
  vm_availability_zone:
    type: string

resources:
  networks:
    type: MCP::Networks
    properties:
      stack_name: { get_param: "OS::stack_name" }
      env_name: { get_param: env_name }
  subnets:
    depends_on: [networks]
    type: MCP::Subnets
    properties:
      stack_name: { get_param: "OS::stack_name" }
      env_name: { get_param: env_name }
      management_net: { list_join: ['-', [ 'management_net', { get_param: env_name } ]] }
      control_net: { list_join: ['-', [ 'control_net', { get_param: env_name } ]] }
      tenant_net: { list_join: ['-', [ 'tenant_net', { get_param: env_name } ]] }
      external_net: { list_join: ['-', [ 'external_net', { get_param: env_name } ]] }
      control_subnet_cidr: { get_param: control_subnet_cidr }
      tenant_subnet_cidr: { get_param: tenant_subnet_cidr }
      external_subnet_cidr: { get_param: external_subnet_cidr }
      management_subnet_cidr: { get_param: management_subnet_cidr }
      management_subnet_gateway_ip: { get_param: management_subnet_gateway_ip }
      management_subnet_pool_start: { get_param: management_subnet_pool_start }
      management_subnet_pool_end: { get_param: management_subnet_pool_end }

  #flavors:
  #  type: MCP::Flavors

  cfg01_node:
    type: MCP::MasterNode
    depends_on: [subnets]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      cfg01_flavor: { get_param: cfg_flavor }
      availability_zone: { get_param: bm_availability_zone }
      management_net: { list_join: ['-', [ 'management_net', { get_param: env_name } ]] }
      control_net: { list_join: ['-', [ 'control_net', { get_param: env_name } ]] }
      tenant_net: { list_join: ['-', [ 'tenant_net', { get_param: env_name } ]] }
      external_net: { list_join: ['-', [ 'external_net', { get_param: env_name } ]] }
      salt_master_control_ip: { get_param: salt_master_control_ip }
      management_subnet_cfg01_ip: { get_param: management_subnet_cfg01_ip }
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '15' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '15' ]
      instance_name: cfg01
      instance_domain: {get_param: instance_domain}

  control_cluster:
    type: MCP::MultipleInstance
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: ctl01
      instance02_name: ctl02
      instance03_name: ctl03
      instance_flavor: {get_param: ctl_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '11' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '12' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '13' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '11' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '12' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '13' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '11' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '12' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '13' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  openstack_database_cluster:
    type: MCP::MultipleInstance
    depends_on: [control_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: dbs01
      instance02_name: dbs02
      instance03_name: dbs03
      instance_flavor: {get_param: dbs_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '51' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '52' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '53' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '51' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '52' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '53' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '51' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '52' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '53' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  fake_kvm_cluster:
    type: MCP::MultipleInstance
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: kvm01
      instance02_name: kvm02
      instance03_name: kvm03
      instance_flavor: {get_param: kvm_fake_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '241' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '242' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '243' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '241' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '242' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '243' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '241' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '242' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '243' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  openstack_message_queue_cluster:
    type: MCP::MultipleInstance
    depends_on: [openstack_database_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: msg01
      instance02_name: msg02
      instance03_name: msg03
      instance_flavor: {get_param: msg_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '41' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '42' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '43' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '41' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '42' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '43' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '41' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '42' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '43' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  cicd_cluster:
    type: MCP::MultipleInstance
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: cid01
      instance02_name: cid02
      instance03_name: cid03
      instance_flavor: {get_param: cid_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '91' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '92' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '93' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '91' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '92' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '93' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '91' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '92' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '93' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  stacklight_monitor_cluster:
    type: MCP::MultipleInstance
    depends_on: [openstack_message_queue_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: mon01
      instance02_name: mon02
      instance03_name: mon03
      instance_flavor: {get_param: mon_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '71' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '72' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '73' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '71' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '72' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '73' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '71' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '72' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '73' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  stacklight_log_cluster:
    type: MCP::MultipleInstance
    depends_on: [stacklight_monitor_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: log01
      instance02_name: log02
      instance03_name: log03
      instance_flavor: {get_param: log_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '61' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '62' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '63' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '61' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '62' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '63' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '61' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '62' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '63' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  stacklight_mtr_cluster:
    type: MCP::MultipleInstance
    depends_on: [stacklight_log_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: mtr01
      instance02_name: mtr02
      instance03_name: mtr03
      instance_flavor: {get_param: mtr_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '97' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '98' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '99' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '97' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '98' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '99' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '97' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '98' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '99' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  prx01_virtual:
    type: MCP::SingleInstance
    depends_on: [control_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: prx01
      instance_flavor: {get_param: prx_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '81' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '81' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '81' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  prx02_virtual:
    type: MCP::SingleInstance
    depends_on: [control_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: prx02
      instance_flavor: {get_param: prx_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '82' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '82' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '82' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  cmp001_virtual:
    type: MCP::Compute
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: cmp001
      instance_flavor: {get_param: cmp_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '101' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '101' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '101' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  cmp002_virtual:
    type: MCP::Compute
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: cmp002
      instance_flavor: {get_param: cmp_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '102' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '102' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '102' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  foundation_node:
    type: MCP::FoundationNode
    depends_on: [subnets]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: foundation
      instance_image: { get_param: foundation_image }
      instance_flavor: {get_param: foundation_flavor}
      availability_zone: { get_param: bm_availability_zone }
      management_net: { list_join: ['-', [ 'management_net', { get_param: env_name } ]] }
      control_net: { list_join: ['-', [ 'control_net', { get_param: env_name } ]] }
      tenant_net: { list_join: ['-', [ 'tenant_net', { get_param: env_name } ]] }
      external_net: { list_join: ['-', [ 'external_net', { get_param: env_name } ]] }
      management_subnet_gateway_ip: { get_param: management_subnet_gateway_ip }
      underlay_userdata: { get_file: ./underlay--user-data-foundation.yaml }
      management_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, management_net_prefix] }, '5' ]
      control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '5' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '5' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '5' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  ceph_cmn_cluster:
    type: MCP::MultipleInstance
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: cmn01
      instance02_name: cmn02
      instance03_name: cmn03
      instance_flavor: {get_param: cmn_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '66' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '67' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '68' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '66' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '67' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '68' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '66' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '67' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '68' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  ceph_rgw_cluster:
    type: MCP::MultipleInstance
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: rgw01
      instance02_name: rgw02
      instance03_name: rgw03
      instance_flavor: {get_param: rgw_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '76' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '77' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '78' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '76' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '77' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '78' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '76' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '77' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '78' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  ceph_osd_cluster:
    type: MCP::MultipleInstance
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: osd001
      instance02_name: osd002
      instance03_name: osd003
      instance_flavor: {get_param: osd_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '201' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '202' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '203' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '201' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '202' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '203' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '201' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '202' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '203' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  openstack_gtw_cluster:
    type: MCP::MultipleInstance
    depends_on: [cfg01_node]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: gtw01
      instance02_name: gtw02
      instance03_name: gtw03
      instance_flavor: {get_param: gtw_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '224' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '225' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '226' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '224' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '225' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '226' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '224' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '225' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '226' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  openstack_barbican_cluster:
    type: MCP::MultipleInstance
    depends_on: [control_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: kmn01
      instance02_name: kmn02
      instance03_name: kmn03
      instance_flavor: {get_param: kmn_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '45' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '46' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '47' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '45' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '46' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '47' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '45' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '46' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '47' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  dns01_virtual:
    type: MCP::SingleInstance
    depends_on: [control_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: dns01
      instance_flavor: {get_param: dns_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '113' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '113' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '113' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  dns02_virtual:
    type: MCP::SingleInstance
    depends_on: [control_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: dns02
      instance_flavor: {get_param: dns_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '114' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '114' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '114' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  openstack_telemetry_cluster:
    type: MCP::MultipleInstance
    depends_on: [control_cluster]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance01_name: mdb01
      instance02_name: mdb02
      instance03_name: mdb03
      instance_flavor: {get_param: mdb_flavor}
      availability_zone: { get_param: vm_availability_zone }
      underlay_userdata: { get_file: ./underlay-userdata.yaml }
      instance01_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '84' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '85' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '86' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '84' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '85' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '86' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '84' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '85' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '86' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

outputs:
  foundation_public_ip:
    description: foundation node IP address (floating) from external network
    value:
      get_attr:
      - foundation_node
      - instance_floating_address
...
