---

heat_template_version: queens

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

parameters:
  instance_domain:
    type: string
    default: released-heat-cicd-queens-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
...
