blob: a2b8a5bb81e495929e317fa758ff55aa2ff04be9 [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.
# TOSCA recipe for adding a sample R-CORD subscriber
#
# http POST $(minikube service xos-tosca --url)/run \
# xos-username:admin@opencord.org xos-password:letmein \
# @./openstack-tosca.yaml
tosca_definitions_version: tosca_simple_yaml_1_0
imports:
- custom_types/controller.yaml
- custom_types/controllersite.yaml
- custom_types/deployment.yaml
- custom_types/flavor.yaml
- custom_types/image.yaml
- custom_types/site.yaml
- custom_types/networktemplate.yaml
- custom_types/network.yaml
- custom_types/networkslice.yaml
- custom_types/slice.yaml
- custom_types/sitedeployment.yaml
description: openstack extensions to deployment
topology_template:
node_templates:
# Images and flavors
Cirros-0.3.5:
type: tosca.nodes.Image
properties:
name: "Cirros 0.3.5 64-bit"
disk_format: QCOW2
container_format: BARE
m1.tiny:
type: tosca.nodes.Flavor
properties:
name: m1.tiny
m1.small:
type: tosca.nodes.Flavor
properties:
name: m1.small
m1.medium:
type: tosca.nodes.Flavor
properties:
name: m1.medium
m1.large:
type: tosca.nodes.Flavor
properties:
name: m1.large
m1.xlarge:
type: tosca.nodes.Flavor
properties:
name: m1.xlarge
MyDeployment:
type: tosca.nodes.Deployment
properties:
name: MyDeployment
# OpenStack Controller
mysite_MyDeployment_openstack:
type: tosca.nodes.Controller
requirements:
- deployment:
node: MyDeployment
relationship: tosca.relationships.BelongsToOne
properties:
name: mysite_MyDeployment_openstack
backend_type: OpenStack
version: Newton
auth_url: http://keystone.openstack.svc.cluster.local/v3
admin_user: admin
admin_password: password
admin_tenant: admin
domain: Default
# Site - adds openstack controller to site defined in deployment.yaml
mysite:
type: tosca.nodes.Site
properties:
name: mysite
must-exist: true
site_url: http://mysite.opencloud.us/
hosts_nodes: true
mysite_deployment_MyDeployment:
type: tosca.nodes.SiteDeployment
requirements:
- site:
node: mysite
relationship: tosca.relationships.BelongsToOne
- deployment:
node: MyDeployment
relationship: tosca.relationships.BelongsToOne
- controller:
node: mysite_MyDeployment_openstack
relationship: tosca.relationships.BelongsToOne
mysite_openstack_controller:
type: tosca.nodes.ControllerSite
requirements:
- site:
node: mysite
relationship: tosca.relationships.BelongsToOne
- controller:
node: mysite_MyDeployment_openstack
relationship: tosca.relationships.BelongsToOne
# For creating a test VM
mysite_test:
description: Test Slice
type: tosca.nodes.Slice
properties:
# network: noauto
name: mysite_test
requirements:
- site:
node: mysite
relationship: tosca.relationships.BelongsToOne
- default_image:
node: Cirros-0.3.5
relationship: tosca.relationships.BelongsToOne
# For private networks (e.g., per-slice)
private_template:
type: tosca.nodes.NetworkTemplate
properties:
name: Private
visibility: private
translation: none
vtn_kind: PRIVATE