
{#
Copyright 2017-present Open Networking Foundation

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
#}


tosca_definitions_version: tosca_simple_yaml_1_0

imports:
   - custom_types/networktemplate.yaml
   - custom_types/network.yaml
   - custom_types/slice.yaml
   - custom_types/site.yaml

description: management network config, generated by platform-install

topology_template:
  node_templates:

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

# management network
    management_template:
      type: tosca.nodes.NetworkTemplate
      properties:
        name: management_template
        visibility: private
        translation: none
        vtn_kind: MANAGEMENT_LOCAL

    management:
      type: tosca.nodes.Network
      properties:
        name: management
        # ip_version: 4
        subnet: {{ management_network_cidr }}
        permit_all_slices: true
      requirements:
        - template:
            node: management_template
            relationship: tosca.relationships.BelongsToOne
        - owner:
            node: slice#{{ site_name }}_management
            relationship: tosca.relationships.BelongsToOne

{% if use_management_hosts %}
    management_hosts_template:
      type: tosca.nodes.NetworkTemplate
      properties:
        name: management_hosts_template
        visibility: private
        translation: none
        vtn_kind: MANAGEMENT_HOST

    management_hosts:
      type: tosca.nodes.Network
      properties:
        # ip_version: 4
        subnet: {{ management_hosts_net_cidr }}
        start_ip: {{ management_hosts_net_range_xos_low }}
        end_ip: {{ management_hosts_net_range_xos_high }}
      requirements:
        - template:
            node: management_hosts_template
            relationship: tosca.relationships.BelongsToOne
        - owner:
            node: slice#{{ site_name }}_management
            relationship: tosca.relationships.BelongsToOne
{% endif %}

    slice#{{ site_name }}_management:
      description: This slice exists solely to own the management network
      type: tosca.nodes.Slice
      properties:
        network: noauto
        name: {{ site_name }}_management
      requirements:
        - site:
            node: {{ site_name }}
            relationship: tosca.relationships.BelongsToOne

