summaryrefslogtreecommitdiffstats
path: root/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles
diff options
context:
space:
mode:
Diffstat (limited to 'azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles')
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/aria-1.0/aria-1.0.yaml97
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/azure-plugin/azureplugin.yaml1981
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/artifacts.yaml121
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/capabilities.yaml322
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/data.yaml268
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/groups.yaml28
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/interfaces.yaml107
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/nodes.yaml525
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/policies.yaml71
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/relationships.yaml158
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/tosca-simple-1.0.yaml24
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/artifacts.yaml84
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/capabilities.yaml70
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/data.yaml318
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/nodes.yaml260
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/relationships.yaml43
-rw-r--r--azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/tosca-simple-nfv-1.0.yaml21
17 files changed, 4498 insertions, 0 deletions
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/aria-1.0/aria-1.0.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/aria-1.0/aria-1.0.yaml
new file mode 100644
index 0000000..e421150
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/aria-1.0/aria-1.0.yaml
@@ -0,0 +1,97 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+policy_types:
+
+ aria.Plugin:
+ _extensions:
+ shorthand_name: Plugin
+ type_qualified_name: aria:Plugin
+ role: plugin
+ description: >-
+ Policy used to specify plugins used by services. For an operation to be able to use a plugin
+ it must have a matching policy. The name of the policy must be the name of the plugin. The
+ optional properties can be used to further specify plugin selection by the orchestrator.
+ derived_from: tosca.policies.Root
+ properties:
+ version:
+ description: >-
+ Minimum plugin version.
+ type: version
+ required: false
+ enabled:
+ description: >-
+ If the policy is to disable the plugin then it will be ignored and all operations and
+ workflows depending on it will also be disabled.
+ type: boolean
+ default: true
+
+ aria.Workflow:
+ _extensions:
+ shorthand_name: Workflow
+ type_qualified_name: aria:Workflow
+ role: workflow
+ description: >-
+ Policy used to specify custom workflows. A workflow is usually a workload of interconnected
+ calls to operations on nodes and relationships in the service topology. The name of the policy
+ is used as the name of the workflow. Note that it can be the same name as one of the normative
+ lifecycle workflows ("install", "uninstall", etc.), in which case it would be considered an
+ override of the default behavior. If the workflow requires parameters then this base type
+ should be inherited and extended with additional properties.
+ derived_from: tosca.policies.Root
+ properties:
+ implementation:
+ description: >-
+ The interpretation of the implementation string depends on the orchestrator. In ARIA it is
+ the full path to a Python @workflow function that generates a task graph based on the
+ service topology.
+ type: string
+
+ aria.Scaling:
+ _extensions:
+ type_qualified_name: aria:Scaling
+ role: scaling
+ description: >-
+ Scaling.
+ derived_from: tosca.policies.Scaling
+ properties:
+ min_instances:
+ description: >-
+ This property is used to indicate the minimum number of instances that should be created
+ for the associated TOSCA Node Template by a TOSCA orchestrator.
+ type: integer
+ default: 1
+ constraints:
+ - greater_or_equal: 0
+ max_instances:
+ description: >-
+ This property is used to indicate the maximum number of instances that should be created
+ for the associated TOSCA Node Template by a TOSCA orchestrator.
+ type: integer
+ default: 1
+ constraints:
+ - greater_or_equal: 0
+ default_instances:
+ description: >-
+ An optional property that indicates the requested default number of instances that should
+ be the starting number of instances a TOSCA orchestrator should attempt to allocate. Note:
+ The value for this property MUST be in the range between the values set for
+ "min_instances" and "max_instances" properties.
+ type: integer
+ constraints:
+ - greater_or_equal: 0
+ required: false
+ targets:
+ - tosca.nodes.Root
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/azure-plugin/azureplugin.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/azure-plugin/azureplugin.yaml
new file mode 100644
index 0000000..77b61b5
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/azure-plugin/azureplugin.yaml
@@ -0,0 +1,1981 @@
+#
+# Copyright (c) 2017 GigaSpaces Technologies Ltd. All rights reserved.
+#
+# 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_definitions_version: tosca_simple_yaml_1_0
+
+
+topology_template:
+ policies:
+ cloudify-azure-plugin:
+ description: >-
+ azure plugin executes operations.
+ type: aria.Plugin
+ properties:
+ version: 1.4.2
+
+
+data_types:
+
+ aria.azure.datatypes.Config:
+ description: >-
+ azure configuration
+ properties:
+ subscription_id:
+ description: >
+ A Microsoft Azure subscription ID. This is a unique
+ user account in Azure. This can be found in the
+ Subscriptions tab on your dashboard.
+ type: string
+ required: false
+ tenant_id:
+ description: >
+ A Microsoft Azure tenant ID. This can be found in
+ the Azure Active Directory dashboard by accessing
+ your directory. Open the Application Endpoints
+ dialog and your tenant ID will be in the URL for
+ the OAUTH2.0 TOKEN ENDPOINT.
+ type: string
+ required: false
+ client_id:
+ description: >
+ A Microsoft Azure client ID. This can be found in
+ the Azure Active Directory dashboard by accessing
+ your directory. View the Applications tab and select
+ the application used to access Azure APIs. Your
+ client ID can be found by expanding the ACCESS WEB
+ APIS IN OTHER APPLICATIONS tab.
+ type: string
+ required: false
+ client_secret:
+ description: >
+ A Microsoft Azure client secret key. This can be found
+ or generated in the same location as your client ID.
+ type: string
+ required: false
+ scale_name_separator:
+ description: >
+ When scaling resources, a unique name must be sent to
+ the Azure API. Since names are left to the user to
+ manage (the service does not generate unique IDs),
+ this plugin will attempt to append characters or
+ numbers to the end of the resource name when resources
+ are scaled out. This value should be a character, or
+ characters, that will separate the base name from the
+ generated unique characters. For instance, if the
+ base name of a resource is "myvm", the separator is
+ set to "_", and a scale workflow attempts to create
+ another resource, the resulting name could be
+ something like "myvm_1". This field can be left blank.
+ type: string
+ required: false
+ default: "_"
+ scale_name_suffix_chars:
+ description: >
+ A string of characters (ASCII) to be used when
+ generating unique suffix data when scaling resources.
+ See "scale_name_separator" for more information.
+ type: string
+ required: true
+ default: "1234567890"
+
+ aria.azure.datatypes.AgentConfig:
+ properties:
+ install_method:
+ type: string
+ required: false
+ port:
+ type: integer
+ required: false
+
+
+ aria.azure.datatypes.StorageAccountConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163564.aspx
+ properties:
+ accountType:
+ description: >
+ An storage account type (case sensitive)
+ type: string
+ default: Standard_LRS
+ required: true
+
+ aria.azure.datatypes.DataDiskConfig:
+ properties:
+ container_name:
+ type: string
+ description: >
+ Container for the resource.
+ default: vhds
+ size:
+ description: >
+ Size of the Page Blob (Azure disk) in GiB. Maximum of 1023 GiB allowed.
+ type: integer
+ default: 20
+ required: true
+ force_delete:
+ description: >
+ If set to true, the resource's "delete" lifecycle will purge the
+ Azure Data Disk from the Azure Storage Account. If false, the
+ Data Disk is left as-is in the Storage Account.
+ type: boolean
+ default: false
+
+
+ aria.azure.datatypes.FileShareConfig:
+ properties:
+ metadata:
+ description: >
+ Metadata (dict) for the File Share
+ required: false
+ type: string
+ quota:
+ description: >
+ Quote, in GiB, for the maximum size of the file share
+ required: false
+ type: integer
+ fail_on_exist:
+ description: >
+ If true, causes the operation to raise a NonRecoverableError if
+ the file share already exists. If false, issues a warning and
+ continues execution.
+ default: false
+ type: boolean
+
+ aria.azure.datatypes.AddressSpace:
+ description: >
+ Contains the address prefix,typically network CIDR
+ properties:
+ addressPrefixes:
+ required: true
+ type: list
+ entry_schema: string
+
+ aria.azure.datatypes.VirtualNetworkConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163661.aspx
+ properties:
+ addressSpace:
+ default:
+ addressPrefixes:
+ - 172.16.0.0/16
+ required: true
+ type: aria.azure.datatypes.AddressSpace
+ dhcpOptions:
+ required: false
+ type: string
+ subnets:
+ required: false
+ type: string
+
+ aria.azure.datatypes.NetworkSecurityGroupConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163656.aspx
+ properties:
+ securityRules:
+ required: false
+ type: list
+ entry_schema: string
+
+
+
+ aria.azure.datatypes.NetworkSecurityRuleConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163645.aspx
+ properties:
+ description:
+ type: string
+ required: false
+ protocol:
+ type: string
+ required: true
+ sourcePortRange:
+ type: string
+ required: false
+ destinationPortRange:
+ type: string
+ required: false
+ sourceAddressPrefix:
+ type: string
+ required: true
+ destinationAddressPrefix:
+ type: string
+ required: true
+ access:
+ type: string
+ required: true
+ priority:
+ type: integer
+ required: true
+ direction:
+ type: string
+ required: true
+
+ aria.azure.datatypes.SubnetConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163621.aspx
+ properties:
+ addressPrefix:
+ type: string
+ required: false
+ networkSecurityGroup:
+ type: string
+ required: false
+ routeTable:
+ type: string
+ required: false
+
+
+
+
+
+
+
+ aria.azure.datatypes.RouteTableConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt502548.aspx
+ properties:
+ routes:
+ type: string
+ required: false
+
+
+ aria.azure.datatypes.RouteConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt459110.aspx
+ properties:
+ addressPrefix:
+ type: string
+ required: true
+ nextHopType:
+ type: string
+ required: true
+ nextHopIpAddress:
+ type: string
+ required: false
+
+
+ aria.azure.datatype.NetworkInterfaceDnsSettings:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163668.aspx
+ properties:
+ appliedDnsServers:
+ type: list
+ entry_schema: string
+ required: false
+ dnsServers:
+ type: list
+ entry_schema: string
+ required: false
+ internalDnsNameLabel:
+ type: string
+ required: false
+ internalDomainNameSuffix:
+ type: string
+ required: false
+ internalFqdn:
+ type: string
+ required: false
+
+
+ aria.azure.datatypes.NetworkInterfaceCardConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163668.aspx
+ properties:
+ networkSecurityGroups:
+ required: false
+ type: string
+ enableIPForwarding:
+ required: false
+ type: boolean
+ ipConfigurations:
+ required: false
+ type: string
+ dnsSettings:
+ required: false
+ type: aria.azure.datatype.NetworkInterfaceDnsSettings
+
+
+ aria.azure.datatypes.IPConfigurationConfig:
+ properties:
+ privateIPAddress:
+ type: string
+ description: >
+ Static, private IP Address
+ required: false
+ privateIPAllocationMethod:
+ type: string
+ description: >
+ Defines how a private IP address is assigned. Options
+ are Static or Dynamic
+ required: true
+ privateIPAddressVersion:
+ type: string
+ description: >
+ Define the version of the IP protocol
+ required: false
+
+
+ aria.azure.datatypes.PublicIPAddressDnsSettings:
+ description: >
+ See https://docs.microsoft.com/en-gb/rest/api/virtualnetwork/PublicIPAddresses/CreateOrUpdate#definitions_publicipaddressdnssettings
+ properties:
+ domainNameLabel:
+ type: string
+ description: >
+ name refer to the VM
+ required: false
+ fqdn:
+ type: string
+ required: false
+ reverseFqdn:
+ type: string
+ required: false
+
+ aria.azure.datatypes.PublicIPAddressConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163590.aspx
+ properties:
+ publicIPAllocationMethod:
+ type: string
+ description: >
+ Defines whether the IP address is stable or dynamic.
+ Options are Static or Dynamic
+ required: true
+ publicIPAddressVersion:
+ type: string
+ description:
+ Define the version of the public IP.
+ required: false
+ idleTimeoutInMinutes:
+ type: integer
+ description: >
+ Specifies the timeout (in minutes) for the TCP idle connection.
+ The value can be set between 4 and 30 minutes
+ required: false
+ dnsSettings:
+ type: aria.azure.datatypes.PublicIPAddressDnsSettings
+ required: false
+# domainNameLabel:
+# type: string
+# description: >
+# The concatenation of the domain name label and the regionalized
+# DNS zone make up the fully qualified domain name associated
+# with the public IP address.
+# required: false
+# reverseFqdn:
+# type: string
+# description: >
+# A fully qualified domain name that resolves to this
+# public IP address.
+# required: false
+
+
+
+
+
+
+ aria.azure.datatypes.AvailabilitySetConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163607.aspx
+ properties:
+ platformUpdateDomainCount:
+ type: integer
+ required: false
+ platformFaultDomainCount:
+ type: integer
+ required: false
+
+
+
+ aria.azure.datatypes.HardwareProfile:
+ properties:
+ vmSize:
+ required: true
+ type: string
+
+
+ aria.azure.datatypes.ImageReference:
+ properties:
+ publisher:
+ required: true
+ type: string
+ offer:
+ required: true
+ type: string
+ sku:
+ required: true
+ type: string
+ version:
+ required: true
+ type: string
+
+
+ aria.azure.datatypes.StorageProfile:
+ properties:
+ imageReference:
+ required: true
+ type: aria.azure.datatypes.ImageReference
+
+
+
+
+ aria.azure.datatypes.PublicKey:
+ properties:
+ keydata:
+ required: true
+ type: string
+ path:
+ required: true
+ type: string
+
+ aria.azure.datatypes.SSH:
+ properties:
+ publicKeys:
+ required: false
+ type: list
+ entry_schema: aria.azure.datatypes.PublicKey
+
+
+ aria.azure.datatypes.LinuxConfiguration:
+ properties:
+ ssh:
+ required: false
+ type: aria.azure.datatypes.SSH
+ disablePasswordAuthentication:
+ required: false
+ default: true
+ type: boolean
+
+
+ aria.azure.datatypes.OSProfile:
+ properties:
+ computerName:
+ required: true
+ type: string
+ adminUserName:
+ required: true
+ type: string
+ adminPassword:
+ required: true
+ type: string
+ linuxConfiguration:
+ required: false
+ type: aria.azure.datatypes.LinuxConfiguration
+
+
+
+ aria.azure.datatypes.VirtualMachineConfig:
+ description: >
+ https://msdn.microsoft.com/en-us/library/azure/mt163591.aspx
+ properties:
+ hardwareProfile:
+ required: true
+ type: aria.azure.datatypes.HardwareProfile
+ storageProfile:
+ required: true
+ type: aria.azure.datatypes.StorageProfile
+ osProfile:
+ required: true
+ type: aria.azure.datatypes.OSProfile
+
+ aria.azure.datatypes.LoadBalancerConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163574.aspx
+ properties:
+ frontendIPConfigurations:
+ required: false
+ type: string
+ backendAddressPools:
+ required: false
+ type: string
+ loadBalancingRules:
+ required: false
+ type: string
+ probes:
+ required: false
+ type: string
+ inboundNatRules:
+ required: false
+ type: string
+
+
+
+ aria.azure.datatypes.LoadBalancerProbeConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163574.aspx
+ properties:
+ protocol:
+ type: string
+ default: Tcp
+ required: true
+ port:
+ type: integer
+ required: true
+ requestPath:
+ type: string
+ required: false
+ intervalInSeconds:
+ type: integer
+ default: 5
+ required: true
+ numberOfProbes:
+ type: integer
+ default: 16
+ required: true
+
+ aria.azure.datatypes.LoadBalancerIncomingNATRuleConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163574.aspx
+ properties:
+ protocol:
+ type: string
+ default: Tcp
+ required: true
+ frontendPort:
+ type: integer
+ required: true
+ backendPort:
+ type: integer
+ required: true
+
+
+ aria.azure.datatypes.LoadBalancerRuleConfig:
+ description: >
+ See https://msdn.microsoft.com/en-us/library/mt163574.aspx
+ properties:
+ protocol:
+ type: string
+ default: Tcp
+ required: true
+ frontendPort:
+ type: integer
+ required: true
+ backendPort:
+ type: integer
+ required: true
+ enableFloatingIP:
+ type: boolean
+ required: false
+ default: false
+ idleTimeoutInMinutes:
+ type: integer
+ required: false
+ default: 5
+ loadDistribution:
+ type: string
+ required: false
+ default: Default
+
+
+
+
+
+interface_types:
+
+ aria.azure.interfaces.validation:
+ derived_from: tosca.interfaces.Root
+ creation:
+ description: >-
+ creation operation for the openstack validation interface
+ deletion:
+ description: >-
+ deletion operation for the openstack validation interface
+ aria.azure.interfaces.network:
+ derived_from: tosca.interfaces.Root
+ preconfigure:
+ establish:
+ unlink:
+
+node_types:
+
+ aria.azure.nodes.ResourceGroup:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource. Resource group name must be no longer than
+ 80 characters long. It can contain only alphanumeric characters,
+ dash, underscore, opening parenthesis, closing parenthesis,
+ and period. The name cannot end with a period.
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.resourcegroup.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.resourcegroup.delete
+
+
+
+
+
+
+
+ aria.azure.nodes.storage.StorageAccount:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource. Storage account name must be between
+ 3 and 24 characters in length and use numbers and lower-case
+ letters only.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.StorageAccountConfig
+ required: true
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.storage.storageaccount.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.storage.storageaccount.delete
+ requirements:
+ - resource_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.ResourceGroup
+ relationship: cloudify.azure.relationships.contained_in_resource_group
+ occurrences: [ 0, UNBOUNDED ]
+
+
+
+ aria.azure.nodes.storage.DataDisk:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource (include any extension, such as .vhd).
+ Can be up to 80 characters in length and
+ contain lowercase letters, numbers, ".", and "_". Must start
+ with a number or lowercase letter and cannot end with
+ either "_" or "."
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.DataDiskConfig
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.storage.disk.create_data_disk
+ delete: cloudify-azure-plugin > cloudify_azure.resources.storage.disk.delete_data_disk
+ requirements:
+ - storage_account:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.storage.StorageAccount
+ relationship: cloudify.azure.relationships.contained_in_storage_account
+ occurrences: [ 0, UNBOUNDED ]
+
+ aria.azure.nodes.storage.FileShare:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource. Can be up to 63 characters in length and
+ contain lowercase letters, numbers, and dashes. Must start
+ with a number or lowercase letter and cannot contain
+ two consecutive dashes.
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.FileShareConfig
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.storage.file.create_file_share
+
+
+
+
+ aria.azure.nodes.network.VirtualNetwork:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.VirtualNetworkConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.virtualnetwork.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.virtualnetwork.delete
+ requirements:
+ - resource_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.ResourceGroup
+ relationship: cloudify.azure.relationships.contained_in_resource_group
+ occurrences: [ 0, UNBOUNDED ]
+ - storage_account:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.storage.StorageAccount
+ relationship: cloudify.azure.relationships.virtual_network_depends_on_storage
+ occurrences: [ 0, UNBOUNDED ]
+
+
+
+ aria.azure.nodes.network.NetworkSecurityGroup:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.NetworkSecurityGroupConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.networksecuritygroup.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.networksecuritygroup.delete
+ requirements:
+ - resource_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.ResourceGroup
+ relationship: cloudify.azure.relationships.contained_in_resource_group
+ occurrences: [ 0, UNBOUNDED ]
+
+
+
+ aria.azure.nodes.network.NetworkSecurityRule:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ network_security_group_name:
+ type: string
+ description: >
+ Name of the Network Security Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Network Security Groupnode)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.NetworkSecurityRuleConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.networksecurityrule.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.networksecurityrule.delete
+ requirements:
+ - resource_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.ResourceGroup
+ relationship: cloudify.azure.relationships.contained_in_resource_group
+ occurrences: [ 0, UNBOUNDED ]
+ - network_security_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.NetworkSecurityGroup
+ relationship: cloudify.azure.relationships.nic_connected_to_network_security_group
+ occurrences: [ 0, UNBOUNDED ]
+
+
+
+ aria.azure.nodes.network.Subnet:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ virtual_network_name:
+ type: string
+ description: >
+ Name of the Virtual Network that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Virtual Network node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.SubnetConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.subnet.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.subnet.delete
+ requirements:
+ - virtual_network:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.VirtualNetwork
+ relationship: cloudify.azure.relationships.contained_in_virtual_network
+ occurrences: [ 0, UNBOUNDED ]
+ - subnet_dependency:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.Subnet
+ relationship: cloudify.azure.relationships.depends_on_subnet
+ occurrences: [ 0, UNBOUNDED ]
+
+
+
+ aria.azure.nodes.network.RouteTable:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.RouteTableConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.routetable.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.routetable.delete
+ requirements:
+ - virtual_subnet:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.Subnet
+ relationship: cloudify.azure.relationships.route_table_attached_to_subnet
+ occurrences: [ 0, UNBOUNDED ]
+
+ aria.azure.nodes.network.Route:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ route_table_name:
+ type: string
+ description: >
+ Name of the Network Security Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Virtual Network node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.RouteConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.route.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.route.delete
+ requirements:
+ - route_table:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.RouteTable
+ relationship: cloudify.azure.relationships.depends_on_route_table
+ occurrences: [ 0, UNBOUNDED ]
+
+
+ aria.azure.nodes.network.NetworkInterfaceCard:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ primary:
+ description: >
+ When using multiple Network Interfaces, a primary must be set
+ required: false
+ default: false
+ type: boolean
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.NetworkInterfaceCardConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.networkinterfacecard.create
+ configure: cloudify-azure-plugin > cloudify_azure.resources.network.networkinterfacecard.configure
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.networkinterfacecard.delete
+ requirements:
+ - resource_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.ResourceGroup
+ relationship: cloudify.azure.relationships.contained_in_resource_group
+ occurrences: [ 0, UNBOUNDED ]
+ - ip_config:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.IPConfiguration
+ relationship: cloudify.azure.relationships.nic_connected_to_ip_configuration
+ occurrences: [ 0, UNBOUNDED ]
+ - security_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.NetworkSecurityGroup
+ relationship: cloudify.azure.relationships.nic_connected_to_network_security_group
+ occurrences: [ 0, UNBOUNDED ]
+
+
+
+ aria.azure.nodes.network.IPConfiguration:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.IPConfigurationConfig
+ required: true
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ requirements:
+ - subnet:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.Subnet
+ relationship: cloudify.azure.relationships.ip_configuration_connected_to_subnet
+ occurrences: [ 0, UNBOUNDED ]
+ - ipaddress:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.PublicIPAddress
+ relationship: cloudify.azure.relationships.ip_configuration_connected_to_public_ip
+ occurrences: [ 0, UNBOUNDED ]
+ occurrences: [ 0, UNBOUNDED ]
+
+ aria.azure.nodes.network.PublicIPAddress:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.PublicIPAddressConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.publicipaddress.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.publicipaddress.delete
+ requirements:
+ - resource_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.ResourceGroup
+ relationship: cloudify.azure.relationships.contained_in_resource_group
+ occurrences: [ 0, UNBOUNDED ]
+
+ aria.azure.nodes.compute.AvailabilitySet:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.AvailabilitySetConfig
+ required: true
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.compute.availabilityset.create
+ delete: cloudify-azure-plugin > cloudify_azure.resources.compute.availabilityset.delete
+
+
+ aria.azure.nodes.compute.VirtualMachine:
+ derived_from: tosca.nodes.Compute
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ use_public_ip:
+ type: boolean
+ description: >
+ Tells the deployment to use the public IP (if available) of the resource
+ for Cloudify Agent connections
+ default: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ plan:
+ description: >
+ Specifies information about the marketplace image used to create the virtual
+ machine. This element is only used for marketplace images.
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.VirtualMachineConfig
+ required: true
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ ip:
+ description: |
+ Property specifying the IP address of the resource to
+ use for the agent installer.
+ type: string
+ required: false
+ os_family:
+ description: |
+ Property specifying what type of operating system family
+ this compute node will run.
+ default: windows
+ type: string
+ agent_config:
+ type: aria.azure.datatypes.AgentConfig
+ default:
+ install_method: remote
+ port: 5985
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.compute.virtualmachine.create
+# configure:
+# implementation: cloudify-azure-plugin > cloudify_azure.resources.compute.virtualmachine.configure
+# inputs:
+# command_to_execute:
+# description: >
+# This is the command that the CustomScriptExtension extension will
+# execute. The file_uris below will be downloaded and this property
+# should specify a command to start the execution of one of them.
+# default: powershell -ExecutionPolicy Unrestricted -file ps_enable_winrm_http.ps1
+# file_uris:
+# default:
+# - https://raw.githubusercontent.com/cloudify-cosmo/cloudify-azure-plugin/1.4/scripts/ps_enable_winrm_http.ps1
+ delete: cloudify-azure-plugin > cloudify_azure.resources.compute.virtualmachine.delete
+ requirements:
+ - resource_group:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.ResourceGroup
+ relationship: cloudify.azure.relationships.contained_in_resource_group
+ occurrences: [ 0, UNBOUNDED ]
+ - nic:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.network.NetworkInterfaceCard
+ relationship: cloudify.azure.relationships.connected_to_nic
+ occurrences: [ 0, UNBOUNDED ]
+ - storage_account:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.storage.StorageAccount
+ relationship: cloudify.azure.relationships.connected_to_storage_account
+ - data_disk:
+ capability: tosca.capabilities.Node
+ node: aria.azure.nodes.storage.DataDisk
+ relationship: cloudify.azure.relationships.vm_connected_to_datadisk
+ occurrences: [ 0, UNBOUNDED ]
+
+
+
+ aria.azure.nodes.network.LoadBalancer:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.LoadBalancerConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.create
+ configure: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.configure
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.delete
+
+
+
+
+ aria.azure.nodes.network.LoadBalancer.BackendAddressPool:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ load_balancer_name:
+ type: string
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.create_backend_pool
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.delete_backend_pool
+
+
+
+ aria.azure.nodes.network.LoadBalancer.Probe:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ load_balancer_name:
+ type: string
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.LoadBalancerProbeConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.create_probe
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.delete_probe
+
+
+ aria.azure.nodes.network.LoadBalancer.IncomingNATRule:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ load_balancer_name:
+ type: string
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.LoadBalancerIncomingNATRuleConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.create_incoming_nat_rule
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.delete_incoming_nat_rule
+
+
+
+ aria.azure.nodes.network.LoadBalancer.Rule:
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ type: string
+ description: >
+ Name for the resource.
+ required: false
+ resource_group_name:
+ type: string
+ description: >
+ Name of the Resource Group that the existing resource belongs to
+ (this is only useful when not using a relationship between a resource
+ node and a Resource Group node)
+ required: false
+ load_balancer_name:
+ type: string
+ required: false
+ location:
+ type: string
+ description: >
+ Specifies the supported Azure location for the resource
+ required: false
+ tags:
+ description: >
+ Specifies a dictionary of one or more name and value pairs that describe a tag
+ required: false
+ type: string
+ resource_config:
+ description: >
+ A dictionary of values to pass as properties when creating the resource
+ type: aria.azure.datatypes.LoadBalancerRuleConfig
+ required: false
+ use_external_resource:
+ description: >
+ Indicate whether the resource exists or if Cloudify should create the resource
+ type: boolean
+ default: false
+ required: true
+ retry_after:
+ description: >
+ Overrides the Azure-specified "retry_after" response. This property
+ will set the number of seconds for each task retry interval (in the
+ case of iteratively checking the status of an asynchronous operation)
+ type: integer
+ required: false
+ azure_config:
+ description: >
+ A dictionary of values to pass to authenticate with the Azure API
+ type: aria.azure.datatypes.Config
+ required: false
+ interfaces:
+ Standard:
+ create: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.create_rule
+ delete: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.delete_rule
+
+
+
+
+
+relationship_types:
+ cloudify.azure.relationships.contained_in_resource_group:
+ derived_from: tosca.relationships.HostedOn
+
+ cloudify.azure.relationships.contained_in_storage_account:
+ derived_from: tosca.relationships.HostedOn
+
+ cloudify.azure.relationships.contained_in_virtual_network:
+ derived_from: tosca.relationships.HostedOn
+
+ cloudify.azure.relationships.contained_in_network_security_group:
+ derived_from: tosca.relationships.HostedOn
+
+ cloudify.azure.relationships.contained_in_route_table:
+ derived_from: tosca.relationships.HostedOn
+
+ cloudify.azure.relationships.contained_in_load_balancer:
+ derived_from: tosca.relationships.HostedOn
+
+ cloudify.azure.relationships.depends_on_route_table:
+ derived_from: tosca.relationships.DependsOn
+
+ cloudify.azure.relationships.depends_on_subnet:
+ derived_from: tosca.relationships.DependsOn
+
+ cloudify.azure.relationships.virtual_network_depends_on_storage:
+ derived_from: tosca.relationships.DependsOn
+
+ cloudify.azure.relationships.network_security_group_attached_to_subnet:
+ derived_from: tosca.relationships.ConnectsTo
+ interfaces:
+ Configure:
+ add_source: cloudify-azure-plugin > cloudify_azure.resources.network.subnet.attach_network_security_group
+ remove_source: cloudify-azure-plugin > cloudify_azure.resources.network.subnet.detach_network_security_group
+
+ cloudify.azure.relationships.route_table_attached_to_subnet:
+ derived_from: tosca.relationships.ConnectsTo
+ interfaces:
+ Configure:
+ add_source: cloudify-azure-plugin > cloudify_azure.resources.network.subnet.attach_route_table
+ remove_source: cloudify-azure-plugin > cloudify_azure.resources.network.subnet.detach_route_table
+
+ cloudify.azure.relationships.nic_connected_to_network_security_group:
+ derived_from: tosca.relationships.ConnectsTo
+
+ cloudify.azure.relationships.nic_connected_to_ip_configuration:
+ derived_from: tosca.relationships.ConnectsTo
+ interfaces:
+ Configure:
+ pre_configure_source: cloudify-azure-plugin > cloudify_azure.resources.network.networkinterfacecard.attach_ip_configuration
+
+ cloudify.azure.relationships.lb_connected_to_ip_configuration:
+ derived_from: tosca.relationships.ConnectsTo
+ interfaces:
+ Configure:
+ preconfigure: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.attach_ip_configuration
+
+ cloudify.azure.relationships.ip_configuration_connected_to_subnet:
+ derived_from: tosca.relationships.ConnectsTo
+
+ cloudify.azure.relationships.ip_configuration_connected_to_public_ip:
+ derived_from: tosca.relationships.ConnectsTo
+
+ cloudify.azure.relationships.connected_to_storage_account:
+ derived_from: tosca.relationships.ConnectsTo
+
+ cloudify.azure.relationships.connected_to_data_disk:
+ derived_from: tosca.relationships.ConnectsTo
+ interfaces:
+ Configure:
+ add_target: cloudify-azure-plugin > cloudify_azure.resources.compute.virtualmachine.attach_disk
+ remove_target: cloudify-azure-plugin > cloudify_azure.resources.compute.virtualmachine.detach_disk
+
+
+ cloudify.azure.relationships.connected_to_nic:
+ derived_from: tosca.relationships.ConnectsTo
+
+
+ cloudify.azure.relationships.connected_to_availability_set:
+ derived_from: tosca.relationships.ConnectsTo
+
+ cloudify.azure.relationships.connected_to_ip_configuration:
+ derived_from: tosca.relationships.ConnectsTo
+
+ cloudify.azure.relationships.connected_to_lb_be_pool:
+ derived_from: tosca.relationships.ConnectsTo
+
+ cloudify.azure.relationships.connected_to_lb_probe:
+ derived_from: tosca.relationships.ConnectsTo
+
+ cloudify.azure.relationships.vmx_contained_in_vm:
+ derived_from: tosca.relationships.HostedOn
+
+ cloudify.azure.relationships.nic_connected_to_lb_be_pool:
+ derived_from: tosca.relationships.ConnectsTo
+ interfaces:
+ Configure:
+ add_target: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.attach_nic_to_backend_pool
+ remove_target: cloudify-azure-plugin > cloudify_azure.resources.network.loadbalancer.detach_nic_from_backend_pool
+
+ cloudify.azure.relationships.vm_connected_to_datadisk:
+ derived_from: tosca.relationships.ConnectsTo
+ interfaces:
+ Configure:
+ add_target:
+ implementation: cloudify-azure-plugin > cloudify_azure.resources.compute.virtualmachine.attach_data_disk
+ inputs:
+ lun:
+ description: >
+ Specifies the logical unit number of the data disk in the VM
+ default: 0
+ required: true
+ type: integer
+ remove_target: cloudify-azure-plugin > cloudify_azure.resources.compute.virtualmachine.detach_data_disk
+
+
+
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/artifacts.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/artifacts.yaml
new file mode 100644
index 0000000..945622f
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/artifacts.yaml
@@ -0,0 +1,121 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+artifact_types:
+
+ tosca.artifacts.Root:
+ _extensions:
+ shorthand_name: Root # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Root
+ specification: tosca-simple-1.0
+ specification_section: 5.3.1
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_ARTIFACTS_ROOT'
+ description: >-
+ This is the default (root) TOSCA Artifact Type definition that all other TOSCA base Artifact Types derive from.
+
+ tosca.artifacts.File:
+ _extensions:
+ shorthand_name: File
+ type_qualified_name: tosca:File
+ specification: tosca-simple-1.0
+ specification_section: 5.3.2
+ description: >-
+ This artifact type is used when an artifact definition needs to have its associated file simply treated as a file and no special handling/handlers are invoked (i.e., it is not treated as either an implementation or deployment artifact type).
+ derived_from: tosca.artifacts.Root
+
+ #
+ # Deployments
+ #
+
+ tosca.artifacts.Deployment:
+ _extensions:
+ shorthand_name: Deployment # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Deployment
+ specification: tosca-simple-1.0
+ specification_section: 5.3.3.1
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_ARTIFACTS_DEPLOYMENT'
+ description: >-
+ This artifact type represents the parent type for all deployment artifacts in TOSCA. This class of artifacts typically
+ represents a binary packaging of an application or service that is used to install/create or deploy it as part of a node's
+ lifecycle.
+ derived_from: tosca.artifacts.Root
+
+ tosca.artifacts.Deployment.Image:
+ _extensions:
+ shorthand_name: Deployment.Image
+ type_qualified_name: tosca:Deployment.Image
+ specification: tosca-simple-1.0
+ specification_section: 5.3.3.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_ARTIFACTS_DEPLOYMENT_IMAGE'
+ description: >-
+ This artifact type represents a parent type for any "image" which is an opaque packaging of a TOSCA Node's deployment
+ (whether real or virtual) whose contents are typically already installed and pre-configured (i.e., "stateful") and prepared
+ to be run on a known target container.
+ derived_from: tosca.artifacts.Deployment
+
+ tosca.artifacts.Deployment.Image.VM:
+ _extensions:
+ shorthand_name: Deployment.VM # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Deployment.VM
+ specification: tosca-simple-1.0
+ specification_section: 5.3.3.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_ARTIFACTS_DEPLOY_IMAGE_VM'
+ description: >-
+ This artifact represents the parent type for all Virtual Machine (VM) image and container formatted deployment artifacts.
+ These images contain a stateful capture of a machine (e.g., server) including operating system and installed software along
+ with any configurations and can be run on another machine using a hypervisor which virtualizes typical server (i.e.,
+ hardware) resources.
+ derived_from: tosca.artifacts.Deployment
+
+ #
+ # Implementations
+ #
+
+ tosca.artifacts.Implementation:
+ _extensions:
+ shorthand_name: Implementation # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Implementation
+ specification: tosca-simple-1.0
+ specification_section: 5.3.4.1
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_ARTIFACTS_IMPLEMENTATION'
+ description: >-
+ This artifact type represents the parent type for all implementation artifacts in TOSCA. These artifacts are used to
+ implement operations of TOSCA interfaces either directly (e.g., scripts) or indirectly (e.g., config. files).
+ derived_from: tosca.artifacts.Root
+
+ tosca.artifacts.Implementation.Bash:
+ _extensions:
+ shorthand_name: Implementation.Bash # ARIA NOTE: mistake in spec? shouldn't we have "Implementation." as prefix?
+ type_qualified_name: tosca:Implementation.Bash
+ specification: tosca-simple-1.0
+ specification_section: 5.3.4.3
+ description: >-
+ This artifact type represents a Bash script type that contains Bash commands that can be executed on the Unix Bash shell.
+ derived_from: tosca.artifacts.Implementation
+ mime_type: application/x-sh
+ file_ext: [ sh ]
+
+ tosca.artifacts.Implementation.Python:
+ _extensions:
+ shorthand_name: Implementation.Python # ARIA NOTE: mistake in spec? shouldn't we have "Implementation." as prefix?
+ type_qualified_name: tosca:Implementation.Python
+ specification: tosca-simple-1.0
+ specification_section: 5.3.4.4
+ description: >-
+ This artifact type represents a Python file that contains Python language constructs that can be executed within a Python
+ interpreter.
+ derived_from: tosca.artifacts.Implementation
+ mime_type: application/x-python
+ file_ext: [ py ]
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/capabilities.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/capabilities.yaml
new file mode 100644
index 0000000..66a4046
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/capabilities.yaml
@@ -0,0 +1,322 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+capability_types:
+
+ tosca.capabilities.Root:
+ _extensions:
+ shorthand_name: Root # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Root
+ specification: tosca-simple-1.0
+ specification_section: 5.4.1
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_ROOT'
+ description: >-
+ This is the default (root) TOSCA Capability Type definition that all other TOSCA Capability Types derive from.
+
+ tosca.capabilities.Node:
+ _extensions:
+ shorthand_name: Node
+ type_qualified_name: tosca:Node
+ specification: tosca-simple-1.0
+ specification_section: 5.4.2
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_NODE'
+ role: feature
+ description: >-
+ The Node capability indicates the base capabilities of a TOSCA Node Type.
+ derived_from: tosca.capabilities.Root
+
+ tosca.capabilities.Container:
+ _extensions:
+ shorthand_name: Container
+ type_qualified_name: tosca:Container
+ specification: tosca-simple-1.0
+ specification_section: 5.4.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_CONTAINER'
+ role: host
+ description: >-
+ The Container capability, when included on a Node Type or Template definition, indicates that the node can act as a container
+ for (or a host for) one or more other declared Node Types.
+ derived_from: tosca.capabilities.Root
+ properties:
+ num_cpus:
+ description: >-
+ Number of (actual or virtual) CPUs associated with the Compute node.
+ type: integer
+ constraints:
+ - greater_or_equal: 1
+ required: false
+ cpu_frequency:
+ description: >-
+ Specifies the operating frequency of CPU's core. This property expresses the expected frequency of one (1) CPU as
+ provided by the property "num_cpus".
+ type: scalar-unit.frequency
+ constraints:
+ - greater_or_equal: 0.1 GHz
+ required: false
+ disk_size:
+ description: >-
+ Size of the local disk available to applications running on the Compute node (default unit is MB).
+ type: scalar-unit.size
+ constraints:
+ - greater_or_equal: 0 MB
+ required: false
+ mem_size:
+ description: >-
+ Size of memory available to applications running on the Compute node (default unit is MB).
+ type: scalar-unit.size
+ constraints:
+ - greater_or_equal: 0 MB
+ required: false
+
+ tosca.capabilities.Attachment:
+ _extensions:
+ shorthand_name: Attachment
+ type_qualified_name: tosca:Attachment
+ specification: tosca-simple-1.0
+ specification_section: 5.4.8
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_ATTACHMENT'
+ description: >-
+ This is the default TOSCA type that should be used or extended to define an attachment capability of a (logical)
+ infrastructure device node (e.g., BlockStorage node).
+ derived_from: tosca.capabilities.Root
+
+ tosca.capabilities.OperatingSystem:
+ _extensions:
+ shorthand_name: OperatingSystem
+ type_qualified_name: tosca:OperatingSystem
+ specification: tosca-simple-1.0
+ specification_section: 5.4.9
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_OPSYS'
+ description: >-
+ This is the default TOSCA type that should be used to express an Operating System capability for a node.
+ derived_from: tosca.capabilities.Root
+ properties:
+ architecture:
+ description: >-
+ The Operating System (OS) architecture. Examples of valid values include: x86_32, x86_64, etc.
+ type: string
+ required: false
+ type:
+ description: >-
+ The Operating System (OS) type. Examples of valid values include: linux, aix, mac, windows, etc.
+ type: string
+ required: false
+ distribution:
+ description: >-
+ The Operating System (OS) distribution. Examples of valid values for a "type" of "Linux" would include: debian, fedora,
+ rhel and ubuntu.
+ type: string
+ required: false
+ version:
+ description: >-
+ The Operating System version.
+ type: version
+ required: false
+
+ tosca.capabilities.Scalable:
+ _extensions:
+ shorthand_name: Scalable
+ type_qualified_name: tosca:Scalable
+ specification: tosca-simple-1.0
+ specification_section: 5.4.10
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_SCALABLE'
+ role: scaling
+ description: >-
+ This is the default TOSCA type that should be used to express a scalability capability for a node.
+ derived_from: tosca.capabilities.Root
+ properties:
+ min_instances:
+ description: >-
+ This property is used to indicate the minimum number of instances that should be created for the associated TOSCA Node
+ Template by a TOSCA orchestrator.
+ type: integer
+ default: 1
+ max_instances:
+ description: >-
+ This property is used to indicate the maximum number of instances that should be created for the associated TOSCA Node
+ Template by a TOSCA orchestrator.
+ type: integer
+ default: 1
+ default_instances:
+ description: >-
+ An optional property that indicates the requested default number of instances that should be the starting number of
+ instances a TOSCA orchestrator should attempt to allocate. Note: The value for this property MUST be in the range between
+ the values set for "min_instances" and "max_instances" properties.
+ type: integer
+ required: false
+
+ #
+ # Endpoints
+ #
+
+ tosca.capabilities.Endpoint:
+ _extensions:
+ shorthand_name: Endpoint
+ type_qualified_name: tosca:Endpoint
+ specification: tosca-simple-1.0
+ specification_section: 5.4.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_ENDPOINT'
+ description: >-
+ This is the default TOSCA type that should be used or extended to define a network endpoint capability. This includes the information to express a basic endpoint with a single port or a complex endpoint with multiple ports. By default the Endpoint is assumed to represent an address on a private network unless otherwise specified.
+ derived_from: tosca.capabilities.Root
+ properties:
+ protocol:
+ description: >-
+ The name of the protocol (i.e., the protocol prefix) that the endpoint accepts (any OSI Layer 4-7 protocols). Examples:
+ http, https, ftp, tcp, udp, etc.
+ type: string
+ default: tcp
+ required: true
+ port:
+ description: >-
+ The optional port of the endpoint.
+ type: tosca.datatypes.network.PortDef
+ required: false
+ secure:
+ description: >-
+ Requests for the endpoint to be secure and use credentials supplied on the ConnectsTo relationship.
+ type: boolean
+ default: false
+ required: false
+ url_path:
+ description: >-
+ The optional URL path of the endpoint's address if applicable for the protocol.
+ type: string
+ required: false
+ port_name:
+ description: >-
+ The optional name (or ID) of the network port this endpoint should be bound to.
+ type: string
+ required: false
+ network_name:
+ description: >-
+ The optional name (or ID) of the network this endpoint should be bound to. network_name: PRIVATE | PUBLIC |
+ <network_name> | <network_id>.
+ type: string
+ default: PRIVATE
+ required: false
+ initiator:
+ description: >-
+ The optional indicator of the direction of the connection.
+ type: string
+ constraints:
+ - valid_values: [ source, target, peer ]
+ default: source
+ required: false
+ ports:
+ description: >-
+ The optional map of ports the Endpoint supports (if more than one).
+ type: map
+ entry_schema:
+ type: tosca.datatypes.network.PortSpec
+ constraints:
+ - min_length: 1
+ required: false
+ attributes:
+ ip_address:
+ description: >-
+ Note: This is the IP address as propagated up by the associated node's host (Compute) container.
+ type: string
+
+ tosca.capabilities.Endpoint.Public:
+ _extensions:
+ shorthand_name: Endpoint.Public
+ type_qualified_name: tosca:Endpoint.Public
+ specification: tosca-simple-1.0
+ specification_section: 5.4.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_ENDPOINT_PUBLIC'
+ description: >-
+ This capability represents a public endpoint which is accessible to the general internet (and its public IP address ranges).
+
+ This public endpoint capability also can be used to create a floating (IP) address that the underlying network assigns from a
+ pool allocated from the application's underlying public network. This floating address is managed by the underlying network
+ such that can be routed an application's private address and remains reliable to internet clients.
+ derived_from: tosca.capabilities.Endpoint
+ properties:
+ network_name:
+ type: string
+ constraints:
+ - equal: PUBLIC
+ default: PUBLIC
+ floating:
+ description: >-
+ Indicates that the public address should be allocated from a pool of floating IPs that are associated with the network.
+ type: boolean
+ default: false
+ status: experimental
+ dns_name:
+ description: >-
+ The optional name to register with DNS.
+ type: string
+ required: false
+ status: experimental
+
+ tosca.capabilities.Endpoint.Admin:
+ _extensions:
+ shorthand_name: Endpoint.Admin
+ type_qualified_name: tosca:Endpoint.Admin
+ specification: tosca-simple-1.0
+ specification_section: 5.4.6
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_ENDPOINT_ADMIN'
+ description: >-
+ This is the default TOSCA type that should be used or extended to define a specialized administrator endpoint capability.
+ derived_from: tosca.capabilities.Endpoint
+ properties:
+ secure:
+ description: >-
+ Requests for the endpoint to be secure and use credentials supplied on the ConnectsTo relationship.
+ type: boolean
+ constraints:
+ - equal: true
+ default: true
+
+ tosca.capabilities.Endpoint.Database:
+ _extensions:
+ shorthand_name: Endpoint.Database
+ type_qualified_name: tosca:Endpoint.Database
+ specification: tosca-simple-1.0
+ specification_section: 5.4.7
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_ENDPOINT_DATABASE'
+ description: >-
+ This is the default TOSCA type that should be used or extended to define a specialized database endpoint capability.
+ derived_from: tosca.capabilities.Endpoint
+
+ #
+ # Network
+ #
+
+ tosca.capabilities.network.Bindable:
+ _extensions:
+ shorthand_name: Bindable # ARIA NOTE: mistake in spec? has "network." as a prefix
+ type_qualified_name: tosca:Bindable
+ specification: tosca-simple-1.0
+ specification_section: 5.4.11
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_NETWORK_BINDABLE'
+ description: >-
+ A node type that includes the Bindable capability indicates that it can be bound to a logical network association via a
+ network port.
+ derived_from: tosca.capabilities.Node
+
+ tosca.capabilities.network.Linkable:
+ _extensions:
+ shorthand_name: Linkable
+ type_qualified_name: tosca:Linkable
+ specification: tosca-simple-1.0
+ specification_section: 7.5.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_CAPABILITIES_NETWORK_LINKABLE'
+ description: >-
+ A node type that includes the Linkable capability indicates that it can be pointed by tosca.relationships.network.LinksTo
+ relationship type.
+ derived_from: tosca.capabilities.Node
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/data.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/data.yaml
new file mode 100644
index 0000000..61d4186
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/data.yaml
@@ -0,0 +1,268 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+data_types:
+
+ #
+ # Primitive
+ #
+
+ timestamp:
+ _extensions:
+ coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_timestamp
+
+ version:
+ _extensions:
+ coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_version
+ type_qualified_name: tosca:version
+ specification: tosca-simple-1.0
+ specification_section: 3.2.2
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_VERSION'
+
+ range:
+ _extensions:
+ coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_range
+ type_qualified_name: tosca:range
+ specification: tosca-simple-1.0
+ specification_section: 3.2.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_RANGE'
+
+ #
+ # With entry schema
+ #
+
+ list:
+ _extensions:
+ use_entry_schema: true
+ coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_list
+ type_qualified_name: tosca:list
+ specification: tosca-simple-1.0
+ specification_section: 3.2.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_LIST'
+
+ map:
+ _extensions:
+ use_entry_schema: true
+ coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_map_value
+ type_qualified_name: tosca:map
+ specification: tosca-simple-1.0
+ specification_section: 3.2.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_MAP'
+
+ #
+ # Scalar
+ #
+
+ scalar-unit.size:
+ _extensions:
+ coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_scalar_unit_size
+ type_qualified_name: tosca:scalar-unit.size
+ specification: tosca-simple-1.0
+ specification_section: 3.2.6.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_SCALAR_UNIT_SIZE'
+
+ scalar-unit.time:
+ _extensions:
+ coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_scalar_unit_time
+ type_qualified_name: tosca:scalar-unit.time
+ specification: tosca-simple-1.0
+ specification_section: 3.2.6.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_SCALAR_UNIT_TIME'
+
+ scalar-unit.frequency:
+ _extensions:
+ coerce_value: aria_extension_tosca.simple_v1_0.data_types.coerce_scalar_unit_frequency
+ type_qualified_name: tosca:scalar-unit.frequency
+ specification: tosca-simple-1.0
+ specification_section: 3.2.6.6
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_SCALAR_UNIT_FREQUENCY'
+
+ #
+ # Complex
+ #
+
+ tosca.datatypes.Root:
+ _extensions:
+ shorthand_name: Root # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Root
+ specification: tosca-simple-1.0
+ specification_section: 5.2.1
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_ROOT'
+ description: >-
+ This is the default (root) TOSCA Root Type definition that all complex TOSCA Data Types derive from.
+
+ tosca.datatypes.Credential:
+ _extensions:
+ shorthand_name: Credential
+ type_qualified_name: tosca:Credential
+ specification: tosca-simple-1.0
+ specification_section: 5.2.2
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_CREDENTIAL'
+ description: >-
+ The Credential type is a complex TOSCA data Type used when describing authorization credentials used to access network
+ accessible resources.
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ description: >-
+ The optional protocol name.
+ type: string
+ required: false
+ token_type:
+ description: >-
+ The required token type.
+ type: string
+ default: password
+ token:
+ description: >-
+ The required token used as a credential for authorization or access to a networked resource.
+ type: string
+ required: false
+ keys:
+ description: >-
+ The optional list of protocol-specific keys or assertions.
+ type: map
+ entry_schema:
+ type: string
+ required: false
+ user:
+ description: >-
+ The optional user (name or ID) used for non-token based credentials.
+ type: string
+ required: false
+
+ tosca.datatypes.network.NetworkInfo:
+ _extensions:
+ shorthand_name: NetworkInfo
+ type_qualified_name: tosca:NetworkInfo
+ specification: tosca-simple-1.0
+ specification_section: 5.2.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_NETWORKINFO'
+ description: >-
+ The Network type is a complex TOSCA data type used to describe logical network information.
+ derived_from: tosca.datatypes.Root
+ properties:
+ network_name:
+ description: >-
+ The name of the logical network. e.g., "public", "private", "admin". etc.
+ type: string
+ required: false
+ network_id:
+ description: >-
+ The unique ID of for the network generated by the network provider.
+ type: string
+ required: false
+ addresses:
+ description: >-
+ The list of IP addresses assigned from the underlying network.
+ type: list
+ entry_schema:
+ type: string
+ required: false
+
+ tosca.datatypes.network.PortInfo:
+ _extensions:
+ shorthand_name: PortInfo
+ type_qualified_name: tosca:PortInfo
+ specification: tosca-simple-1.0
+ specification_section: 5.2.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_PORTINFO'
+ description: >-
+ The PortInfo type is a complex TOSCA data type used to describe network port information.
+ derived_from: tosca.datatypes.Root
+ properties:
+ port_name:
+ description: >-
+ The logical network port name.
+ type: string
+ required: false
+ port_id:
+ description: >-
+ The unique ID for the network port generated by the network provider.
+ type: string
+ required: false
+ network_id:
+ description: >-
+ The unique ID for the network.
+ type: string
+ required: false
+ mac_address:
+ description: >-
+ The unique media access control address (MAC address) assigned to the port.
+ type: string
+ required: false
+ addresses:
+ description: >-
+ The list of IP address(es) assigned to the port.
+ type: list
+ entry_schema:
+ type: string
+ required: false
+
+ tosca.datatypes.network.PortDef:
+ _extensions:
+ shorthand_name: PortDef
+ type_qualified_name: tosca:PortDef
+ specification: tosca-simple-1.0
+ specification_section: 5.2.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_PORTDEF'
+ description: >-
+ The PortDef type is a TOSCA data Type used to define a network port.
+ derived_from: integer # ARIA NOTE: we allow deriving from primitives
+ constraints:
+ - in_range: [ 1, 65535 ]
+
+ tosca.datatypes.network.PortSpec:
+ _extensions:
+ shorthand_name: PortSpec
+ type_qualified_name: tosca:PortSpec
+ specification: tosca-simple-1.0
+ specification_section: 5.2.6
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#TYPE_TOSCA_DATA_PORTSPEC'
+ description: >-
+ The PortSpec type is a complex TOSCA data Type used when describing port specifications for a network connection.
+ derived_from: tosca.datatypes.Root
+ properties:
+ protocol:
+ description: >-
+ The required protocol used on the port.
+ type: string
+ constraints:
+ - valid_values: [ udp, tcp, igmp ]
+ default: tcp
+ source:
+ description: >-
+ The optional source port.
+ type: tosca.datatypes.network.PortDef
+ required: false
+ source_range:
+ description: >-
+ The optional range for source port.
+ type: range
+ constraints:
+ - in_range: [ 1, 65535 ]
+ required: false
+ target:
+ description: >-
+ The optional target port.
+ type: tosca.datatypes.network.PortDef
+ required: false
+ target_range:
+ description: >-
+ The optional range for target port.
+ type: range
+ constraints:
+ - in_range: [ 1, 65535 ]
+ required: false
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/groups.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/groups.yaml
new file mode 100644
index 0000000..66cc25f
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/groups.yaml
@@ -0,0 +1,28 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+group_types:
+
+ tosca.groups.Root:
+ _extensions:
+ shorthand_name: Root # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Root
+ specification: tosca-simple-1.0
+ specification_section: 5.9.1
+ description: >-
+ This is the default (root) TOSCA Group Type definition that all other TOSCA base Group Types derive from.
+ interfaces:
+ Standard:
+ type: tosca.interfaces.node.lifecycle.Standard
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/interfaces.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/interfaces.yaml
new file mode 100644
index 0000000..29cc8dd
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/interfaces.yaml
@@ -0,0 +1,107 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+interface_types:
+
+ tosca.interfaces.Root:
+ _extensions:
+ shorthand_name: Root # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Root
+ specification: tosca-simple-1.0
+ specification_section: 5.7.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#_Ref384391055'
+ description: >-
+ This is the default (root) TOSCA Interface Type definition that all other TOSCA Interface Types derive from.
+
+ tosca.interfaces.node.lifecycle.Standard:
+ _extensions:
+ shorthand_name: Standard
+ type_qualified_name: tosca:Standard
+ specification: tosca-simple-1.0
+ specification_section: 5.7.4
+ description: >-
+ This lifecycle interface defines the essential, normative operations that TOSCA nodes may support.
+ derived_from: tosca.interfaces.Root
+ create:
+ description: >-
+ Standard lifecycle create operation.
+ configure:
+ description: >-
+ Standard lifecycle configure operation.
+ start:
+ description: >-
+ Standard lifecycle start operation.
+ stop:
+ description: >-
+ Standard lifecycle stop operation.
+ delete:
+ description: >-
+ Standard lifecycle delete operation.
+
+ tosca.interfaces.relationship.Configure:
+ _extensions:
+ shorthand_name: Configure
+ type_qualified_name: tosca:Configure
+ specification: tosca-simple-1.0
+ specification_section: 5.7.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_ITFC_RELATIONSHIP_CONFIGURE'
+ description: >-
+ The lifecycle interfaces define the essential, normative operations that each TOSCA Relationship Types may support.
+ derived_from: tosca.interfaces.Root
+ pre_configure_source:
+ description: >-
+ Operation to pre-configure the source endpoint.
+ _extensions:
+ relationship_edge: source
+ pre_configure_target:
+ description: >-
+ Operation to pre-configure the target endpoint.
+ _extensions:
+ relationship_edge: target
+ post_configure_source:
+ description: >-
+ Operation to post-configure the source endpoint.
+ _extensions:
+ relationship_edge: source
+ post_configure_target:
+ description: >-
+ Operation to post-configure the target endpoint.
+ _extensions:
+ relationship_edge: target
+ add_target:
+ description: >-
+ Operation to notify the source node of a target node being added via a relationship.
+ _extensions:
+ relationship_edge: source
+ add_source:
+ description: >-
+ Operation to notify the target node of a source node which is now available via a relationship.
+ _extensions:
+ relationship_edge: target
+ target_changed:
+ description: >-
+ Operation to notify source some property or attribute of the target changed
+ _extensions:
+ relationship_edge: source
+ remove_target:
+ description: >-
+ Operation to remove a target node.
+ _extensions:
+ relationship_edge: source
+ remove_source:
+ description: >-
+ Operation to remove the source node.
+ _extensions:
+ relationship_edge: target
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/nodes.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/nodes.yaml
new file mode 100644
index 0000000..05963b7
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/nodes.yaml
@@ -0,0 +1,525 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+node_types:
+
+ tosca.nodes.Root:
+ _extensions:
+ shorthand_name: Root
+ type_qualified_name: tosca:Root
+ specification: tosca-simple-1.0
+ specification_section: 5.8.1
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_ROOT'
+ description: >-
+ The TOSCA Root Node Type is the default type that all other TOSCA base Node Types derive from. This allows for all TOSCA nodes to have a consistent set of features for modeling and management (e.g., consistent definitions for requirements, capabilities and lifecycle interfaces).
+ attributes:
+ tosca_id:
+ description: >-
+ A unique identifier of the realized instance of a Node Template that derives from any TOSCA normative type.
+ type: string
+ tosca_name:
+ description: >-
+ This attribute reflects the name of the Node Template as defined in the TOSCA service template. This name is not unique
+ to the realized instance model of corresponding deployed application as each template in the model can result in one or
+ more instances (e.g., scaled) when orchestrated to a provider environment.
+ type: string
+ state:
+ description: >-
+ The state of the node instance.
+ type: string
+ default: initial
+ interfaces:
+ Standard:
+ type: tosca.interfaces.node.lifecycle.Standard
+ capabilities:
+ feature:
+ type: tosca.capabilities.Node
+ requirements:
+ - dependency:
+ capability: tosca.capabilities.Node
+ node: tosca.nodes.Root
+ relationship: tosca.relationships.DependsOn
+ occurrences: [ 0, UNBOUNDED ]
+
+ tosca.nodes.Compute:
+ _extensions:
+ shorthand_name: Compute
+ type_qualified_name: tosca:Compute
+ specification: tosca-simple-1.0
+ specification_section: 5.8.2
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_COMPUTE'
+ role: host
+ description: >-
+ The TOSCA Compute node represents one or more real or virtual processors of software applications or services along with
+ other essential local resources. Collectively, the resources the compute node represents can logically be viewed as a (real
+ or virtual) "server".
+ derived_from: tosca.nodes.Root
+ attributes:
+ private_address:
+ description: >-
+ The primary private IP address assigned by the cloud provider that applications may use to access the Compute node.
+ type: string
+ public_address:
+ description: >-
+ The primary public IP address assigned by the cloud provider that applications may use to access the Compute node.
+ type: string
+ networks:
+ description: >-
+ The list of logical networks assigned to the compute host instance and information about them.
+ type: map
+ entry_schema:
+ type: tosca.datatypes.network.NetworkInfo
+ ports:
+ description: >-
+ The list of logical ports assigned to the compute host instance and information about them.
+ type: map
+ entry_schema:
+ type: tosca.datatypes.network.PortInfo
+ capabilities:
+ host:
+ type: tosca.capabilities.Container
+ valid_source_types: [ tosca.nodes.SoftwareComponent ]
+ binding:
+ type: tosca.capabilities.network.Bindable
+ os:
+ type: tosca.capabilities.OperatingSystem
+ scalable:
+ type: tosca.capabilities.Scalable
+ requirements:
+ - local_storage:
+ capability: tosca.capabilities.Attachment
+ node: tosca.nodes.BlockStorage
+ relationship: tosca.relationships.AttachesTo
+ occurrences: [ 0, UNBOUNDED ]
+
+ tosca.nodes.LoadBalancer:
+ _extensions:
+ shorthand_name: LoadBalancer
+ type_qualified_name: tosca:LoadBalancer
+ specification: tosca-simple-1.0
+ specification_section: 5.8.12
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#_Toc379548332'
+ description: >-
+ The TOSCA Load Balancer node represents logical function that be used in conjunction with a Floating Address to distribute an
+ application's traffic (load) across a number of instances of the application (e.g., for a clustered or scaled application).
+ derived_from: tosca.nodes.Root
+ properties:
+ algorithm:
+ description: >-
+ No description in spec.
+ type: string
+ required: false
+ status: experimental
+ capabilities:
+ client:
+ description: >-
+ The Floating (IP) client's on the public network can connect to.
+ type: tosca.capabilities.Endpoint.Public
+ occurrences: [ 0, UNBOUNDED ] # ARIA NOTE: it seems unnecessary to specify this, as it is the implied default
+ requirements:
+ - application:
+ capability: tosca.capabilities.Endpoint
+ relationship: tosca.relationships.RoutesTo
+ occurrences: [ 0, UNBOUNDED ]
+
+ #
+ # Software
+ #
+
+ tosca.nodes.SoftwareComponent:
+ _extensions:
+ shorthand_name: SoftwareComponent
+ type_qualified_name: tosca:SoftwareComponent
+ specification: tosca-simple-1.0
+ specification_section: 5.8.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_SOFTWARE_COMPONENT'
+ description: >-
+ The TOSCA SoftwareComponent node represents a generic software component that can be managed and run by a TOSCA Compute Node
+ Type.
+ derived_from: tosca.nodes.Root
+ properties:
+ component_version:
+ description: >-
+ The optional software component's version.
+ type: version
+ required: false
+ admin_credential:
+ description: >-
+ The optional credential that can be used to authenticate to the software component.
+ type: tosca.datatypes.Credential
+ required: false
+ requirements:
+ - host:
+ capability: tosca.capabilities.Container
+ node: tosca.nodes.Compute
+ relationship: tosca.relationships.HostedOn
+
+ tosca.nodes.WebServer:
+ _extensions:
+ shorthand_name: WebServer
+ type_qualified_name: tosca:WebServer
+ specification: tosca-simple-1.0
+ specification_section: 5.8.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_WEBSERVER'
+ description: >-
+ This TOSCA WebServer Node Type represents an abstract software component or service that is capable of hosting and providing
+ management operations for one or more WebApplication nodes.
+ derived_from: tosca.nodes.SoftwareComponent
+ capabilities:
+ data_endpoint:
+ type: tosca.capabilities.Endpoint
+ admin_endpoint:
+ type: tosca.capabilities.Endpoint.Admin
+ host:
+ type: tosca.capabilities.Container
+ valid_source_types: [ tosca.nodes.WebApplication ]
+
+ tosca.nodes.WebApplication:
+ _extensions:
+ shorthand_name: WebApplication
+ type_qualified_name: tosca:WebApplication
+ specification: tosca-simple-1.0
+ specification_section: 5.8.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_WEBAPPLICATION'
+ description: >-
+ The TOSCA WebApplication node represents a software application that can be managed and run by a TOSCA WebServer node.
+ Specific types of web applications such as Java, etc. could be derived from this type.
+ derived_from: tosca.nodes.SoftwareComponent # ARIA NOTE: the spec says tosca.nodes.Root
+ properties:
+ context_root:
+ description: >-
+ The web application's context root which designates the application's URL path within the web server it is hosted on.
+ type: string
+ required: false
+ capabilities:
+ app_endpoint:
+ type: tosca.capabilities.Endpoint
+ requirements:
+ - host:
+ capability: tosca.capabilities.Container
+ node: tosca.nodes.WebServer
+ relationship: tosca.relationships.HostedOn
+
+ tosca.nodes.DBMS:
+ _extensions:
+ shorthand_name: DBMS # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:DBMS
+ specification: tosca-simple-1.0
+ specification_section: 5.8.6
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_DBMS'
+ description: >-
+ The TOSCA DBMS node represents a typical relational, SQL Database Management System software component or service.
+ derived_from: tosca.nodes.SoftwareComponent
+ properties:
+ root_password:
+ description: >-
+ The optional root password for the DBMS server.
+ type: string
+ required: false
+ port:
+ description: >-
+ The DBMS server's port.
+ type: integer
+ required: false
+ capabilities:
+ host:
+ type: tosca.capabilities.Container
+ valid_source_types: [ tosca.nodes.Database ]
+
+ tosca.nodes.Database:
+ _extensions:
+ shorthand_name: Database
+ type_qualified_name: tosca:Database
+ specification: tosca-simple-1.0
+ specification_section: 5.8.7
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_DATABASE'
+ description: >-
+ The TOSCA Database node represents a logical database that can be managed and hosted by a TOSCA DBMS node.
+ derived_from: tosca.nodes.Root # ARIA NOTE: it's *not* a SoftwareComponent
+ properties:
+ name:
+ description: >-
+ The logical database Name.
+ type: string
+ port:
+ description: >-
+ The port the database service will use to listen for incoming data and requests.
+ type: integer
+ required: false
+ user:
+ description: >-
+ The special user account used for database administration.
+ type: string
+ required: false
+ password:
+ description: >-
+ The password associated with the user account provided in the 'user' property.
+ type: string
+ required: false
+ capabilities:
+ database_endpoint:
+ type: tosca.capabilities.Endpoint.Database
+ requirements:
+ - host:
+ capability: tosca.capabilities.Container
+ node: tosca.nodes.DBMS
+ relationship: tosca.relationships.HostedOn
+
+ #
+ # Container
+ #
+
+ tosca.nodes.Container.Runtime:
+ _extensions:
+ shorthand_name: Container.Runtime
+ type_qualified_name: tosca:Container.Runtime
+ specification: tosca-simple-1.0
+ specification_section: 5.8.10
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_CONTAINER_RUNTIME'
+ description: >-
+ The TOSCA Container Runtime node represents operating system-level virtualization technology used to run multiple application
+ services on a single Compute host.
+ derived_from: tosca.nodes.SoftwareComponent
+ capabilities:
+ host:
+ type: tosca.capabilities.Container
+ scalable:
+ type: tosca.capabilities.Scalable
+
+ tosca.nodes.Container.Application:
+ _extensions:
+ shorthand_name: Container.Application
+ type_qualified_name: tosca:Container.Application
+ specification: tosca-simple-1.0
+ specification_section: 5.8.11
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_CONTAINER_APP'
+ description: >-
+ The TOSCA Container Application node represents an application that requires Container-level virtualization technology.
+ derived_from: tosca.nodes.Root
+ requirements:
+ - host:
+ capability: tosca.capabilities.Container
+ # ARIA NOTE: seems a mistake in the spec
+ #node: tosca.nodes.Container
+ relationship: tosca.relationships.HostedOn
+
+ #
+ # Storage
+ #
+
+ tosca.nodes.ObjectStorage:
+ _extensions:
+ shorthand_name: ObjectStorage
+ type_qualified_name: tosca:ObjectStorage
+ specification: tosca-simple-1.0
+ specification_section: 5.8.8
+ description: >-
+ The TOSCA ObjectStorage node represents storage that provides the ability to store data as objects (or BLOBs of data) without
+ consideration for the underlying filesystem or devices.
+ derived_from: tosca.nodes.Root
+ properties:
+ name:
+ description: >-
+ The logical name of the object store (or container).
+ type: string
+ size:
+ description: >-
+ The requested initial storage size (default unit is in Gigabytes).
+ type: scalar-unit.size
+ constraints:
+ - greater_or_equal: 0 GB
+ required: false
+ maxsize:
+ description: >-
+ The requested maximum storage size (default unit is in Gigabytes).
+ type: scalar-unit.size
+ constraints:
+ - greater_or_equal: 0 GB
+ required: false
+ capabilities:
+ storage_endpoint:
+ type: tosca.capabilities.Endpoint
+
+ tosca.nodes.BlockStorage:
+ _extensions:
+ shorthand_name: BlockStorage
+ type_qualified_name: tosca:BlockStorage
+ specification: tosca-simple-1.0
+ specification_section: 5.8.9
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_NODES_BLOCK_STORAGE'
+ description: >-
+ derived_from: tosca.nodes.Root
+ properties:
+ size:
+ description: >-
+ The requested storage size (default unit is MB).
+ type: scalar-unit.size
+ constraints:
+ - greater_or_equal: 1 MB
+ volume_id:
+ description: >-
+ ID of an existing volume (that is in the accessible scope of the requesting application).
+ type: string
+ required: false
+ snapshot_id:
+ description: >-
+ Some identifier that represents an existing snapshot that should be used when creating the block storage (volume).
+ type: string
+ required: false
+ capabilities:
+ attachment:
+ type: tosca.capabilities.Attachment
+
+ #
+ # Network
+ #
+
+ tosca.nodes.network.Network:
+ _extensions:
+ shorthand_name: Network
+ type_qualified_name: tosca:Network
+ specification: tosca-simple-1.0
+ specification_section: 7.5.1
+ description: >-
+ The TOSCA Network node represents a simple, logical network service.
+ derived_from: tosca.nodes.Root
+ properties:
+ ip_version:
+ description: >-
+ The IP version of the requested network.
+ type: integer
+ constraints:
+ - valid_values: [ 4, 6 ]
+ default: 4
+ required: false
+ cidr:
+ description: >-
+ The cidr block of the requested network.
+ type: string
+ required: false
+ start_ip:
+ description: >-
+ The IP address to be used as the 1st one in a pool of addresses derived from the cidr block full IP range.
+ type: string
+ required: false
+ end_ip:
+ description: >-
+ The IP address to be used as the last one in a pool of addresses derived from the cidr block full IP range.
+ type: string
+ required: false
+ gateway_ip:
+ description: >-
+ The gateway IP address.
+ type: string
+ required: false
+ network_name:
+ description: >-
+ An Identifier that represents an existing Network instance in the underlying cloud infrastructure - OR - be used as the
+ name of the new created network.
+ type: string
+ required: false
+ network_id:
+ description: >-
+ An Identifier that represents an existing Network instance in the underlying cloud infrastructure. This property is
+ mutually exclusive with all other properties except network_name.
+ type: string
+ required: false
+ segmentation_id:
+ description: >-
+ A segmentation identifier in the underlying cloud infrastructure (e.g., VLAN id, GRE tunnel id). If the segmentation_id
+ is specified, the network_type or physical_network properties should be provided as well.
+ type: string
+ required: false
+ network_type:
+ description: >-
+ Optionally, specifies the nature of the physical network in the underlying cloud infrastructure. Examples are flat, vlan,
+ gre or vxlan. For flat and vlan types, physical_network should be provided too.
+ type: string
+ required: false
+ physical_network:
+ description: >-
+ Optionally, identifies the physical network on top of which the network is implemented, e.g. physnet1. This property is
+ required if network_type is flat or vlan.
+ type: string
+ required: false
+ dhcp_enabled:
+ description: >-
+ Indicates the TOSCA container to create a virtual network instance with or without a DHCP service.
+ type: boolean
+ default: true
+ required: false
+ capabilities:
+ link:
+ type: tosca.capabilities.network.Linkable
+
+ tosca.nodes.network.Port:
+ _extensions:
+ shorthand_name: Port
+ type_qualified_name: tosca:Port
+ specification: tosca-simple-1.0
+ specification_section: 7.5.2
+ description: >-
+ The TOSCA Port node represents a logical entity that associates between Compute and Network normative types.
+
+ The Port node type effectively represents a single virtual NIC on the Compute node instance.
+ derived_from: tosca.nodes.Root
+ properties:
+ ip_address:
+ description: >-
+ Allow the user to set a fixed IP address. Note that this address is a request to the provider which they will attempt to
+ fulfill but may not be able to dependent on the network the port is associated with.
+ type: string
+ required: false
+ order:
+ description: >-
+ The order of the NIC on the compute instance (e.g. eth2). Note: when binding more than one port to a single compute (aka
+ multi vNICs) and ordering is desired, it is *mandatory* that all ports will be set with an order value and. The order
+ values must represent a positive, arithmetic progression that starts with 0 (e.g. 0, 1, 2, ..., n).
+ type: integer
+ constraints:
+ - greater_or_equal: 0
+ default: 0
+ required: false
+ is_default:
+ description: >-
+ Set is_default=true to apply a default gateway route on the running compute instance to the associated network gateway.
+ Only one port that is associated to single compute node can set as default=true.
+ type: boolean
+ default: false
+ required: false
+ ip_range_start:
+ description: >-
+ Defines the starting IP of a range to be allocated for the compute instances that are associated by this Port. Without
+ setting this property the IP allocation is done from the entire CIDR block of the network.
+ type: string
+ required: false
+ ip_range_end:
+ description: >-
+ Defines the ending IP of a range to be allocated for the compute instances that are associated by this Port. Without
+ setting this property the IP allocation is done from the entire CIDR block of the network.
+ type: string
+ required: false
+ attributes:
+ ip_address:
+ description: >-
+ The IP address would be assigned to the associated compute instance.
+ type: string
+ requirements:
+ - link:
+ capability: tosca.capabilities.network.Linkable
+ relationship: tosca.relationships.network.LinksTo
+ - binding:
+ capability: tosca.capabilities.network.Bindable
+ relationship: tosca.relationships.network.BindsTo
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/policies.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/policies.yaml
new file mode 100644
index 0000000..7b35bb9
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/policies.yaml
@@ -0,0 +1,71 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+policy_types:
+
+ tosca.policies.Root:
+ _extensions:
+ shorthand_name: Root # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Root
+ specification: tosca-simple-1.0
+ specification_section: 5.10.1
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_POLICIES_ROOT'
+ description: >-
+ This is the default (root) TOSCA Policy Type definition that all other TOSCA base Policy Types derive from.
+
+ tosca.policies.Placement:
+ _extensions:
+ shorthand_name: Placement # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Placement
+ specification: tosca-simple-1.0
+ specification_section: 5.10.2
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_POLICIES_PLACEMENT'
+ description: >-
+ This is the default (root) TOSCA Policy Type definition that is used to govern placement of TOSCA nodes or groups of nodes.
+ derived_from: tosca.policies.Root
+
+ tosca.policies.Scaling:
+ _extensions:
+ shorthand_name: Scaling # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Scaling
+ specification: tosca-simple-1.0
+ specification_section: 5.10.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_POLICIES_SCALING'
+ description: >-
+ This is the default (root) TOSCA Policy Type definition that is used to govern scaling of TOSCA nodes or groups of nodes.
+ derived_from: tosca.policies.Root
+
+ tosca.policies.Update:
+ _extensions:
+ shorthand_name: Update # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Update
+ specification: tosca-simple-1.0
+ specification_section: 5.10.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_POLICIES_UPDATE'
+ description: >-
+ This is the default (root) TOSCA Policy Type definition that is used to govern update of TOSCA nodes or groups of nodes.
+ derived_from: tosca.policies.Root
+
+ tosca.policies.Performance:
+ _extensions:
+ shorthand_name: Performance # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Performance
+ specification: tosca-simple-1.0
+ specification_section: 5.10.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_POLICIES_PERFORMANCE'
+ description: >-
+ This is the default (root) TOSCA Policy Type definition that is used to declare performance requirements for TOSCA nodes or
+ groups of nodes.
+ derived_from: tosca.policies.Root
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/relationships.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/relationships.yaml
new file mode 100644
index 0000000..9f2c32c
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/relationships.yaml
@@ -0,0 +1,158 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+relationship_types:
+
+ tosca.relationships.Root:
+ _extensions:
+ shorthand_name: Root # ARIA NOTE: omitted in the spec
+ type_qualified_name: tosca:Root
+ specification: tosca-simple-1.0
+ specification_section: 5.6.1
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_RELATIONSHIPS_ROOT'
+ description: >-
+ This is the default (root) TOSCA Relationship Type definition that all other TOSCA Relationship Types derive from.
+ attributes:
+ tosca_id:
+ description: >-
+ A unique identifier of the realized instance of a Relationship Template that derives from any TOSCA normative type.
+ type: string
+ tosca_name:
+ description: >-
+ This attribute reflects the name of the Relationship Template as defined in the TOSCA service template. This name is not
+ unique to the realized instance model of corresponding deployed application as each template in the model can result in
+ one or more instances (e.g., scaled) when orchestrated to a provider environment.
+ type: string
+ state:
+ description: >-
+ The state of the relationship instance.
+ type: string
+ default: initial
+ interfaces:
+ Configure:
+ type: tosca.interfaces.relationship.Configure
+
+ tosca.relationships.DependsOn:
+ _extensions:
+ shorthand_name: DependsOn
+ type_qualified_name: tosca:DependsOn
+ specification: tosca-simple-1.0
+ specification_section: 5.6.2
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_RELATIONSHIPS_DEPENDSON'
+ description: >-
+ This type represents a general dependency relationship between two nodes.
+ derived_from: tosca.relationships.Root
+ valid_target_types: [ tosca.capabilities.Node ]
+
+ tosca.relationships.HostedOn:
+ _extensions:
+ shorthand_name: HostedOn
+ type_qualified_name: tosca:HostedOn
+ specification: tosca-simple-1.0
+ specification_section: 5.6.3
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_RELATIONSHIPS_HOSTEDON'
+ description: >-
+ This type represents a hosting relationship between two nodes.
+ derived_from: tosca.relationships.Root
+ valid_target_types: [ tosca.capabilities.Container ]
+
+ tosca.relationships.ConnectsTo:
+ _extensions:
+ shorthand_name: ConnectsTo
+ type_qualified_name: tosca:ConnectsTo
+ specification: tosca-simple-1.0
+ specification_section: 5.6.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_RELATIONSHIPS_CONNECTSTO'
+ description: >-
+ This type represents a network connection relationship between two nodes.
+ derived_from: tosca.relationships.Root
+ valid_target_types: [ tosca.capabilities.Endpoint ]
+ properties:
+ credential:
+ type: tosca.datatypes.Credential
+ required: false
+
+ tosca.relationships.AttachesTo:
+ _extensions:
+ shorthand_name: AttachesTo
+ type_qualified_name: tosca:AttachesTo
+ specification: tosca-simple-1.0
+ specification_section: 5.6.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_RELATIONSHIPS_ATTACHTO'
+ description: >-
+ This type represents an attachment relationship between two nodes. For example, an AttachesTo relationship type would be used
+ for attaching a storage node to a Compute node.
+ derived_from: tosca.relationships.Root
+ valid_target_types: [ tosca.capabilities.Attachment ]
+ properties:
+ location:
+ description: >-
+ The relative location (e.g., path on the file system), which provides the root location to address an attached node.
+ e.g., a mount point / path such as '/usr/data'. Note: The user must provide it and it cannot be "root".
+ type: string
+ constraints:
+ - min_length: 1
+ device:
+ description: >-
+ The logical device name which for the attached device (which is represented by the target node in the model). e.g.,
+ '/dev/hda1'.
+ type: string
+ required: false
+ attributes:
+ device:
+ description: >-
+ The logical name of the device as exposed to the instance.
+ Note: A runtime property that gets set when the model gets instantiated by the orchestrator.
+ type: string
+
+ tosca.relationships.RoutesTo:
+ _extensions:
+ shorthand_name: RoutesTo
+ type_qualified_name: tosca:RoutesTo
+ specification: tosca-simple-1.0
+ specification_section: 5.6.6
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#_Toc397688815'
+ description: >-
+ This type represents an intentional network routing between two Endpoints in different networks.
+ derived_from: tosca.relationships.ConnectsTo
+ valid_target_types: [ tosca.capabilities.Endpoint ]
+
+ #
+ # Network
+ #
+
+ tosca.relationships.network.LinksTo:
+ _extensions:
+ shorthand_name: LinksTo
+ type_qualified_name: tosca:LinksTo
+ specification: tosca-simple-1.0
+ specification_section: 7.5.4
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_RELATIONSHIPS_NETWORK_LINKSTO'
+ description: >-
+ This relationship type represents an association relationship between Port and Network node types.
+ derived_from: tosca.relationships.DependsOn
+ valid_target_types: [ tosca.capabilities.network.Linkable ]
+
+ tosca.relationships.network.BindsTo:
+ _extensions:
+ shorthand_name: BindsTo # ARIA NOTE: the spec says "network.BindsTo" which seems wrong
+ type_qualified_name: tosca:BindsTo
+ specification: tosca-simple-1.0
+ specification_section: 7.5.5
+ specification_url: 'http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.0/cos01/TOSCA-Simple-Profile-YAML-v1.0-cos01.html#DEFN_TYPE_RELATIONSHIPS_NETWORK_BINDTO'
+ description: >-
+ This type represents a network association relationship between Port and Compute node types.
+ derived_from: tosca.relationships.DependsOn
+ valid_target_types: [ tosca.capabilities.network.Bindable ]
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/tosca-simple-1.0.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/tosca-simple-1.0.yaml
new file mode 100644
index 0000000..f8cc520
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-1.0/tosca-simple-1.0.yaml
@@ -0,0 +1,24 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+imports:
+ - artifacts.yaml
+ - capabilities.yaml
+ - data.yaml
+ - groups.yaml
+ - interfaces.yaml
+ - nodes.yaml
+ - policies.yaml
+ - relationships.yaml
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/artifacts.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/artifacts.yaml
new file mode 100644
index 0000000..2427d9f
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/artifacts.yaml
@@ -0,0 +1,84 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+artifact_types:
+
+ tosca.artifacts.nfv.SwImage:
+ _extensions:
+ shorthand_name: SwImage
+ type_qualified_name: tosca:SwImage
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.4.1
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896067'
+ derived_from: tosca.artifacts.Deployment.Image
+ properties:
+ name:
+ description: >-
+ Name of this software image.
+ type: string
+ required: true
+ version:
+ description: >-
+ Version of this software image.
+ type: string
+ required: true
+ checksum:
+ description: >-
+ Checksum of the software image file.
+ type: string
+ container_format:
+ description: >-
+ The container format describes the container file format in which software image is
+ provided.
+ type: string
+ required: true
+ disk_format:
+ description: >-
+ The disk format of a software image is the format of the underlying disk image.
+ type: string
+ required: true
+ min_disk:
+ description: >-
+ The minimal disk size requirement for this software image.
+ type: scalar-unit.size
+ required: true
+ min_ram:
+ description: >-
+ The minimal disk size requirement for this software image.
+ type: scalar-unit.size
+ required: false
+ size: # ARIA NOTE: section [5.4.1.1 Properties] calls this field 'Size'
+ description: >-
+ The size of this software image
+ type: scalar-unit.size
+ required: true
+ sw_image:
+ description: >-
+ A reference to the actual software image within VNF Package, or url.
+ type: string
+ required: true
+ operating_system:
+ description: >-
+ Identifies the operating system used in the software image.
+ type: string
+ required: false
+ supported _virtualization_enviroment:
+ description: >-
+ Identifies the virtualization environments (e.g. hypervisor) compatible with this software
+ image.
+ type: list
+ entry_schema:
+ type: string
+ required: false
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/capabilities.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/capabilities.yaml
new file mode 100644
index 0000000..7b6363f
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/capabilities.yaml
@@ -0,0 +1,70 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+capability_types:
+
+ tosca.capabilities.nfv.VirtualBindable:
+ _extensions:
+ shorthand_name: VirtualBindable
+ type_qualified_name: tosca:VirtualBindable
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.5.1
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896069'
+ description: >-
+ A node type that includes the VirtualBindable capability indicates that it can be pointed by
+ tosca.relationships.nfv.VirtualBindsTo relationship type.
+ derived_from: tosca.capabilities.Node
+
+ tosca.capabilities.nfv.Metric:
+ _extensions:
+ shorthand_name: Metric
+ type_qualified_name: tosca:Metric
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.5.2
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896070'
+ description: >-
+ A node type that includes the Metric capability indicates that it can be monitored using an nfv.relationships.Monitor
+ relationship type.
+ derived_from: tosca.capabilities.Endpoint
+
+ tosca.capabilities.nfv.VirtualCompute:
+ _extensions:
+ shorthand_name: VirtualCompute
+ type_qualified_name: tosca:VirtualCompute
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.5.3
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896071'
+ derived_from: tosca.capabilities.Root
+ properties:
+ requested_additional_capabilities:
+ # ARIA NOTE: in section [5.5.3.1 Properties] the name of this property is
+ # "request_additional_capabilities", and its type is not a map, but
+ # tosca.datatypes.nfv.RequestedAdditionalCapability
+ description: >-
+ Describes additional capability for a particular VDU.
+ type: map
+ entry_schema:
+ type: tosca.datatypes.nfv.RequestedAdditionalCapability
+ required: false
+ virtual_memory:
+ description: >-
+ Describes virtual memory of the virtualized compute.
+ type: tosca.datatypes.nfv.VirtualMemory
+ required: true
+ virtual_cpu:
+ description: >-
+ Describes virtual CPU(s) of the virtualized compute.
+ type: tosca.datatypes.nfv.VirtualCpu
+ required: true
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/data.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/data.yaml
new file mode 100644
index 0000000..889dcf7
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/data.yaml
@@ -0,0 +1,318 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+data_types:
+
+ tosca.datatypes.nfv.L2AddressData:
+ # TBD
+ _extensions:
+ shorthand_name: L2AddressData
+ type_qualified_name: tosca:L2AddressData
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.1
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896055'
+
+ tosca.datatypes.nfv.L3AddressData:
+ _extensions:
+ shorthand_name: L3AddressData
+ type_qualified_name: tosca:L3AddressData
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.2
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896056'
+ description: >-
+ The L3AddressData type is a complex TOSCA data type used to describe L3AddressData information
+ element as defined in [ETSI GS NFV-IFA 011], it provides the information on the IP addresses
+ to be assigned to the connection point instantiated from the parent Connection Point
+ Descriptor.
+ derived_from: tosca.datatypes.Root
+ properties:
+ ip_address_assignment:
+ description: >-
+ Specify if the address assignment is the responsibility of management and orchestration
+ function or not. If it is set to True, it is the management and orchestration function
+ responsibility.
+ type: boolean
+ required: true
+ floating_ip_activated:
+ description: Specify if the floating IP scheme is activated on the Connection Point or not.
+ type: boolean
+ required: true
+ ip_address_type:
+ description: >-
+ Define address type. The address type should be aligned with the address type supported by
+ the layer_protocol properties of the parent VnfExtCpd.
+ type: string
+ required: false
+ constraints:
+ - valid_values: [ ipv4, ipv6 ]
+ number_of_ip_address:
+ description: >-
+ Minimum number of IP addresses to be assigned.
+ type: integer
+ required: false
+
+ tosca.datatypes.nfv.AddressData:
+ _extensions:
+ shorthand_name: AddressData
+ type_qualified_name: tosca:AddressData
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.3
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896057'
+ description: >-
+ The AddressData type is a complex TOSCA data type used to describe AddressData information
+ element as defined in [ETSI GS NFV-IFA 011], it provides information on the addresses to be
+ assigned to the connection point(s) instantiated from a Connection Point Descriptor.
+ derived_from: tosca.datatypes.Root
+ properties:
+ address_type:
+ description: >-
+ Describes the type of the address to be assigned to the connection point instantiated from
+ the parent Connection Point Descriptor. The content type shall be aligned with the address
+ type supported by the layerProtocol property of the parent Connection Point Descriptor.
+ type: string
+ required: true
+ constraints:
+ - valid_values: [ mac_address, ip_address ]
+ l2_address_data:
+ # Shall be present when the addressType is mac_address.
+ description: >-
+ Provides the information on the MAC addresses to be assigned to the connection point(s)
+ instantiated from the parent Connection Point Descriptor.
+ type: tosca.datatypes.nfv.L2AddressData # Empty in "GS NFV IFA011 V0.7.3"
+ required: false
+ l3_address_data:
+ # Shall be present when the addressType is ip_address.
+ description: >-
+ Provides the information on the IP addresses to be assigned to the connection point
+ instantiated from the parent Connection Point Descriptor.
+ type: tosca.datatypes.nfv.L3AddressData
+ required: false
+
+ tosca.datatypes.nfv.VirtualNetworkInterfaceRequirements:
+ _extensions:
+ shorthand_name: VirtualNetworkInterfaceRequirements
+ type_qualified_name: tosca:VirtualNetworkInterfaceRequirements
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.4
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896058'
+ description: >-
+ The VirtualNetworkInterfaceRequirements type is a complex TOSCA data type used to describe
+ VirtualNetworkInterfaceRequirements information element as defined in [ETSI GS NFV-IFA 011],
+ it provides the information to specify requirements on a virtual network interface realising the
+ CPs instantiated from this CPD.
+ derived_from: tosca.datatypes.Root
+ properties:
+ name:
+ description: >-
+ Provides a human readable name for the requirement.
+ type: string
+ required: false
+ description:
+ description: >-
+ Provides a human readable description for the requirement.
+ type: string
+ required: false
+ support_mandatory:
+ description: >-
+ Indicates whether fulfilling the constraint is mandatory (TRUE) for successful operation
+ or desirable (FALSE).
+ type: boolean
+ required: false
+ requirement:
+ description: >-
+ Specifies a requirement such as the support of SR-IOV, a particular data plane
+ acceleration library, an API to be exposed by a NIC, etc.
+ type: string # ARIA NOTE: the spec says "not specified", but TOSCA requires a type
+ required: true
+
+ tosca.datatypes.nfv.ConnectivityType:
+ _extensions:
+ shorthand_name: ConnectivityType
+ type_qualified_name: tosca:ConnectivityType
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.5
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896059'
+ description: >-
+ The TOSCA ConnectivityType type is a complex TOSCA data type used to describe ConnectivityType
+ information element as defined in [ETSI GS NFV-IFA 011].
+ derived_from: tosca.datatypes.Root
+ properties:
+ layer_protocol:
+ description: >-
+ Identifies the protocol this VL gives access to (ethernet, mpls, odu2, ipv4, ipv6,
+ pseudo_wire).
+ type: string
+ required: true
+ constraints:
+ - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
+ flow_pattern:
+ description: >-
+ Identifies the flow pattern of the connectivity (Line, Tree, Mesh).
+ type: string
+ required: false
+
+ tosca.datatypes.nfv.RequestedAdditionalCapability:
+ _extensions:
+ shorthand_name: RequestedAdditionalCapability
+ type_qualified_name: tosca:RequestedAdditionalCapability
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.6
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896060'
+ description: >-
+ RequestAdditionalCapability describes additional capability for a particular VDU.
+ derived_from: tosca.datatypes.Root
+ properties:
+ request_additional_capability_name:
+ description: >-
+ Identifies a requested additional capability for the VDU.
+ type: string
+ required: true
+ support_mandatory:
+ description: >-
+ Indicates whether the requested additional capability is mandatory for successful
+ operation.
+ type: string
+ required: true
+ min_requested_additional_capability_version:
+ description: >-
+ Identifies the minimum version of the requested additional capability.
+ type: string
+ required: false
+ preferred_requested_additional_capability_version:
+ description: >-
+ Identifies the preferred version of the requested additional capability.
+ type: string
+ required: false
+ target_performance_parameters:
+ description: >-
+ Identifies specific attributes, dependent on the requested additional capability type.
+ type: map
+ entry_schema:
+ type: string
+ required: true
+
+ tosca.datatypes.nfv.VirtualMemory:
+ _extensions:
+ shorthand_name: VirtualMemory
+ type_qualified_name: tosca:VirtualMemory
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.7
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896061'
+ description: >-
+ VirtualMemory describes virtual memory for a particular VDU.
+ derived_from: tosca.datatypes.Root
+ properties:
+ virtual_mem_size:
+ description: Amount of virtual memory.
+ type: scalar-unit.size
+ required: true
+ virtual_mem_oversubscription_policy:
+ description: >-
+ The memory core oversubscription policy in terms of virtual memory to physical memory on
+ the platform. The cardinality can be 0 during the allocation request, if no particular
+ value is requested.
+ type: string
+ required: false
+ numa_enabled:
+ description: >-
+ It specifies the memory allocation to be cognisant of the relevant process/core
+ allocation. The cardinality can be 0 during the allocation request, if no particular value
+ is requested.
+ type: boolean
+ required: false
+
+ tosca.datatypes.nfv.VirtualCpu:
+ _extensions:
+ shorthand_name: VirtualCpu
+ type_qualified_name: tosca:VirtualCpu
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.8
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896062'
+ description: >-
+ VirtualMemory describes virtual memory for a particular VDU.
+ derived_from: tosca.datatypes.Root
+ properties:
+ cpu_architecture:
+ description: >-
+ CPU architecture type. Examples are x86, ARM.
+ type: string
+ required: false
+ num_virtual_cpu:
+ description: >-
+ Number of virtual CPUs.
+ type: integer
+ required: true
+ virtual_cpu_clock:
+ description: >-
+ Minimum virtual CPU clock rate.
+ type: scalar-unit.frequency
+ required: false
+ virtual_cpu_oversubscription_policy:
+ description: >-
+ CPU core oversubscription policy.
+ type: string
+ required: false
+ virtual_cpu_pinning:
+ description: >-
+ The virtual CPU pinning configuration for the virtualized compute resource.
+ type: tosca.datatypes.nfv.VirtualCpuPinning
+ required: false
+
+ tosca.datatypes.nfv.VirtualCpuPinning:
+ _extensions:
+ shorthand_name: VirtualCpuPinning
+ type_qualified_name: tosca:VirtualCpuPinning
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.9
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896064'
+ description: >-
+ VirtualCpuPinning describes CPU pinning configuration for a particular CPU.
+ derived_from: tosca.datatypes.Root
+ properties:
+ cpu_pinning_policy:
+ description: >-
+ Indicates the policy for CPU pinning.
+ type: string
+ constraints:
+ - valid_values: [ static, dynamic ]
+ required: false
+ cpu_pinning_map:
+ description: >-
+ If cpuPinningPolicy is defined as "static", the cpuPinningMap provides the map of pinning
+ virtual CPU cores to physical CPU cores/threads.
+ type: map
+ entry_schema:
+ type: string
+ required: false
+
+ tosca.datatypes.nfv.VnfcConfigurableProperties:
+ _extensions:
+ shorthand_name: VnfcconfigurableProperties
+ type_qualified_name: tosca:VnfcconfigurableProperties
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.3.10
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896065'
+ # ARIA NOTE: description is mangled in spec
+ description: >-
+ VnfcConfigurableProperties describes additional configurable properties of a VNFC.
+ derived_from: tosca.datatypes.Root
+ properties:
+ additional_vnfc_configurable_properties:
+ description: >-
+ Describes additional configuration for VNFC.
+ type: map
+ entry_schema:
+ type: string
+ required: false
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/nodes.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/nodes.yaml
new file mode 100644
index 0000000..8d1f0a2
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/nodes.yaml
@@ -0,0 +1,260 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+node_types:
+
+ tosca.nodes.nfv.VDU.Compute:
+ _extensions:
+ shorthand_name: VDU.Compute
+ type_qualified_name: tosca:VDU.Compute
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.9.2
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896079'
+ description: >-
+ The TOSCA nfv.VDU.Compute node type represents the virtual compute part of a VDU entity which
+ it mainly describes the deployment and operational behavior of a VNF component (VNFC), as
+ defined by [ETSI NFV IFA011].
+ derived_from: tosca.nodes.Compute
+ properties:
+ name:
+ description: >-
+ Human readable name of the VDU.
+ type: string
+ required: true
+ description:
+ description: >-
+ Human readable description of the VDU.
+ type: string
+ required: true
+ boot_order:
+ description: >-
+ The key indicates the boot index (lowest index defines highest boot priority).
+ The Value references a descriptor from which a valid boot device is created e.g.
+ VirtualStorageDescriptor from which a VirtualStorage instance is created. If no boot order
+ is defined the default boot order defined in the VIM or NFVI shall be used.
+ type: list # ARIA NOTE: an explicit index (boot index) is unnecessary, contrary to IFA011
+ entry_schema:
+ type: string
+ required: false
+ nfvi_constraints:
+ description: >-
+ Describes constraints on the NFVI for the VNFC instance(s) created from this VDU.
+ For example, aspects of a secure hosting environment for the VNFC instance that involve
+ additional entities or processes. More software images can be attached to the
+ virtualization container using virtual_storage.
+ type: list
+ entry_schema:
+ type: string
+ required: false
+ configurable_properties:
+ description: >-
+ Describes the configurable properties of all VNFC instances based on this VDU.
+ type: map
+ entry_schema:
+ type: tosca.datatypes.nfv.VnfcConfigurableProperties
+ required: true
+ attributes:
+ # ARIA NOTE: The attributes are only described in section [5.9.2.5 Definition], but are not
+ # mentioned in section [5.9.2.2 Attributes]. Additionally, it does not seem to make sense to
+ # deprecate inherited attributes, as it breaks the inheritence contract.
+ private_address:
+ type: string
+ status: deprecated
+ public_address:
+ type: string
+ status: deprecated
+ networks:
+ type: map
+ entry_schema:
+ type: tosca.datatypes.network.NetworkInfo
+ status: deprecated
+ ports:
+ type: map
+ entry_schema:
+ type: tosca.datatypes.network.PortInfo
+ status: deprecated
+ capabilities:
+ virtual_compute:
+ description: >-
+ Describes virtual compute resources capabilities.
+ type: tosca.capabilities.nfv.VirtualCompute
+ virtual_binding:
+ description: >-
+ Defines ability of VirtualBindable.
+ type: tosca.capabilities.nfv.VirtualBindable
+ monitoring_parameter:
+ # ARIA NOTE: commented out in 5.9.2.5
+ description: >-
+ Monitoring parameter, which can be tracked for a VNFC based on this VDU. Examples include:
+ memory-consumption, CPU-utilisation, bandwidth-consumption, VNFC downtime, etc.
+ type: tosca.capabilities.nfv.Metric
+ #requirements:
+ # ARIA NOTE: virtual_storage is TBD
+
+ # ARIA NOTE: csd04 attempts to deprecate the inherited local_storage requirement, but this
+ # is not possible in TOSCA
+ artifacts:
+ sw_image:
+ description: >-
+ Describes the software image which is directly loaded on the virtualization container
+ realizing this virtual storage.
+ file: '' # ARIA NOTE: missing value even though it is required in TOSCA
+ type: tosca.artifacts.nfv.SwImage
+
+ tosca.nodes.nfv.VDU.VirtualStorage:
+ _extensions:
+ shorthand_name: VirtualStorage # ARIA NOTE: seems wrong in spec
+ type_qualified_name: tosca:VirtualStorage # ARIA NOTE: seems wrong in spec
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.9.3
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896080'
+ description: >-
+ The NFV VirtualStorage node type represents a virtual storage entity which it describes the
+ deployment and operational behavior of a virtual storage resources, as defined by
+ [ETSI NFV IFA011].
+ derived_from: tosca.nodes.Root
+ properties:
+ type_of_storage:
+ description: >-
+ Type of virtualized storage resource.
+ type: string
+ required: true
+ size_of_storage:
+ description: >-
+ Size of virtualized storage resource (in GB).
+ type: scalar-unit.size
+ required: true
+ rdma_enabled:
+ description: >-
+ Indicate if the storage support RDMA.
+ type: boolean
+ required: false
+ artifacts:
+ sw_image:
+ description: >-
+ Describes the software image which is directly loaded on the virtualization container
+ realizing this virtual storage.
+ file: '' # ARIA NOTE: missing in spec
+ type: tosca.artifacts.nfv.SwImage
+
+ tosca.nodes.nfv.Cpd:
+ _extensions:
+ shorthand_name: Cpd
+ type_qualified_name: tosca:Cpd
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.9.4
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896081'
+ description: >-
+ The TOSCA nfv.Cpd node represents network connectivity to a compute resource or a VL as defined
+ by [ETSI GS NFV-IFA 011]. This is an abstract type used as parent for the various Cpd types.
+ derived_from: tosca.nodes.Root
+ properties:
+ layer_protocol:
+ description: >-
+ Identifies which protocol the connection point uses for connectivity purposes.
+ type: string
+ constraints:
+ - valid_values: [ ethernet, mpls, odu2, ipv4, ipv6, pseudo_wire ]
+ required: false
+ role: # Name in ETSI NFV IFA011 v0.7.3 cpRole
+ description: >-
+ Identifies the role of the port in the context of the traffic flow patterns in the VNF or
+ parent NS. For example a VNF with a tree flow pattern within the VNF will have legal
+ cpRoles of ROOT and LEAF.
+ type: string
+ constraints:
+ - valid_values: [ root, leaf ]
+ required: false
+ description:
+ description: >-
+ Provides human-readable information on the purpose of the connection point
+ (e.g. connection point for control plane traffic).
+ type: string
+ required: false
+ address_data:
+ description: >-
+ Provides information on the addresses to be assigned to the connection point(s) instantiated
+ from this Connection Point Descriptor.
+ type: list
+ entry_schema:
+ type: tosca.datatypes.nfv.AddressData
+ required: false
+
+ tosca.nodes.nfv.VduCpd:
+ _extensions:
+ shorthand_name: VduCpd
+ type_qualified_name: tosca:VduCpd
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.9.5
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896082'
+ description: >-
+ The TOSCA nfv.VduCpd node type represents a type of TOSCA Cpd node and describes network
+ connectivity between a VNFC instance (based on this VDU) and an internal VL as defined by
+ [ETSI GS NFV-IFA 011].
+ derived_from: tosca.nodes.nfv.Cpd
+ properties:
+ bitrate_requirement:
+ description: >-
+ Bitrate requirement on this connection point.
+ type: integer
+ required: false
+ virtual_network_interface_requirements:
+ description: >-
+ Specifies requirements on a virtual network interface realising the CPs instantiated from
+ this CPD.
+ type: list
+ entry_schema:
+ type: VirtualNetworkInterfaceRequirements
+ required: false
+ requirements:
+ # ARIA NOTE: seems to be a leftover from csd03
+ # - virtual_link:
+ # description: Describes the requirements for linking to virtual link
+ # capability: tosca.capabilities.nfv.VirtualLinkable
+ # relationship: tosca.relationships.nfv.VirtualLinksTo
+ # node: tosca.nodes.nfv.VnfVirtualLinkDesc
+ - virtual_binding:
+ capability: tosca.capabilities.nfv.VirtualBindable
+ relationship: tosca.relationships.nfv.VirtualBindsTo
+ node: tosca.nodes.nfv.VDU.Compute # ARIA NOTE: seems wrong in spec
+
+ tosca.nodes.nfv.VnfVirtualLinkDesc:
+ _extensions:
+ shorthand_name: VnfVirtualLinkDesc
+ type_qualified_name: tosca:VnfVirtualLinkDesc
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.9.6
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896083'
+ description: >-
+ The TOSCA nfv.VnfVirtualLinkDesc node type represents a logical internal virtual link as
+ defined by [ETSI GS NFV-IFA 011].
+ derived_from: tosca.nodes.Root
+ properties:
+ connectivity_type:
+ description: >-
+ specifies the protocol exposed by the VL and the flow pattern supported by the VL.
+ type: tosca.datatypes.nfv.ConnectivityType
+ required: true
+ description:
+ description: >-
+ Provides human-readable information on the purpose of the VL (e.g. control plane traffic).
+ type: string
+ required: false
+ test_access:
+ description: >-
+ Test access facilities available on the VL (e.g. none, passive, monitoring, or active
+ (intrusive) loopbacks at endpoints.
+ type: string
+ required: false
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/relationships.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/relationships.yaml
new file mode 100644
index 0000000..4cf99a2
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/relationships.yaml
@@ -0,0 +1,43 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+relationship_types:
+
+ tosca.relationships.nfv.VirtualBindsTo:
+ _extensions:
+ shorthand_name: VirtualBindsTo
+ type_qualified_name: tosca:VirtualBindsTo
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.7.1
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896074'
+ description: >-
+ This relationship type represents an association relationship between VDU and CP node types.
+ derived_from: tosca.relationships.DependsOn
+ valid_target_types: [ tosca.capabilities.nfv.VirtualBindable ]
+
+ # ARIA NOTE: csd04 lacks the definition of tosca.relationships.nfv.Monitor (the derived_from and
+ # valid_target_types), so we are using the definition in csd03 section 8.4.2.
+ tosca.relationships.nfv.Monitor:
+ _extensions:
+ shorthand_name: Monitor
+ type_qualified_name: tosca:Monitor
+ specification: tosca-simple-nfv-1.0
+ specification_section: 5.7.2
+ specification_url: 'http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/csd04/tosca-nfv-v1.0-csd04.html#_Toc482896075'
+ description: >-
+ This relationship type represents an association relationship to the Metric capability of VDU
+ node types.
+ derived_from: tosca.relationships.ConnectsTo
+ valid_target_types: [ tosca.capabilities.nfv.Metric ]
diff --git a/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/tosca-simple-nfv-1.0.yaml b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/tosca-simple-nfv-1.0.yaml
new file mode 100644
index 0000000..764c739
--- /dev/null
+++ b/azure/aria/aria-extension-cloudify/src/aria/extensions/aria_extension_tosca/profiles/tosca-simple-nfv-1.0/tosca-simple-nfv-1.0.yaml
@@ -0,0 +1,21 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You 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.
+
+imports:
+ - artifacts.yaml
+ - capabilities.yaml
+ - data.yaml
+ - nodes.yaml
+ - relationships.yaml