---

heat_template_version: queens

description: MCP environment for heat-cicd-k8s-calico-sl

parameters:
  instance_domain:
    type: string
    default: heat-cicd-k8s-calico-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: "192.168.200.0/24"
  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
  mon_flavor:
    type: string
  log_flavor:
    type: string
  mtr_flavor:
    type: string
  cmp_flavor:
    type: string
  foundation_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
      instance01_role: k8s_controller
      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] }

  fake_kvm_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: 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] }

  cicd_cluster:
    type: MCP::MultipleInstance
    depends_on: [fake_kvm_cluster]
    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: [cicd_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] }, '86' ]
      instance02_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '87' ]
      instance03_control_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, control_net_prefix] }, '88' ]
      instance01_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '86' ]
      instance02_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '87' ]
      instance03_tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '88' ]
      instance01_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '86' ]
      instance02_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '87' ]
      instance03_external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '88' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  prx01_virtual:
    type: MCP::SingleInstance
    depends_on: [stacklight_mtr_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: cid_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] }, '221' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '221' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '221' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  prx02_virtual:
    type: MCP::SingleInstance
    depends_on: [prx01_virtual]
    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: cid_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] }, '222' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '222' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '222' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  cmp001_virtual:
    type: MCP::Compute
    depends_on: [prx02_virtual]
    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: [cmp001_virtual]
    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] }

  cmp003_virtual:
    type: MCP::Compute
    depends_on: [cmp002_virtual]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: cmp003
      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] }, '103' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '103' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '103' ]

      instance_config_host: { get_attr: [cfg01_node, instance_address] }

  cmp004_virtual:
    type: MCP::Compute
    depends_on: [cmp003_virtual]
    properties:
      env_name: { get_param: env_name }
      mcp_version: { get_param: mcp_version }
      instance_domain: {get_param: instance_domain}
      instance_name: cmp004
      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] }, '104' ]
      tenant_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, tenant_net_prefix] }, '104' ]
      external_net_static_ip:
        list_join:
        - '.'
        - [ { get_attr: [subnets, external_net_prefix] }, '104' ]

      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] }

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