blob: 09a7dbcc0752cf90f6382b8556cae33f6ab3aa6f [file] [log] [blame]
tosca_definitions_version: tosca_simple_yaml_1_0
description: Setup the ExampleService on the pod
imports:
- custom_types/xos.yaml
- custom_types/exampleservice.yaml
topology_template:
node_templates:
m1.small:
type: tosca.nodes.Flavor
Private:
type: tosca.nodes.NetworkTemplate
management:
type: tosca.nodes.network.Network.XOS
properties:
no-create: true
no-delete: true
no-update: true
template#private_wan:
type: tosca.nodes.NetworkTemplate
properties:
visibility: private
translation: none
vtn_kind: public
exampleservice-public:
type: tosca.nodes.network.Network
properties:
ip_version: 4
requirements:
- network_template:
node: template#private_wan
relationship: tosca.relationships.UsesNetworkTemplate
- owner:
node: mysite_exampleservice
relationship: tosca.relationships.MemberOfSlice
- connection:
node: mysite_exampleservice
relationship: tosca.relationships.ConnectsToSlice
mysite:
type: tosca.nodes.Site
trusty-server-multi-nic:
type: tosca.nodes.Image
mysite_exampleservice:
description: This slice holds the ExampleService
type: tosca.nodes.Slice
properties:
network: noauto
requirements:
- site:
node: mysite
relationship: tosca.relationships.MemberOfSite
- management:
node: management
relationship: tosca.relationships.ConnectsToNetwork
- exmapleserver:
node: service#exampleservice
relationship: tosca.relationships.MemberOfService
- image:
node: trusty-server-multi-nic
relationship: tosca.relationships.DefaultImage
- default_flavor:
node: m1.small
relationship: tosca.relationships.DefaultFlavor
service#exampleservice:
type: tosca.nodes.ExampleService
requirements:
- management:
node: management
relationship: tosca.relationships.UsesNetwork
properties:
view_url: /admin/exampleservice/exampleservice/$id$/
kind: exampleservice
public_key: { get_artifact: [ SELF, pubkey, LOCAL_FILE] }
private_key_fn: /opt/xos/services/exampleservice/keys/exampleservice_rsa
service_message: hello
artifacts:
pubkey: /opt/xos/services/exampleservice/keys/exampleservice_rsa.pub
tenant#exampletenant1:
type: tosca.nodes.ExampleTenant
properties:
tenant_message: world
requirements:
- tenant:
node: service#exampleservice
relationship: tosca.relationships.TenantOfService
- dependency:
node: mysite_exampleservice
relationship: tosca.relationships.DependsOn