add site-specific config, vtn, and exampleservice config
Change-Id: Id934efd53811d7cac4dac174da5f8935462ee5d9
diff --git a/opencloud/Makefile b/opencloud/Makefile
index 0424950..fd089e6 100644
--- a/opencloud/Makefile
+++ b/opencloud/Makefile
@@ -43,3 +43,24 @@
$(RUN_TOSCA) nodes.yaml
$(RUN_TOSCA) images.yaml
+opencloud: opencloud.yaml
+ @echo "[OPENCLOUD]"
+ $(RUN_TOSCA) opencloud.yaml
+
+vtn: vtn.yaml
+ @echo "[VTN]"
+ $(RUN_TOSCA) vtn.yaml
+
+exampleservice: $(SERVICE_DIR)/exampleservice opencloud-exampleservice.yaml
+ @echo "[EXAMPLESERVICE]"
+ sudo cp id_rsa key_import/exampleservice_rsa
+ sudo cp id_rsa.pub key_import/exampleservice_rsa.pub
+ $(RUN_TOSCA_BOOTSTRAP) $(COMMON_DIR)/tosca/disable-onboarding.yaml
+ $(RUN_TOSCA_BOOTSTRAP) $(SERVICE_DIR)/exampleservice/xos/exampleservice-onboard.yaml
+ $(RUN_TOSCA_BOOTSTRAP) exampleservice-synchronizer.yaml
+ $(RUN_TOSCA_BOOTSTRAP) $(COMMON_DIR)/tosca/enable-onboarding.yaml
+ bash $(COMMON_DIR)/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) services/exampleservice
+ bash $(COMMON_DIR)/wait_for_onboarding_ready.sh $(XOS_BOOTSTRAP_PORT) xos
+ bash $(COMMON_DIR)/wait_for_xos_port.sh $(XOS_UI_PORT)
+ $(RUN_TOSCA) opencloud-exampleservice.yaml
+
diff --git a/opencloud/opencloud-exampleservice.yaml b/opencloud/opencloud-exampleservice.yaml
new file mode 100644
index 0000000..09a7dbc
--- /dev/null
+++ b/opencloud/opencloud-exampleservice.yaml
@@ -0,0 +1,101 @@
+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
+