blob: 5408334a87ecfb0607ac1f95b5b82471a03349b9 [file] [log] [blame]
---
# 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 rcord-lite profile.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
replicaCount: 1
pull_docker_registry:
image:
toscaLoader:
repository: clue/httpie
tag: latest
pullPolicy: IfNotPresent
rcordSynchronizer:
repository: xosproject/rcord-synchronizer
tag: master
pullPolicy: IfNotPresent
xosAdminUser: admin@opencord.org
xosAdminPassword: letmein
# Service-specific configuration.
addressmanager:
serviceConfig:
accessor:
username: admin@opencord.org
password: letmein
fabric:
serviceConfig:
accessor:
username: admin@opencord.org
password: letmein
onos-service:
serviceConfig:
accessor:
username: admin@opencord.org
password: letmein
volt:
serviceConfig:
accessor:
username: admin@opencord.org
password: letmein
vsg-hw:
serviceConfig:
accessor:
username: admin@opencord.org
password: letmein
# The R-CORD synchronizer loads R-CORD-specific models into the core
serviceConfig:
name: rcord
accessor:
username: admin@opencord.org
password: letmein
endpoint: xos-core:50051
dependency_graph: "/opt/xos/synchronizers/rcord/model-deps"
sys_dir: "/opt/xos/synchronizers/rcord/sys"
models_dir: "/opt/xos/synchronizers/rcord/models"
model_policies_dir: "/opt/xos/synchronizers/rcord/model_policies"
# 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/onosservice.yaml
- custom_types/serviceattribute.yaml
- custom_types/fabricservice.yaml
- custom_types/onosapp.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
serviceattribute#fabric_network_cfg_json:
type: tosca.nodes.ServiceAttribute
requirements:
- service:
node: service#ONOS_Fabric
relationship: tosca.relationships.BelongsToOne
properties:
name: rest_onos/v1/network/configuration/
value: ''
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
Fabric_ONOS_app_ONOS_Fabric:
type: tosca.nodes.ServiceInstanceLink
requirements:
- provider_service_instance:
node: Fabric_ONOS_app
relationship: tosca.relationships.BelongsToOne
- subscriber_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/addressmanagerservice.yaml
- custom_types/addresspool.yaml
- custom_types/image.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/vsghwservice.yaml
topology_template:
node_templates:
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#volt:
type: tosca.nodes.VOLTService
properties:
name: volt
kind: rcord
service#vsg-hw:
type: tosca.nodes.VSGHWService
properties:
name: vsg-hw
service#addressmanager:
type: tosca.nodes.AddressManagerService
properties:
name: addressmanager
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
vsg-hw_addressmanager:
type: tosca.nodes.ServiceDependency
properties:
connect_method: None
requirements:
- subscriber_service:
node: service#vsg-hw
relationship: tosca.relationships.BelongsToOne
- provider_service:
node: service#addressmanager
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"], ["addressmanager", "vsg-hw"]]'