blob: ac429ffe2666ed498cb83e042d3e80a3d4ddd0fb [file] [log] [blame]
{{/* 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 "base-openstack.fixtureTosca" -}}
tosca_definitions_version: tosca_simple_yaml_1_0
imports:
- custom_types/deployment.yaml
- custom_types/site.yaml
- custom_types/networktemplate.yaml
- custom_types/network.yaml
- custom_types/networkslice.yaml
- custom_types/sitedeployment.yaml
description: set up site and deployment and link them
topology_template:
node_templates:
{{ .Values.cordSiteName }}:
type: tosca.nodes.Site
properties:
name: {{ .Values.cordSiteName }}
site_url: http://mysite.opencord.us/
hosts_nodes: true
{{ .Values.cordDeploymentName }}:
type: tosca.nodes.Deployment
properties:
name: {{ .Values.cordDeploymentName }}
{{- end -}}
{{- define "base-openstack.serviceGraphTosca" -}}
tosca_definitions_version: tosca_simple_yaml_1_0
imports:
- custom_types/onosapp.yaml
- custom_types/servicegraphconstraint.yaml
- custom_types/serviceinstancelink.yaml
- custom_types/vtnservice.yaml
description: Configures the base-openstack service graph
topology_template:
node_templates:
service#vtn:
type: tosca.nodes.VTNService
properties:
name: vtn
must-exist: true
resync: false
VTN_ONOS_app:
type: tosca.nodes.ONOSApp
properties:
name: VTN_ONOS_app
must-exist: true
VTN_ONOS_app_VTN_Service:
type: tosca.nodes.ServiceInstanceLink
requirements:
- provider_service_instance:
node: VTN_ONOS_app
relationship: tosca.relationships.BelongsToOne
- subscriber_service:
node: service#vtn
relationship: tosca.relationships.BelongsToOne
constraints:
type: tosca.nodes.ServiceGraphConstraint
properties:
constraints: '[]'
{{- end -}}
{{- define "base-openstack.testTosca" -}}
tosca_definitions_version: tosca_simple_yaml_1_0
imports:
- custom_types/flavor.yaml
- custom_types/image.yaml
- custom_types/site.yaml
- custom_types/network.yaml
- custom_types/networkslice.yaml
- custom_types/slice.yaml
description: for testing basic openstack functionality
topology_template:
node_templates:
Ubuntu-14.04:
type: tosca.nodes.Image
properties:
name: "Ubuntu 14.04 64-bit"
disk_format: QCOW2
container_format: BARE
path: https://github.com/opencord/platform-install/releases/download/vms/trusty-server-cloudimg-amd64-disk1.img.20170201
{{ .Values.cordSiteName }}:
type: tosca.nodes.Site
properties:
name: {{ .Values.cordSiteName }}
must-exist: true
# Define a test slice
{{ .Values.cordSiteName }}_test:
description: Test Slice
type: tosca.nodes.Slice
properties:
# network: noauto
name: {{ .Values.cordSiteName }}_test
requirements:
- site:
node: {{ .Values.cordSiteName }}
relationship: tosca.relationships.BelongsToOne
- default_image:
node: Ubuntu-14.04
relationship: tosca.relationships.BelongsToOne
management:
type: tosca.nodes.Network
properties:
name: management
must-exist: true
# Connect test slice to management net
networkslice#management_to_{{ .Values.cordSiteName }}_test:
type: tosca.nodes.NetworkSlice
requirements:
- network:
node: management
relationship: tosca.relationships.BelongsToOne
- slice:
node: {{ .Values.cordSiteName }}_test
relationship: tosca.relationships.BelongsToOne
{{- end -}}
{{- define "base-openstack.computeNodeTosca" -}}
tosca_definitions_version: tosca_simple_yaml_1_0
imports:
- custom_types/deployment.yaml
- custom_types/node.yaml
- custom_types/site.yaml
- custom_types/sitedeployment.yaml
description: Adds OpenStack compute nodes
topology_template:
node_templates:
# Site/Deployment, fully defined in deployment.yaml
site:
type: tosca.nodes.Site
properties:
name: {{ .Values.cordSiteName }}
must-exist: true
deployment:
type: tosca.nodes.Deployment
properties:
name: {{ .Values.cordDeploymentName }}
must-exist: true
site_deployment:
type: tosca.nodes.SiteDeployment
requirements:
- site:
node: site
relationship: tosca.relationships.BelongsToOne
- deployment:
node: deployment
relationship: tosca.relationships.BelongsToOne
# OpenStack compute nodes
{{- range .Values.computeNodes }}
{{ .name }}:
type: tosca.nodes.Node
properties:
name: {{ .name }}
bridgeId: {{ .bridgeId }}
dataPlaneIntf: {{ .dataPlaneIntf }}
dataPlaneIp: {{ .dataPlaneIp }}
requirements:
- site_deployment:
node: site_deployment
relationship: tosca.relationships.BelongsToOne
{{- end }}
{{- end -}}