CORD-3045 Reorganize TOSCA for rcord-lite profile
Change-Id: If215331658f778234eaa995ad95fdc7441ec355c
diff --git a/xos-profiles/rcord-lite/templates/_tosca.tpl b/xos-profiles/rcord-lite/templates/_tosca.tpl
new file mode 100644
index 0000000..c9985ae
--- /dev/null
+++ b/xos-profiles/rcord-lite/templates/_tosca.tpl
@@ -0,0 +1,237 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+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.
+*/}}
+{{- define "rcord-lite.basicFixturesTosca" -}}
+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
+ - custom_types/deployment.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
+# -----------------------------------------------------------------------------
+ MyDeployment:
+ type: tosca.nodes.Deployment
+ properties:
+ name: MyDeployment
+{{- end -}}
+
+
+{{- define "rcord-lite.serviceGraphTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+imports:
+ - custom_types/fabricservice.yaml
+ - custom_types/onosservice.yaml
+ - custom_types/rcordservice.yaml
+ - custom_types/vrouterservice.yaml
+ - custom_types/voltservice.yaml
+ - custom_types/vsghwservice.yaml
+ - custom_types/servicedependency.yaml
+ - custom_types/servicegraphconstraint.yaml
+description: rcord-lite service graph
+topology_template:
+ node_templates:
+
+# These services must be defined before loading the graph
+
+ 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.RCORDService
+ properties:
+ name: rcord
+ must-exist: true
+
+ service#vrouter:
+ type: tosca.nodes.VRouterService
+ properties:
+ name: vrouter
+ must-exist: true
+
+ service#volt:
+ type: tosca.nodes.VOLTService
+ properties:
+ name: volt
+ must-exist: true
+
+ service#vsg-hw:
+ type: tosca.nodes.VSGHWService
+ properties:
+ name: vsg-hw
+ must-exist: true
+
+# The rcord-lite service graph
+
+ 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
+
+ service_dependency#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_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
+
+ service_dependency#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
+
+ service_dependency#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
+
+ constraints:
+ type: tosca.nodes.ServiceGraphConstraint
+ properties:
+ constraints: '[[null, "rcord"], [null, "volt"], ["ONOS_Fabric", "vsg-hw"], ["fabric", null], ["vrouter", null]]'
+{{- end -}}
+
diff --git a/xos-profiles/rcord-lite/templates/tosca-configmap.yaml b/xos-profiles/rcord-lite/templates/tosca-configmap.yaml
index f39acb3..e4a5f40 100644
--- a/xos-profiles/rcord-lite/templates/tosca-configmap.yaml
+++ b/xos-profiles/rcord-lite/templates/tosca-configmap.yaml
@@ -20,12 +20,18 @@
name: rcord-lite-tosca
data:
010-fixtures.yaml: |
-{{ toYaml .Values.toscaRecipes.fixtures | indent 4 }}
- 020-deployment.yaml: |
-{{ toYaml .Values.toscaRecipes.deployment | indent 4 }}
- 030-fabric-service.yaml: |
-{{ toYaml .Values.toscaRecipes.fabricService | indent 4 }}
- 040-cord-services.yaml: |
-{{ toYaml .Values.toscaRecipes.cordServices | indent 4 }}
- 050-service-graph-constraints.yaml: |
-{{ toYaml .Values.toscaRecipes.serviceGraphConstraints | indent 4 }}
+{{ include "rcord-lite.basicFixturesTosca" . | indent 4 }}
+ 020-rcord-subscriber-service.yaml: |
+{{ include "rcord.serviceTosca" .Values.rcord | indent 4 }}
+ 030-volt-service.yaml: |
+{{ include "volt.serviceTosca" .Values.volt | indent 4 }}
+ 040-vsg-hw-service.yaml: |
+{{ include "vsg-hw.serviceTosca" (index .Values "vsg-hw") | indent 4 }}
+ 050-vrouter-service.yaml: |
+{{ include "vrouter.serviceTosca" .Values.vrouter | indent 4 }}
+ 060-onos-service-fabric.yaml: |
+{{ include "onos-service.fabricAppTosca" (index .Values "onos-service") | indent 4 }}
+ 070-fabric-service.yaml: |
+{{ include "fabric.serviceTosca" .Values.fabric | indent 4 }}
+ 300-service-graph.yaml: |
+{{ include "rcord-lite.serviceGraphTosca" . | indent 4 }}
diff --git a/xos-profiles/rcord-lite/values.yaml b/xos-profiles/rcord-lite/values.yaml
index 116d41f..3427e09 100644
--- a/xos-profiles/rcord-lite/values.yaml
+++ b/xos-profiles/rcord-lite/values.yaml
@@ -30,265 +30,3 @@
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/rcordservice.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
- topology_template:
- node_templates:
- 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.RCORDService
- 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]]'
diff --git a/xos-services/fabric/templates/_tosca.tpl b/xos-services/fabric/templates/_tosca.tpl
new file mode 100644
index 0000000..09f3810
--- /dev/null
+++ b/xos-services/fabric/templates/_tosca.tpl
@@ -0,0 +1,30 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+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.
+*/}}
+{{- define "fabric.serviceTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+description: Set up Fabric service
+imports:
+ - custom_types/fabricservice.yaml
+
+topology_template:
+ node_templates:
+ service#fabric:
+ type: tosca.nodes.FabricService
+ properties:
+ name: fabric
+ kind: platform
+{{- end -}}
diff --git a/xos-services/onos-service/templates/_tosca.tpl b/xos-services/onos-service/templates/_tosca.tpl
new file mode 100644
index 0000000..67438b4
--- /dev/null
+++ b/xos-services/onos-service/templates/_tosca.tpl
@@ -0,0 +1,87 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+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.
+*/}}
+{{- define "onos-service.fabricAppTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+imports:
+ - custom_types/onosapp.yaml
+ - custom_types/onosservice.yaml
+description: ONOS service and app for fabric
+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
+
+ 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
+{{- end -}}
+
+{{- define "onos-service.vtnAppTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+
+imports:
+ - custom_types/onosapp.yaml
+ - custom_types/onosservice.yaml
+ - custom_types/serviceinstanceattribute.yaml
+
+description: Configures the VTN ONOS service
+
+topology_template:
+ node_templates:
+
+ service#ONOS_CORD:
+ type: tosca.nodes.ONOSService
+ properties:
+ name: ONOS_CORD
+ kind: platform
+ no_container: true
+ rest_hostname: onos-cord-ui
+ rest_port: 8181
+
+ VTN_ONOS_app:
+ type: tosca.nodes.ONOSApp
+ requirements:
+ - owner:
+ node: service#ONOS_CORD
+ relationship: tosca.relationships.BelongsToOne
+ properties:
+ name: VTN_ONOS_app
+ install_dependencies: https://repo.maven.apache.org/maven2/org/opencord/cord-config/1.3.1/cord-config-1.3.1.oar, https://repo.maven.apache.org/maven2/org/opencord/vtn/1.5.0/vtn-1.5.0.oar
+ dependencies: org.onosproject.drivers, org.onosproject.drivers.ovsdb, org.onosproject.openflow-base, org.onosproject.ovsdb-base, org.onosproject.dhcp
+
+ VTN_ONOS_app_autogenerate:
+ type: tosca.nodes.ServiceInstanceAttribute
+ requirements:
+ - service_instance:
+ node: VTN_ONOS_app
+ relationship: tosca.relationships.BelongsToOne
+ properties:
+ name: autogenerate
+ value: vtn-network-cfg
+{{- end -}}
diff --git a/xos-services/rcord/templates/_tosca.tpl b/xos-services/rcord/templates/_tosca.tpl
new file mode 100644
index 0000000..846837b
--- /dev/null
+++ b/xos-services/rcord/templates/_tosca.tpl
@@ -0,0 +1,28 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+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.
+*/}}
+{{- define "rcord.serviceTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+imports:
+ - custom_types/rcordservice.yaml
+description: R-CORD service TOSCA
+topology_template:
+ node_templates:
+ service#rcord:
+ type: tosca.nodes.RCORDService
+ properties:
+ name: rcord
+{{- end -}}
diff --git a/xos-services/volt/templates/_tosca.tpl b/xos-services/volt/templates/_tosca.tpl
new file mode 100644
index 0000000..fffdab1
--- /dev/null
+++ b/xos-services/volt/templates/_tosca.tpl
@@ -0,0 +1,35 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+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.
+*/}}
+{{- define "volt.serviceTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+description: Set up VOLT service
+imports:
+ - custom_types/voltservice.yaml
+
+topology_template:
+ node_templates:
+ 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
+{{- end -}}
diff --git a/xos-services/vrouter/templates/_tosca.tpl b/xos-services/vrouter/templates/_tosca.tpl
new file mode 100644
index 0000000..7dce612
--- /dev/null
+++ b/xos-services/vrouter/templates/_tosca.tpl
@@ -0,0 +1,30 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+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.
+*/}}
+{{- define "vrouter.serviceTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+description: Set up VRouter service
+imports:
+ - custom_types/vrouterservice.yaml
+
+topology_template:
+ node_templates:
+ service#vrouter:
+ type: tosca.nodes.VRouterService
+ properties:
+ name: vrouter
+ kind: rcord
+{{- end -}}
diff --git a/xos-services/vsg-hw/templates/_tosca.tpl b/xos-services/vsg-hw/templates/_tosca.tpl
new file mode 100644
index 0000000..d5d84be
--- /dev/null
+++ b/xos-services/vsg-hw/templates/_tosca.tpl
@@ -0,0 +1,29 @@
+{{/* vim: set filetype=mustache: */}}
+{{/*
+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.
+*/}}
+{{- define "vsg-hw.serviceTosca" -}}
+tosca_definitions_version: tosca_simple_yaml_1_0
+description: Set up VSG-HW service
+imports:
+ - custom_types/vsghwservice.yaml
+
+topology_template:
+ node_templates:
+ service#vsg-hw:
+ type: tosca.nodes.VSGHWService
+ properties:
+ name: vsg-hw
+{{- end -}}