Skip to content
Snippets Groups Projects
network.yaml 1.08 KiB
Newer Older
Lukas Jelonek's avatar
Lukas Jelonek committed
heat_template_version: 2016-10-14

parameters:
  network_name:
    description: The name of the created private network
    type: string
    default: default_network

  external_network_name:
    description: The name of the external network that is connected to the internet
    type: string
    default: external_network

description: Setup a default private network that is routed to an external network

resources:
  internal_net:
    type: OS::Neutron::Net
    properties:
      name: {get_param: network_name}

  internal_subnet:
    type: OS::Neutron::Subnet
    properties:
      network_id: { get_resource: internal_net }
      cidr: "10.8.1.0/24"
      ip_version: 4

  internal_router:
    type: OS::Neutron::Router
    properties:
      external_gateway_info: 
        network: {get_param: external_network_name }

  internal_interface:
    type: OS::Neutron::RouterInterface
    properties:
      router_id: { get_resource: internal_router }
      subnet: { get_resource: internal_subnet }

outputs:
  name:
    description: The private network name.
    value: {get_resource: internal_net}