ARIA multivim plugin initial checkin
Change-Id: I3a24ab6fc5ba54466bfecaf596a13b8907248ae8
Issue-id: SO-77
Signed-off-by: DeWayne Filppi <dewayne@gigaspaces.com>
diff --git a/aria/multivim-plugin/plugin.yaml b/aria/multivim-plugin/plugin.yaml
new file mode 100644
index 0000000..9c1c2ca
--- /dev/null
+++ b/aria/multivim-plugin/plugin.yaml
@@ -0,0 +1,954 @@
+##################################################################################
+# Multi-vim built in types and plugins definitions.
+##################################################################################
+
+plugins:
+ multivim:
+ executor: central_deployment_agent
+ #source: https://github.com/cloudify-cosmo/onap-multivim-plugin/archive/2.2.0.zip
+ source:
+ package_name: onap-multivim-plugin
+ package_version: '2.2.0'
+
+node_types:
+ onap.multivim.nodes.Server:
+ derived_from: cloudify.nodes.Compute
+ properties:
+ server:
+ default: {}
+ description: >
+ key-value server configuration as described in OpenStack compute create server API. (DEPRECATED - Use the args input in create operation instead)
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ image:
+ default: ''
+ description: >
+ The image for the server.
+ May receive either the ID or the name of the image.
+ note: This property is currently optional for backwards compatibility,
+ but will be modified to become a required property in future versions
+ (Default: '').
+ flavor:
+ default: ''
+ description: >
+ The flavor for the server.
+ May receive either the ID or the name of the flavor.
+ note: This property is currently optional for backwards compatibility,
+ but will be modified to become a required property in future versions
+ (Default: '').
+ management_network_name:
+ default: ''
+ description: >
+ Cloudify's management network name.
+ Every server should be connected to the management network.
+ If the management network's name information is available in the Provider Context,
+ this connection is made automatically and there's no need to override this property
+ (See the Misc section for more information on the Openstack Provider Context).
+ Otherwise, it is required to set the value of this property to the management network name as it was set in the bootstrap process.
+ Note: When using Nova-net Openstack (see the Nova-net Support section),
+ don't set this property. Defaults to '' (empty string).
+ use_password:
+ default: false
+ description: >
+ A boolean describing whether this server image supports user-password authentication.
+ Images that do should post the administrator user's password to the Openstack metadata service (e.g. via cloudbase);
+ The password would then be retrieved by the plugin,
+ decrypted using the server's keypair and then saved in the server's runtime properties.
+ multivim_config:
+ default: {}
+ description: >
+ see Openstack Configuraion
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.nova_plugin.server.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ start:
+ implementation: openstack.nova_plugin.server.start
+ inputs:
+ start_retry_interval:
+ description: Polling interval until the server is active in seconds
+ type: integer
+ default: 30
+ private_key_path:
+ description: >
+ Path to private key which matches the server's
+ public key. Will be used to decrypt password in case
+ the "use_password" property is set to "true"
+ type: string
+ default: ''
+ multivim_config:
+ default: {}
+ stop:
+ implementation: openstack.nova_plugin.server.stop
+ inputs:
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.nova_plugin.server.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.nova_plugin.server.creation_validation
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.WindowsServer:
+ derived_from: onap.multivim.nodes.Server
+ properties:
+ use_password:
+ default: true
+ description: >
+ Default changed for derived type
+ because Windows instances need a password for agent installation
+ os_family:
+ default: windows
+ description: >
+ (updates the os_family default as a convenience)
+ agent_config:
+ type: cloudify.datatypes.AgentConfig
+ default:
+ port: 5985
+ description: >
+ (updates the defaults for the agent_config for Windows)
+
+ onap.multivim.nodes.KeyPair:
+ derived_from: cloudify.nodes.Root
+ properties:
+ keypair:
+ default: {}
+ description: >
+ the keypair object as described by Openstack. This
+ parameter can be used to override and pass parameters
+ directly to Nova client.
+ Note that in the case of keypair, the only nested parameter
+ that can be used is "name".
+ private_key_path:
+ description: >
+ the path (on the machine the plugin is running on) to
+ where the private key should be stored. If
+ use_external_resource is set to "true", the existing
+ private key is expected to be at this path.
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean describing whether this resource should be
+ created or rather that it already exists on Openstack
+ and should be used as-is.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ the name that will be given to the resource on Openstack (excluding optional prefix).
+ If not provided, a default name will be given instead.
+ If use_external_resource is set to "true", this exact
+ value (without any prefixes applied) will be looked for
+ as either the name or id of an existing keypair to be used.
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.nova_plugin.keypair.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.nova_plugin.keypair.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.nova_plugin.keypair.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.Subnet:
+ derived_from: cloudify.nodes.Subnet
+ properties:
+ subnet:
+ default: {}
+ description: >
+ key-value subnet configuration as described at http://developer.openstack.org/api-ref-networking-v2.html#subnets. (**DEPRECATED - Use the `args` input in create operation instead**)
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.neutron_plugin.subnet.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.neutron_plugin.subnet.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.neutron_plugin.subnet.creation_validation
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.SecurityGroup:
+ derived_from: cloudify.nodes.SecurityGroup
+ properties:
+ security_group:
+ default: {}
+ description: >
+ key-value security_group configuration as described in http://developer.openstack.org/api-ref-networking-v2-ext.html#createSecGroup. (**DEPRECATED - Use the `args` input in create operation instead**)
+ description:
+ type: string
+ default: ''
+ description: >
+ SecurityGroup description.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ rules:
+ default: []
+ description: >
+ key-value security_group_rule configuration as described in http://developer.openstack.org/api-ref-networking-v2.html#security_groups
+ disable_default_egress_rules:
+ default: false
+ description: >
+ a flag for removing the default rules which https://wiki.openstack.org/wiki/Neutron/SecurityGroups#Behavior. If not set to `true`, these rules will remain, and exist alongside any additional rules passed using the `rules` property.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.neutron_plugin.security_group.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.neutron_plugin.security_group.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.neutron_plugin.security_group.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.Router:
+ derived_from: cloudify.nodes.Router
+ properties:
+ router:
+ default: {}
+ description: >
+ key-value router configuration as described in http://developer.openstack.org/api-ref-networking-v2.html#layer3. (**DEPRECATED - Use the `args` input in create operation instead**)
+ external_network:
+ default: ''
+ description: >
+ An external network name or ID.
+ If given, the router will use this external network as a gateway.
+ default_to_managers_external_network:
+ default: true
+ description: >
+ A boolean which determines whether to use the Cloudify Manager's external network if no other external network was given (whether by a relationship, by the `external_network` property or by the nested `external_gateway_info` key in the `router` property). This is only relevant if the manager's external network appears in the Provider-context. Defaults to `true`.
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.neutron_plugin.router.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.neutron_plugin.router.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.neutron_plugin.router.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.Port:
+ derived_from: cloudify.nodes.Port
+ properties:
+ port:
+ default: {}
+ description: >
+ key-value port configuration as described in http://developer.openstack.org/api-ref-networking-v2.html#ports. (**DEPRECATED - Use the `args` input in create operation instead**)
+ fixed_ip:
+ default: ''
+ description: >
+ may be used to request a specific fixed IP for the port.
+ If the IP is unavailable
+ (either already taken or does not belong to a subnet the port is on)
+ an error will be raised.
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.neutron_plugin.port.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.neutron_plugin.port.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.neutron_plugin.port.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.Network:
+ derived_from: cloudify.nodes.Network
+ properties:
+ network:
+ default: {}
+ description: >
+ key-value network configuration as described in http://developer.openstack.org/api-ref-networking-v2.html#networks. (**DEPRECATED - Use the `args` input in create operation instead**)
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.neutron_plugin.network.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.neutron_plugin.network.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.neutron_plugin.network.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.FloatingIP:
+ derived_from: cloudify.nodes.VirtualIP
+ properties:
+ floatingip:
+ default: {}
+ description: >
+ key-value floatingip configuration as described in http://developer.openstack.org/api-ref-networking-v2.html#layer3. (**DEPRECATED - Use the `args` input in create operation instead**)
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ description: IP address of the floating IP
+ default: ''
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.neutron_plugin.floatingip.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.neutron_plugin.floatingip.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.neutron_plugin.floatingip.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.Volume:
+ derived_from: cloudify.nodes.Volume
+ properties:
+ volume:
+ default: {}
+ description: >
+ key-value volume configuration as described in http://developer.openstack.org/api-ref-blockstorage-v1.html#volumes-v1. (**DEPRECATED - Use the `args` input in create operation instead**)
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ device_name:
+ default: auto
+ description: >
+ The device name this volume will be attached to.
+ Default value is *auto*,
+ which means openstack will auto-assign a device.
+ Note that if you do explicitly set a value,
+ this value may not be the actual device name assigned.
+ Sometimes the device requested will not be available and openstack will assign it to a different device,
+ this is why we recommend using *auto*.
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ boot:
+ type: boolean
+ default: false
+ description: >
+ If a Server instance is connected to this Volume by a relationship,
+ this volume will be used as the boot volume for that Server.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.cinder_plugin.volume.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ status_attempts:
+ description: >
+ Number of times to check for the creation's status before failing
+ type: integer
+ default: 20
+ status_timeout:
+ description: >
+ Interval (in seconds) between subsequent inquiries of the creation's
+ status
+ type: integer
+ default: 15
+ delete:
+ implementation: openstack.cinder_plugin.volume.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.cinder_plugin.volume.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nova_net.nodes.FloatingIP:
+ derived_from: cloudify.nodes.VirtualIP
+ properties:
+ floatingip:
+ default: {}
+ description: >
+ key-value floatingip configuration as described in http://developer.openstack.org/api-ref-compute-v2-ext.html#ext-os-floating-ips. (**DEPRECATED - Use the `args` input in create operation instead**)
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ TODO: CREATE. THIS IS MISSING
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.nova_plugin.floatingip.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.nova_plugin.floatingip.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.nova_plugin.floatingip.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nova_net.nodes.SecurityGroup:
+ derived_from: cloudify.nodes.SecurityGroup
+ properties:
+ security_group:
+ default: {}
+ description: >
+ key-value security_group configuration as described in http://developer.openstack.org/api-ref-compute-v2-ext.html#ext-os-security-groups. (**DEPRECATED - Use the `args` input in create operation instead**)
+ use_external_resource:
+ type: boolean
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ TODO: CREATE. THIS IS MISSING
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ rules:
+ default: []
+ description: >
+ key-value security group rule as described in http://developer.openstack.org/api-ref-compute-v2-ext.html#ext-os-security-group-default-rules.
+ description:
+ description: security group description
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.nova_plugin.security_group.create
+ inputs:
+ args:
+ default: {}
+ multivim_config:
+ default: {}
+ status_attempts:
+ description: >
+ Number of times to check for the attachment's status before failing
+ type: integer
+ default: 10
+ status_timeout:
+ description: >
+ Interval (in seconds) between subsequent inquiries of the attachment's
+ status
+ type: integer
+ default: 2
+ delete:
+ implementation: openstack.nova_plugin.security_group.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.nova_plugin.security_group.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.nodes.Image:
+ derived_from: cloudify.nodes.Root
+ properties:
+ image:
+ description: >
+ Required parameters are (container_format, disk_format). Accepted
+ types are available on
+ http://docs.openstack.org/developer/glance/formats.html
+ To create an image from the local file its path should be added
+ in data parameter.
+ default: {}
+ image_url:
+ default: ''
+ description: >
+ The openstack resource URL for the image.
+ use_external_resource:
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create:
+ implementation: openstack.glance_plugin.image.create
+ inputs:
+ multivim_config:
+ default: {}
+ start:
+ implementation: openstack.glance_plugin.image.start
+ inputs:
+ start_retry_interval:
+ default: 30
+ multivim_config:
+ default: {}
+ delete:
+ implementation: openstack.glance_plugin.image.delete
+ inputs:
+ multivim_config:
+ default: {}
+ cloudify.interfaces.validation:
+ creation:
+ implementation: openstack.glance_plugin.image.creation_validation
+ inputs:
+ multivim_config:
+ default: {}
+
+
+ onap.multivim.nodes.Project:
+ derived_from: cloudify.nodes.Root
+ properties:
+ project:
+ default: {}
+ description: >
+ key-value project configuration.
+ users:
+ default: []
+ description: >
+ List of users assigned to this project in the following format:
+ { name: string, roles: [string] }
+ quota:
+ default: {}
+ description: |
+ A dictionary mapping service names to quota definitions for a proejct
+
+ e.g::
+
+ quota:
+ neutron: <quota>
+ nova: <quota>
+ use_external_resource:
+ default: false
+ description: >
+ a boolean for setting whether to create the resource or use an existing one.
+ See the using existing resources section.
+ create_if_missing:
+ default: false
+ description: >
+ If use_external_resource is ``true`` and the resource is missing,
+ create it instead of failing.
+ resource_id:
+ default: ''
+ description: >
+ name to give to the new resource or the name or ID of an existing resource when the ``use_external_resource`` property is set to ``true`` (see the using existing resources section). Defaults to '' (empty string).
+ multivim_config:
+ default: {}
+ description: >
+ endpoints and authentication configuration for Openstack.
+ Expected to contain the following nested fields:
+ username, password, tenant_name, auth_url, region.
+ interfaces:
+ cloudify.interfaces.lifecycle:
+ create: openstack.keystone_plugin.project.create
+ start: openstack.keystone_plugin.project.start
+ delete: openstack.keystone_plugin.project.delete
+ cloudify.interfaces.validation:
+ creation: openstack.keystone_plugin.project.creation_validation
+
+relationships:
+ onap.multivim.port_connected_to_security_group:
+ derived_from: cloudify.relationships.connected_to
+ source_interfaces:
+ cloudify.interfaces.relationship_lifecycle:
+ establish:
+ implementation: openstack.neutron_plugin.port.connect_security_group
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.subnet_connected_to_router:
+ derived_from: cloudify.relationships.connected_to
+ target_interfaces:
+ cloudify.interfaces.relationship_lifecycle:
+ establish:
+ implementation: openstack.neutron_plugin.router.connect_subnet
+ inputs:
+ multivim_config:
+ default: {}
+ unlink:
+ implementation: openstack.neutron_plugin.router.disconnect_subnet
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.server_connected_to_floating_ip:
+ derived_from: cloudify.relationships.connected_to
+ source_interfaces:
+ cloudify.interfaces.relationship_lifecycle:
+ establish:
+ implementation: openstack.nova_plugin.server.connect_floatingip
+ inputs:
+ fixed_ip:
+ description: >
+ The fixed IP to be associated with the floating IP.
+ If omitted, Openstack will choose which port to associate.
+ type: string
+ default: ''
+ multivim_config:
+ default: {}
+ unlink:
+ implementation: openstack.nova_plugin.server.disconnect_floatingip
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.port_connected_to_floating_ip:
+ derived_from: cloudify.relationships.connected_to
+ source_interfaces:
+ cloudify.interfaces.relationship_lifecycle:
+ establish:
+ implementation: openstack.neutron_plugin.floatingip.connect_port
+ inputs:
+ multivim_config:
+ default: {}
+ unlink:
+ implementation: openstack.neutron_plugin.floatingip.disconnect_port
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.server_connected_to_security_group:
+ derived_from: cloudify.relationships.connected_to
+ source_interfaces:
+ cloudify.interfaces.relationship_lifecycle:
+ establish:
+ implementation: openstack.nova_plugin.server.connect_security_group
+ inputs:
+ multivim_config:
+ default: {}
+ unlink:
+ implementation: openstack.nova_plugin.server.disconnect_security_group
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.server_connected_to_port:
+ derived_from: cloudify.relationships.connected_to
+ source_interfaces:
+ cloudify.interfaces.relationship_lifecycle:
+ unlink:
+ implementation: openstack.neutron_plugin.port.detach
+ inputs:
+ multivim_config:
+ default: {}
+
+ onap.multivim.server_connected_to_keypair:
+ derived_from: cloudify.relationships.connected_to
+
+ onap.multivim.port_connected_to_subnet:
+ derived_from: cloudify.relationships.connected_to
+
+ onap.multivim.volume_attached_to_server:
+ derived_from: cloudify.relationships.connected_to
+ target_interfaces:
+ cloudify.interfaces.relationship_lifecycle:
+ establish:
+ implementation: openstack.nova_plugin.server.attach_volume
+ inputs:
+ multivim_config:
+ default: {}
+ status_attempts:
+ description: >
+ Number of times to check for the attachment's status before failing
+ type: integer
+ default: 10
+ status_timeout:
+ description: >
+ Interval (in seconds) between subsequent inquiries of the attachment's
+ status
+ type: integer
+ default: 2
+ unlink:
+ implementation: openstack.nova_plugin.server.detach_volume
+ inputs:
+ multivim_config:
+ default: {}
+ status_attempts:
+ description: >
+ Number of times to check for the detachment's status before failing
+ type: integer
+ default: 10
+ status_timeout:
+ description: >
+ Interval (in seconds) between subsequent inquiries of the detachment's
+ status
+ type: integer
+ default: 2