---
# Copyright 2018-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.

# Default values for the base-kubernetes profile.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

replicaCount: 1

nameOverride: ""
fullnameOverride: ""

imagePullPolicy: 'IfNotPresent'

rcord_synchronizerImage: "xosproject/rcord-synchronizer:master"
httpieImage: "clue/httpie:latest"

xosAdminUser: "admin@opencord.org"
xosAdminPassword: "letmein"

# TOSCA recipes for the tosca-loader
toscaRecipes:
  fixtures:
    tosca_definitions_version: tosca_simple_yaml_1_0
    description: Some basic fixtures
    imports:
      - custom_types/siterole.yaml
      - custom_types/slicerole.yaml
      - custom_types/networkparametertype.yaml
      - custom_types/networktemplate.yaml
    topology_template:
      node_templates:
    # -----------------------------------------------------------------------------
    # Network Parameter Types
    # -----------------------------------------------------------------------------
        s_tag:
          type: tosca.nodes.NetworkParameterType
          properties:
            name: s_tag
        c_tag:
          type: tosca.nodes.NetworkParameterType
          properties:
            name: c_tag
        next_hop:
          type: tosca.nodes.NetworkParameterType
          properties:
            name: next_hop
        device:
          type: tosca.nodes.NetworkParameterType
          properties:
            name: device
        bridge:
          type: tosca.nodes.NetworkParameterType
          properties:
            name: bridge
        neutron_port_name:
          type: tosca.nodes.NetworkParameterType
          properties:
            name: neutron_port_name
    # ----------------------------------------------------------------------------
    # Roles
    # ----------------------------------------------------------------------------
        siterole#admin:
          type: tosca.nodes.SiteRole
          properties:
            role: admin
        siterole#pi:
          type: tosca.nodes.SiteRole
          properties:
            role: pi
        siterole#tech:
          type: tosca.nodes.SiteRole
          properties:
            role: tech
        slicerole#admin:
          type: tosca.nodes.SliceRole
          properties:
            role: admin
        slicerole#access:
          type: tosca.nodes.SliceRole
          properties:
            role: access
    # -----------------------------------------------------------------------------
    # Network Templates
    # -----------------------------------------------------------------------------
        Private:
          type: tosca.nodes.NetworkTemplate
          properties:
            name: Private
            visibility: private
            translation: none
        Public shared IPv4:
          type: tosca.nodes.NetworkTemplate
          properties:
            name: Public shared IPv4
            visibility: private
            translation: NAT
            shared_network_name: nat-net
        Public dedicated IPv4:
          type: tosca.nodes.NetworkTemplate
          properties:
            name: Public dedicated IPv4
            visibility: public
            translation: none
            shared_network_name: ext-net

  deployment:
    tosca_definitions_version: tosca_simple_yaml_1_0
    imports:
       - custom_types/deployment.yaml
    description: deployment config, generated by platform-install
    topology_template:
      node_templates:
        MyDeployment:
          type: tosca.nodes.Deployment
          properties:
            name: MyDeployment

  fabricService:
    tosca_definitions_version: tosca_simple_yaml_1_0
    imports:
      - custom_types/fabricservice.yaml
      - custom_types/onosapp.yaml
      - custom_types/onosservice.yaml
      - custom_types/serviceattribute.yaml
      - custom_types/servicedependency.yaml
      - custom_types/serviceinstancelink.yaml
    description: fabric services, generated by rcord profile
    topology_template:
      node_templates:
        service#ONOS_Fabric:
          type: tosca.nodes.ONOSService
          properties:
              name: ONOS_Fabric
              kind: platform
              no_container: true
              rest_hostname: onos-fabric-ui
              rest_port: 8181
        service#fabric:
          type: tosca.nodes.FabricService
          properties:
              name: fabric
              kind: platform
        Fabric_ONOS_app:
          type: tosca.nodes.ONOSApp
          requirements:
              - owner:
                  node: service#ONOS_Fabric
                  relationship: tosca.relationships.BelongsToOne
          properties:
              name: Fabric_ONOS_app
              dependencies: org.onosproject.drivers, org.onosproject.openflow, org.onosproject.netcfghostprovider, org.onosproject.segmentrouting, org.onosproject.vrouter
        service_dependency#onos-fabric_fabric:
          type: tosca.nodes.ServiceDependency
          properties:
            connect_method: None
          requirements:
            - subscriber_service:
                node: service#ONOS_Fabric
                relationship: tosca.relationships.BelongsToOne
            - provider_service:
                node: service#fabric
                relationship: tosca.relationships.BelongsToOne

  cordServices:
    tosca_definitions_version: tosca_simple_yaml_1_0
    description: Set up VOLT, AddressManager, and RCORD services
    imports:
      - custom_types/fabricservice.yaml
      - custom_types/image.yaml
      - custom_types/kubernetesservice.yaml
      - custom_types/network.yaml
      - custom_types/networkslice.yaml
      - custom_types/networktemplate.yaml
      - custom_types/nodelabel.yaml
      - custom_types/onosapp.yaml
      - custom_types/onosservice.yaml
      - custom_types/site.yaml
      - custom_types/service.yaml
      - custom_types/servicedependency.yaml
      - custom_types/serviceinstanceattribute.yaml
      - custom_types/serviceinstancelink.yaml
      - custom_types/slice.yaml
      - custom_types/voltservice.yaml
      - custom_types/vrouterservice.yaml
      - custom_types/vsghwservice.yaml
      - custom_types/trustdomain.yaml
    topology_template:
      node_templates:
        default_trustdomain:
          type: tosca.nodes.TrustDomain
          properties:
            name: "default"
          requirements:
            - owner:
                node: service#kubernetes
                relationship: tosca.relationships.BelongsToOne
        service#ONOS_Fabric:
          type: tosca.nodes.ONOSService
          properties:
              name: ONOS_Fabric
              must-exist: true
        service#fabric:
          type: tosca.nodes.FabricService
          properties:
              name: fabric
              must-exist: true
        service#rcord:
          type: tosca.nodes.Service
          properties:
            name: rcord
        rcord_volt:
          type: tosca.nodes.ServiceDependency
          properties:
            connect_method: None
          requirements:
            - subscriber_service:
                node: service#rcord
                relationship: tosca.relationships.BelongsToOne
            - provider_service:
                node: service#volt
                relationship: tosca.relationships.BelongsToOne
        service#kubernetes:
          type: tosca.nodes.KubernetesService
          properties:
            name: kubernetes
        service#volt:
          type: tosca.nodes.VOLTService
          properties:
            name: volt
            voltha_url: voltha.voltha.svc.cluster.local
            voltha_port: 8882
            onos_voltha_url: onos-voltha-ui.voltha.svc.cluster.local
            onos_voltha_port: 8181
            onos_voltha_user: karaf
            onos_voltha_pass: karaf
        service#vsg-hw:
          type: tosca.nodes.VSGHWService
          properties:
            name: vsg-hw
        service#vrouter:
          type: tosca.nodes.VRouterService
          properties:
            name: vrouter
            kind: rcord
        service_dependency#fabric_vrouter:
          type: tosca.nodes.ServiceDependency
          properties:
            connect_method: None
          requirements:
            - subscriber_service:
                node: service#fabric
                relationship: tosca.relationships.BelongsToOne
            - provider_service:
                node: service#vrouter
                relationship: tosca.relationships.BelongsToOne
        volt_vsg-hw:
          type: tosca.nodes.ServiceDependency
          properties:
            connect_method: None
          requirements:
            - subscriber_service:
                node: service#volt
                relationship: tosca.relationships.BelongsToOne
            - provider_service:
                node: service#vsg-hw
                relationship: tosca.relationships.BelongsToOne
        onos_fabric_vsg-hw:
          type: tosca.nodes.ServiceDependency
          properties:
            connect_method: None
          requirements:
            - subscriber_service:
                node: service#vsg-hw
                relationship: tosca.relationships.BelongsToOne
            - provider_service:
                node: service#ONOS_Fabric
                relationship: tosca.relationships.BelongsToOne

  serviceGraphConstraints:
    tosca_definitions_version: tosca_simple_yaml_1_0
    imports:
       - custom_types/servicegraphconstraint.yaml
    description: Constraints on the Services position in the graph
    topology_template:
      node_templates:
        constraints:
          type: tosca.nodes.ServiceGraphConstraint
          properties:
            constraints: '[[null, "rcord"], [null, "volt"], ["ONOS_Fabric", "vsg-hw"], ["fabric", null], ["vrouter", null]]'
