tosca_definitions_version: tosca_simple_yaml_1_0

imports:
   - custom_types/xos.yaml

description: public network config, generated by platform-install

topology_template:
  node_templates:

# site, fully created in deployment.yaml
    {{ site_name }}:
      type: tosca.nodes.Site

# vrouter service, fully created in cord-service.yaml
    service#vrouter:
      type: tosca.nodes.VRouterService

# public network
    public_template:
      type: tosca.nodes.NetworkTemplate
      properties:
          visibility: private
          translation: none
          vtn_kind: PUBLIC

    public:
      type: tosca.nodes.network.Network
      properties:
          ip_version: 4
      requirements:
          - network_template:
              node: public_template
              relationship: tosca.relationships.UsesNetworkTemplate
          - owner:
              node: {{ site_name }}_public
              relationship: tosca.relationships.MemberOfSlice
          - vrouter_tenant:
              node: service#vrouter
              relationship: tosca.relationships.TenantOfService


    {{ site_name }}_public:
      description: This slice exists solely to own the public network
      type: tosca.nodes.Slice
      properties:
          network: noauto
      requirements:
          - site:
              node: {{ site_name }}
              relationship: tosca.relationships.MemberOfSite

