diff options
Diffstat (limited to 'asdc-tests/src/test/resources')
673 files changed, 25516 insertions, 0 deletions
diff --git a/asdc-tests/src/test/resources/CI/components/apache/apache-type.yml b/asdc-tests/src/test/resources/CI/components/apache/apache-type.yml new file mode 100644 index 0000000000..360b1a2d60 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/apache/apache-type.yml @@ -0,0 +1,50 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: TOSCA simple profile with Apache. +template_name: apache-type +template_version: 2.0.0-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-webServer:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Apache: + derived_from: tosca.nodes.WebServer + description: > + The TOSCA Apache Node Type represents an apache component + that can be managed and run by a TOSCA Compute Node Type. + capabilities: + host: + type: alien.capabilities.ApacheContainer + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + tags: + icon: /images/apache.png + properties: + version: + type: version + default: 2.4 + constraints: + - equal: 2.4 + port: + type: integer + description: Port for the Apache server + default: 80 + constraints: + - greater_or_equal: 1 + document_root: + type: string + default: "/var/www" + interfaces: + Standard: + create: + inputs: + PORT: { get_property: [SELF, port] } + DOC_ROOT: { get_property: [SELF, document_root] } + implementation: scripts/install_apache.sh + start: scripts/start_apache.sh + +capability_types: + alien.capabilities.ApacheContainer: + derived_from: tosca.capabilities.Container diff --git a/asdc-tests/src/test/resources/CI/components/apache/images/apache.png b/asdc-tests/src/test/resources/CI/components/apache/images/apache.png Binary files differnew file mode 100644 index 0000000000..8e9f402d90 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/apache/images/apache.png diff --git a/asdc-tests/src/test/resources/CI/components/apache/scripts/install_apache.sh b/asdc-tests/src/test/resources/CI/components/apache/scripts/install_apache.sh new file mode 100644 index 0000000000..a77f9a13f8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/apache/scripts/install_apache.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +echo "Using apt-get. Installing apache2 on one of the following : Debian, Ubuntu, Mint" +LOCK="/tmp/lockaptget" +DEFAULT_PORT=80 + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "Apache take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done + +sudo rm -f /var/lib/dpkg/lock +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo apt-get install -y -q apache2 || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/apache2 stop +if [ ! -d $DOC_ROOT ]; then + eval "sudo mkdir -p $DOC_ROOT" +fi +eval "sudo chown -R www-data:www-data $DOC_ROOT" + +if [[ ("$PORT" == "$DEFAULT_PORT") ]]; then + echo "Use default port for Apache : $DEFAULT_PORT" +else + echo "Replacing port $DEFAULT_PORT with $PORT..." + sudo sed -i -e "s/$DEFAULT_PORT/$PORT/g" /etc/apache2/ports.conf || exit ${1} +fi + +echo "Change config of apache2" +if sudo test -f "/etc/apache2/sites-available/default"; then + echo "Change the DocumentRoot of apache2 on Ubuntu < 14.04" + sudo sed -i -e "s#DocumentRoot /var/www#DocumentRoot $DOC_ROOT#g" /etc/apache2/sites-available/default +fi +if sudo test -f "/etc/apache2/sites-available/000-default.conf"; then + echo "Change the DocumentRoot of Apache2 on Ubuntu >= 14.04" + sudo sed -i -e "s#DocumentRoot /var/www/html#DocumentRoot $DOC_ROOT#g" /etc/apache2/sites-available/000-default.conf +fi + +sudo bash -c "echo ServerName localhost >> /etc/apache2/apache2.conf" + +echo "Start apache2 whith new conf" +sudo /etc/init.d/apache2 start +echo "End of $0" diff --git a/asdc-tests/src/test/resources/CI/components/apache/scripts/start_apache.sh b/asdc-tests/src/test/resources/CI/components/apache/scripts/start_apache.sh new file mode 100644 index 0000000000..478c56edf5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/apache/scripts/start_apache.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +service="apache2" + +if (( $(ps -ef | grep -v grep | grep $service | wc -l) > 0 )) +then + sudo /etc/init.d/$service restart +else + sudo /etc/init.d/$service start +fi diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/DBMS/images/relational_db.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/DBMS/images/relational_db.png Binary files differnew file mode 100644 index 0000000000..a7a632effd --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/DBMS/images/relational_db.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/DBMS/normative-types-DBMS.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/DBMS/normative-types-DBMS.yml new file mode 100644 index 0000000000..4a924672fc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/DBMS/normative-types-DBMS.yml @@ -0,0 +1,36 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-DBMS +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-softwareComponent:1.0.0.wd03-SNAPSHOT" + +node_types: + tosca.nodes.DBMS: + abstract: true + derived_from: tosca.nodes.SoftwareComponent + description: > + The TOSCA DBMS node represents a typical relational, SQL Database Management System software component or service. + tags: + icon: /images/relational_db.png + properties: + dbms_root_password: + type: string + required: false + description: the root password for the DBMS service. + dbms_port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests + capabilities: + host: + type: tosca.capabilities.Container + properties: + valid_node_types: [tosca.nodes.Database] + endpoint: + type: tosca.capabilities.DatabaseEndpoint + diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/blockStorage/images/volume.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/blockStorage/images/volume.png Binary files differnew file mode 100644 index 0000000000..16fa17bd70 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/blockStorage/images/volume.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/blockStorage/normative-types-blockStorage.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/blockStorage/normative-types-blockStorage.yml new file mode 100644 index 0000000000..df942b9f4f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/blockStorage/normative-types-blockStorage.yml @@ -0,0 +1,40 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-blockStorage +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + +node_types: + tosca.nodes.BlockStorage: + derived_from: tosca.nodes.Root + description: > + The TOSCA BlockStorage node currently represents a server-local block storage device (i.e., not shared) + offering evenly sized blocks of data from which raw storage volumes can be created. + tags: + icon: /images/volume.png + properties: + size: + type: integer + required: false + constraints: + - greater_than: 0 + description: The requested storage size in MegaBytes (MB). + volume_id: + type: string + required: false + description: ID of an existing volume (that is in the accessible scope of the requesting application). + snapshot_id: + type: string + required: false + description: Some identifier that represents an existing snapshot that should be used when creating the block storage (volume). + attributes: + volume_id: + type: string + description: ID provided by the orchestrator for newly created volumes. + requirements: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/compute/images/compute.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/compute/images/compute.png Binary files differnew file mode 100644 index 0000000000..7d5297eed3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/compute/images/compute.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/compute/normative-types-compute.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/compute/normative-types-compute.yml new file mode 100644 index 0000000000..3a972a81e0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/compute/normative-types-compute.yml @@ -0,0 +1,77 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-compute +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + +node_types: + # Infrastructure components + tosca.nodes.Compute: + derived_from: tosca.nodes.Root + description: > + Represents a real or virtual machine or ‘server’. Informations specified on the Compute + node will be used to find the machine that fits the given requirements in the cloud + available machines. If no sizing informations are specified the cloud’s provider default + machine will be used. It is strongly recommended to specify the required cpus and memory + at least. + tags: + icon: /images/compute.png + properties: + num_cpus: + type: integer + required: false + constraints: + - greater_than: 0 + description: Number of (actual or virtual) CPUs associated with the Compute node. + mem_size: + type: integer + required: false + constraints: + - greater_than: 0 + description: Size of memory, in Megabytes (MB), available to applications running on the Compute node. + disk_size: + type: integer + required: false + constraints: + - greater_than: 0 + description: Size of the local disk, in Gigabytes (GB), available to applications running on the Compute node. + os_arch: + type: string + constraints: + - valid_values: ["x86_32", "x86_64"] + description: The host Operating System (OS) architecture. + os_type: + type: string + constraints: + - valid_values: ["linux", "aix", "mac os", "windows"] + description: The host Operating System (OS) type. + os_distribution: + type: string + required: false + description: The host Operating System (OS) distribution. + os_version: + type: string + required: false + description: The host Operating System version. + attributes: + ip_address: + type: string + description: > + The primary IP address assigned by the cloud provider that applications may use to access the Compute node. + Note: This is used by the platform provider to convey the primary address used to access the compute node. Future working drafts will address implementations that support floating or multiple IP addresses. + requirements: + network: + type: tosca.capabilities.Connectivity + lower_bound: 0 + upper_bound: unbounded + capabilities: + host: + type: tosca.capabilities.Container + properties: + valid_node_types: [tosca.nodes.SoftwareComponent] + attach: tosca.capabilities.Attachment + scalable: tosca.capabilities.Scalable diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/database/images/relational_db.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/database/images/relational_db.png Binary files differnew file mode 100644 index 0000000000..a7a632effd --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/database/images/relational_db.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/database/normative-types-database.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/database/normative-types-database.yml new file mode 100644 index 0000000000..38bf5d11db --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/database/normative-types-database.yml @@ -0,0 +1,41 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-database +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + tosca.nodes.Database: + derived_from: tosca.nodes.Root + description: > + Base type for the schema and content associated with a DBMS. + The TOSCA Database node represents a logical database that can be managed and hosted by a TOSCA DBMS node. + tags: + icon: /images/relational_db.png + properties: + db_user: + type: string + required: false + description: The special user account used for database administration. + db_password: + type: string + required: false + description: The password associated with the user account provided in the ‘db_user’ property. + db_port: + type: integer + required: false + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: false + description: The logical name of the database. + requirements: + - host: tosca.nodes.DBMS + relationship_type: tosca.relationships.HostedOn + capabilities: + database_endpoint: tosca.capabilities.DatabaseEndpoint diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/network/images/network.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/network/images/network.png Binary files differnew file mode 100644 index 0000000000..c8bf18f31a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/network/images/network.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/network/normative-types-network.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/network/normative-types-network.yml new file mode 100644 index 0000000000..bb860f82be --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/network/normative-types-network.yml @@ -0,0 +1,39 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-network +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + +node_types: + tosca.nodes.Network: + derived_from: tosca.nodes.Root + description: > + The TOSCA Network node represents a simple, logical network service. + properties: + ip_version: + type: integer + required: false + default: 4 + constraints: + - valid_values: [ 4, 6 ] + cidr: + type: string + required: false + gateway_ip: + type: string + required: false + network_name: + type: string + required: false + network_id: + type: string + required: false + capabilities: + connection: + type: tosca.capabilities.Connectivity + tags: + icon: /images/network.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/objectStorage/images/objectstore.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/objectStorage/images/objectstore.png Binary files differnew file mode 100644 index 0000000000..2b2063c4f7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/objectStorage/images/objectstore.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/objectStorage/normative-types-objectStorage.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/objectStorage/normative-types-objectStorage.yml new file mode 100644 index 0000000000..a56fad5363 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/objectStorage/normative-types-objectStorage.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-objectStorage +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + +node_types: + tosca.nodes.ObjectStorage: + abstract: true + derived_from: tosca.nodes.Root + 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. + tags: + icon: /images/objectstore.png + properties: + store_name: + type: string + description: The logical name of the object store (or container). + store_size: + type: integer + required: false + constraints: + - greater_or_equal: 0 + description: The requested initial storage size in Gigabytes. + store_maxsize: + type: integer + required: false + constraints: + - greater_than: 0 + description: The requested maximum storage size in Gigabytes. diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/root/images/root.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/root/images/root.png Binary files differnew file mode 100644 index 0000000000..170f1c3c27 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/root/images/root.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/root/normative-types-root.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/root/normative-types-root.yml new file mode 100644 index 0000000000..7f4c16c260 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/root/normative-types-root.yml @@ -0,0 +1,168 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-root +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. + +node_types: + tosca.nodes.Root: + abstract: true + description: > + This is the default (root) TOSCA Node Type that all other TOSCA nodes should extends. + This allows all TOSCA nodes to have a consistent set of features for modeling and management + (e.g, consistent definitions for requirements, capabilities, and lifecycle interfaces). + tags: + icon: /images/root.png + attributes: + tosca_id: + type: string + tosca_name: + type: string + requirements: + dependency: + type: tosca.capabilities.Root + lower_bound: 0 + upper_bound: unbounded + capabilities: + root: + type: tosca.capabilities.Root + interfaces: + tosca.interfaces.node.lifecycle.Standard: + description: > + This lifecycle interface defines the essential, normative operations that TOSCA nodes may support. + create: + description: Standard lifecycle create operation. + configure: + description: Standard lifecycle configure operation (pre-start). + start: + description: Standard lifecycle start operation. + post_start: + description: Standard lifecycle post-configure operation (post-start) + stop: + description: Standard lifecycle stop operation. + delete: + description: Standard lifecycle delete operation. + + +capability_types: + tosca.capabilities.Root: + description: This is the default (root) TOSCA Capability Type definition that all other TOSCA Capability Types derive from. + tosca.capabilities.Container: + derived_from: tosca.capabilities.Root + properties: + valid_node_types: + type: string + required: true + description: > + A list of one or more names of Node Types that are supported as containees that declare the Container type as a Capability. + tosca.capabilities.Endpoint: + derived_from: tosca.capabilities.Root + properties: + protocol: + type: string + default: tcp + port: + type: integer + required: false + constraints: + - greater_or_equal: 1 + - less_or_equal: 65535 + secure: + type: boolean + default: false + url_path: + type: string + required: false + tosca.capabilities.DatabaseEndpoint: + derived_from: tosca.capabilities.Endpoint + description: This is the default TOSCA type that should be used or extended to define a specialized database endpoint capability. + tosca.capabilities.Attachment: + derived_from: tosca.capabilities.Root + description: This is the default TOSCA type that should be used or extended to define a network endpoint capability. + tosca.capabilities.Scalable: + derived_from: tosca.capabilities.Root + properties: + min_intances: + type: integer + default: 1 + max_intances: + type: integer + default: 1 + default_instances: + type: integer + default: 1 + tosca.capabilities.Connectivity: + derived_from: tosca.capabilities.Root + +relationship_types: + tosca.relationships.Root: + abstract: true + description: This is the default (root) TOSCA Relationship Type definition that all other TOSCA Relationship Types derive from. + valid_targets: [ tosca.capabilities.Root ] + attributes: + tosca_id: + type: string + tosca_name: + type: string + interfaces: + tosca.interfaces.relationship.Configure: + description: > + The lifecycle interfaces define the essential, normative operations that each TOSCA Relationship Types may support. + pre_configure_source: + description: Operation to pre-configure the source endpoint. + pre_configure_target: + description: Operation to pre-configure the target endpoint. + post_configure_source: + description: Operation to post-configure the source endpoint. + post_configure_target: + description: Operation to post-configure the target endpoint. + add_target: + description: Operation to notify the source node of a target node being added via a relationship. + add_source: + description: Operation to notify the target node of a source node which is now available via a relationship. + remove_target: + description: Operation to notify the source node of a target node being removed from a relationship. + remove_source: + description: Operation to notify the target node of a source node being removed from a relationship. + target_changed: + description: Operation to notify source some property or attribute of the target. + source_changed: + description: Operation to notify target some property or attribute of the source. + tosca.relationships.DependsOn: + derived_from: tosca.relationships.Root + description: > + A generic depends on relationship. + tosca.relationships.HostedOn: + derived_from: tosca.relationships.DependsOn + description: Relationship to use to describe that the source is hosted (installed/ deployed) on the target node. + valid_targets: [ tosca.capabilities.Container ] + tosca.relationships.ConnectsTo: + derived_from: tosca.relationships.DependsOn + valid_targets: [ tosca.capabilities.Endpoint ] + tosca.relationships.AttachTo: + derived_from: tosca.relationships.Root + valid_targets: [ tosca.capabilities.Attachment ] + properties: + location: + type: string + constraints: + - min_length: 1 + device: + type: string + required: false + tosca.relationships.Network: + derived_from: tosca.relationships.Root + valid_sources: [ tosca.capabilities.Connectivity ] + valid_targets: [ tosca.capabilities.Connectivity ] + +artifact_types: + tosca.artifacts.Root: + description: The TOSCA Artifact Type all other TOSCA Artifact Types derive from. + tosca.artifacts.File: + derived_from: tosca.artifacts.Root + 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. + tosca.artifacts.ShellScript: + description: A shell script (.sh file) + file_ext: [ sh ] diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/softwareComponent/images/software.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/softwareComponent/images/software.png Binary files differnew file mode 100644 index 0000000000..dc9c53245d --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/softwareComponent/images/software.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/softwareComponent/normative-types-softwareComponent.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/softwareComponent/normative-types-softwareComponent.yml new file mode 100644 index 0000000000..04e04af640 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/softwareComponent/normative-types-softwareComponent.yml @@ -0,0 +1,25 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-softwareComponent +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + +node_types: + + tosca.nodes.SoftwareComponent: + abstract: true + derived_from: tosca.nodes.Root + description: > + The TOSCA SoftwareComponent Node Type represents a generic software component + that can be managed and run by a TOSCA Compute Node Type. + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/software.png + diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/webApplication/images/network.png b/asdc-tests/src/test/resources/CI/components/normativeTypes/webApplication/images/network.png Binary files differnew file mode 100644 index 0000000000..c8bf18f31a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/webApplication/images/network.png diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/webApplication/normative-types-webApplication.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/webApplication/normative-types-webApplication.yml new file mode 100644 index 0000000000..ded008ebdf --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/webApplication/normative-types-webApplication.yml @@ -0,0 +1,21 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-webApplication +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-webServer:1.0.0.wd03-SNAPSHOT" + +node_types: + tosca.nodes.WebApplication: + derived_from: tosca.nodes.Root + 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. + tags: + icon: /images/network.png + requirements: + - host: tosca.nodes.WebServer + type: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/components/normativeTypes/webServer/normative-types-webServer.yml b/asdc-tests/src/test/resources/CI/components/normativeTypes/webServer/normative-types-webServer.yml new file mode 100644 index 0000000000..1c2e4b2ea5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/components/normativeTypes/webServer/normative-types-webServer.yml @@ -0,0 +1,24 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 + +template_name: tosca-normative-types-webServer +template_author: TOSCA TC +template_version: 1.0.0.wd03-SNAPSHOT + +description: Contains the normative types definition. +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-softwareComponent:1.0.0.wd03-SNAPSHOT" + +node_types: + tosca.nodes.WebServer: + abstract: true + derived_from: tosca.nodes.SoftwareComponent + description: > + The 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 + capabilities: + app_endpoint: tosca.capabilities.Endpoint + secure_endpoint: tosca.capabilities.Endpoint + host: + type: tosca.capabilities.Container + properties: + valid_node_types: [ tosca.nodes.WebApplication ] diff --git a/asdc-tests/src/test/resources/CI/configuration.yaml b/asdc-tests/src/test/resources/CI/configuration.yaml new file mode 100644 index 0000000000..cb91316a21 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/configuration.yaml @@ -0,0 +1,382 @@ +identificationHeaderFields: + - HTTP_IV_USER + - HTTP_CSP_FIRSTNAME + - HTTP_CSP_LASTNAME + - HTTP_IV_REMOTE_ADDRESS + - HTTP_CSP_WSTYPE + + + +# catalog backend hostname +beFqdn: sdccatalog.att.com + +# catalog backend http port +beHttpPort: 8080 + +# catalog backend http context +beContext: /sdc/rest/config/get + +# catalog backend protocol +beProtocol: http + +# catalog backend ssl port +beSslPort: 8443 + +version: 1.0 +released: 2012-11-30 + +titanCfgFile: /home/vagrant/catalog-be/config/catalog-be/titan.properties +titanInMemoryGraph: false +titanLockTimeout: 30 +titanReconnectIntervalInSeconds: 3 +titanHealthCheckReadTimeout: 1 +esReconnectIntervalInSeconds: 3 +uebHealthCheckReconnectIntervalInSeconds: 15 +uebHealthCheckReadTimeout: 4 + +# Protocols +protocols: + - http + - https + +# Users +users: + tom: passwd + bob: passwd + +neo4j: + host: neo4jhost + port: 7474 + user: neo4j + password: "12345" + + +#Application-specific settings of ES +elasticSearch: + # Mapping of index prefix to time-based frame. For example, if below is configured: + # + # - indexPrefix: auditingevents + # creationPeriod: minute + # + # then ES object of type which is mapped to "auditingevents-*" template, and created on 2015-12-23 13:24:54, will enter "auditingevents-2015-12-23-13-24" index. + # Another object created on 2015-12-23 13:25:54, will enter "auditingevents-2015-12-23-13-25" index. + # If creationPeriod: month, both of the above will enter "auditingevents-2015-12" index. + # + # PLEASE NOTE: the timestamps are created in UTC/GMT timezone! This is needed so that timestamps will be correctly presented in Kibana. + # + # Legal values for creationPeriod - year, month, day, hour, minute, none (meaning no time-based behaviour). + # + # If no creationPeriod is configured for indexPrefix, default behavour is creationPeriod: month. + + indicesTimeFrequency: + - indexPrefix: auditingevents + creationPeriod: month + - indexPrefix: monitoring_events + creationPeriod: month + +artifactTypes: + - CHEF + - PUPPET + - SHELL + - YANG + - YANG_XML + - HEAT + - BPEL + - DG_XML + - MURANO_PKG + - WORKFLOW + - NETWORK_CALL_FLOW + - OTHER + +licenseTypes: + - User + - Installation + - CPU + +#Deployment artifacts placeHolder +resourceTypes: &allResourceTypes + - VFC + - CP + - VL + - VF + +# validForResourceTypes usage +# validForResourceTypes: +# - VF +# - VL +deploymentResourceArtifacts: + heat: + displayName: "Base HEAT Template" + type: HEAT + validForResourceTypes: *allResourceTypes + heatVol: + displayName: "Volume HEAT Template" + type: HEAT_VOL + validForResourceTypes: *allResourceTypes + heatNet: + displayName: "Network HEAT Template" + type: HEAT_NET + validForResourceTypes: *allResourceTypes + +deploymentResourceInstanceArtifacts: + heatEnv: + displayName: "HEAT ENV" + type: HEAT_ENV + description: "Auto-generated HEAT Environment deployment artifact" + fileExtension: "env" + +#Informational artifacts placeHolder +excludeResourceCategory: + - Generic +informationalResourceArtifacts: + features: + displayName: Features + type: OTHER + capacity: + displayName: Capacity + type: OTHER + vendorTestResult: + displayName: Vendor Test Result + type: OTHER + testScripts: + displayName: Test Scripts + type: OTHER + cloudQuestionnaire: + displayName: Cloud Questionnaire (completed) + type: OTHER + HEATTemplateFromVendor: + displayName: HEAT Template from Vendor + type: HEAT + resourceSecurityTemplate: + displayName: Resource Security Template + type: OTHER + +excludeServiceCategory: + +informationalServiceArtifacts: + serviceArtifactPlan: + displayName: Service Artifact Plan + type: OTHER + summaryOfImpactsToECOMPElements: + displayName: Summary of impacts to ECOMP elements,OSSs, BSSs + type: OTHER + controlLoopFunctions: + displayName: Control Loop Functions + type: OTHER + dimensioningInfo: + displayName: Dimensioning Info + type: OTHER + affinityRules: + displayName: Affinity Rules + type: OTHER + operationalPolicies: + displayName: Operational Policies + type: OTHER + serviceSpecificPolicies: + displayName: Service-specific Policies + type: OTHER + engineeringRules: + displayName: Engineering Rules (ERD) + type: OTHER + distributionInstructions: + displayName: Distribution Instructions + type: OTHER + certificationTestResults: + displayName: TD Certification Test Results + type: OTHER + deploymentVotingRecord: + displayName: Deployment Voting Record + type: OTHER + serviceQuestionnaire: + displayName: Service Questionnaire + type: OTHER + serviceSecurityTemplate: + displayName: Service Security Template + type: OTHER + +serviceApiArtifacts: + configuration: + displayName: Configuration + type: OTHER + instantiation: + displayName: Instantiation + type: OTHER + monitoring: + displayName: Monitoring + type: OTHER + reporting: + displayName: Reporting + type: OTHER + logging: + displayName: Logging + type: OTHER + testing: + displayName: Testing + type: OTHER + + +additionalInformationMaxNumberOfKeys: 50 + +systemMonitoring: + enabled: false + isProxy: false + probeIntervalInSeconds: 15 + +defaultHeatArtifactTimeoutMinutes: 60 + +serviceDeploymentArtifacts: + YANG_XML: + acceptedTypes: + - xml + VNF_CATALOG: + acceptedTypes: + - xml + MODEL_INVENTORY_PROFILE: + acceptedTypes: + - xml + MODEL_QUERY_SPEC: + acceptedTypes: + - xml + OTHER: + acceptedTypes: + +resourceDeploymentArtifacts: + HEAT: + acceptedTypes: + - yaml + - yml + validForResourceTypes: *allResourceTypes + HEAT_VOL: + acceptedTypes: + - yaml + - yml + validForResourceTypes: *allResourceTypes + HEAT_NET: + acceptedTypes: + - yaml + - yml + validForResourceTypes: *allResourceTypes + YANG_XML: + acceptedTypes: + - xml + validForResourceTypes: *allResourceTypes + VNF_CATALOG: + acceptedTypes: + - xml + validForResourceTypes: *allResourceTypes + VF_LICENSE: + acceptedTypes: + - xml + validForResourceTypes: *allResourceTypes + VENDOR_LICENSE: + acceptedTypes: + - xml + validForResourceTypes: *allResourceTypes + MODEL_INVENTORY_PROFILE: + acceptedTypes: + - xml + validForResourceTypes: *allResourceTypes + MODEL_QUERY_SPEC: + acceptedTypes: + - xml + validForResourceTypes: *allResourceTypes + APPC_CONFIG: + acceptedTypes: + - xml + - json + validForResourceTypes: + - VF + OTHER: + acceptedTypes: + validForResourceTypes: *allResourceTypes + +resourceInstanceDeploymentArtifacts: + HEAT_ENV: + acceptedTypes: + - env + +resourceInformationalDeployedArtifacts: + + +requirementsToFulfillBeforeCert: + CP: + - tosca.capabilities.network.Bindable + +capabilitiesToConsumeBeforeCert: + +unLoggedUrls: + - /sdc2/rest/healthCheck + +cleanComponentsConfiguration: + cleanIntervalInMinutes: 1440 + componentsToClean: + - Resource + - Service + +artifactsIndex: resources + +cassandraConfig: + cassandraHosts: ['localhost'] + localDataCenter: + reconnectTimeout : 30000 + authenticate: false + username: koko + password: bobo + ssl: false + truststorePath : /path/path + truststorePassword : 123123 + keySpaces: + - { name: sdcaudit, replicationStrategy: SimpleStrategy, replicationInfo: ['1']} + - { name: sdcartifact, replicationStrategy: SimpleStrategy, replicationInfo: ['1']} + +heatEnvArtifactHeader: + "" +heatEnvArtifactFooter: + "" + +onboarding: + protocol: http + host: localhost + port: 8181 + downloadCsarUri: "/onboardingci/onbrest/onboarding-api/v1.0/vendor-software-products/packages" + +switchoverDetector: + gBeFqdn: + gFeFqdn: + beVip: 1.2.3.4 + feVip: 1.2.3.4 + beResolveAttempts: 3 + feResolveAttempts: 3 + enabled: false + interval: 60 + changePriorityUser: ecompasdc + changePriorityPassword: ecompasdc123 + publishNetworkUrl: "http://localhost/crt/CipDomain.ECOMP-ASDC-DEVST/config/update_network?user=root" + publishNetworkBody: '{"note":"publish network"}' + groups: + beSet: { changePriorityUrl: "http://localhost/crt/CipDomain.ECOMP-ASDC-DEVST/config/sites/AIO-BE.ecomp.idns.cip?user=root", + changePriorityBody: '{"name":"AIO-BE.ecomp.idns.cip","uri":"/crt/CipDomain.ECOMP-ASDC-DEVST/config/sites/AIO-BE.ecomp.idns.cip","no_ad_redirection":false,"v4groups":{"failover_groups":["/crt/CipDomain.ECOMP-ASDC-DEVST/config/groups/group_mg_be","/crt/CipDomain.ECOMP-ASDC-DEVST/config/groups/group_bs_be"],"failover_policy":["FAILALL"]},"comment":"AIO BE G-fqdn","intended_app_proto":"DNS"}'} + feSet: { changePriorityUrl: "http://cora.web/crt/CipDomain.ECOMP-ASDC-DEVST/config/sites/AIO-FE.ecomp.idns.cip?user=root", + changePriorityBody: '{"comment":"AIO G-fqdn","name":"AIO-FE.ecomp.idns.cip","v4groups":{"failover_groups":["/crt/CipDomain.ECOMP-ASDC-DEVST/config/groups/group_mg_fe","/crt/CipDomain.ECOMP-ASDC-DEVST/config/groups/group_bs_fe"],"failover_policy":["FAILALL"]},"no_ad_redirection":false,"intended_app_proto":"DNS","uri":"/crt/CipDomain.ECOMP-ASDC-DEVST/config/sites/AIO-FE.ecomp.idns.cip.att.com"}'} + + +applicationL1Cache: + datatypes: + enabled: true + firstRunDelay: 10 + pollIntervalInSec: 60 + +applicationL2Cache: + enabled: false + catalogL1Cache: + enabled: true + resourcesSizeInCache: 300 + servicesSizeInCache: 200 + productsSizeInCache: 100 + queue: + syncIntervalInSecondes: 60 + waitOnShutDownInMinutes: 30 + numberOfCacheWorkers: 4 + +toscaValidators: + stringMaxLength: 1024
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/csars/FCGI_with_inputs.csar b/asdc-tests/src/test/resources/CI/csars/FCGI_with_inputs.csar Binary files differnew file mode 100644 index 0000000000..a702c78d25 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/FCGI_with_inputs.csar diff --git a/asdc-tests/src/test/resources/CI/csars/LDSA1_with_inputs.csar b/asdc-tests/src/test/resources/CI/csars/LDSA1_with_inputs.csar Binary files differnew file mode 100644 index 0000000000..a551ce3263 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/LDSA1_with_inputs.csar diff --git a/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts.csar b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts.csar Binary files differnew file mode 100644 index 0000000000..a6678a47d1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts.csar diff --git a/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_a.csar b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_a.csar Binary files differnew file mode 100644 index 0000000000..ca0ab91e39 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_a.csar diff --git a/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_b.csar b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_b.csar Binary files differnew file mode 100644 index 0000000000..890ae20cb3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_b.csar diff --git a/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming.csar b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming.csar Binary files differnew file mode 100644 index 0000000000..04464af741 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming.csar diff --git a/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_a.csar b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_a.csar Binary files differnew file mode 100644 index 0000000000..68819afc4b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_a.csar diff --git a/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_add_update.csar b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_add_update.csar Binary files differnew file mode 100644 index 0000000000..528599e0c5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_add_update.csar diff --git a/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_delete_update.csar b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_delete_update.csar Binary files differnew file mode 100644 index 0000000000..6a708d335f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_group_naming_delete_update.csar diff --git a/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_update.csar b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_update.csar Binary files differnew file mode 100644 index 0000000000..035497a52e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/VF_RI2_G4_withArtifacts_update.csar diff --git a/asdc-tests/src/test/resources/CI/csars/jsonPropertyTypeTest.csar b/asdc-tests/src/test/resources/CI/csars/jsonPropertyTypeTest.csar Binary files differnew file mode 100644 index 0000000000..2aa2ef4582 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/jsonPropertyTypeTest.csar diff --git a/asdc-tests/src/test/resources/CI/csars/mycompute.yml b/asdc-tests/src/test/resources/CI/csars/mycompute.yml new file mode 100644 index 0000000000..c8a0c03384 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/mycompute.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vfc.mycompute: + derived_from: tosca.nodes.Compute + capabilities: + scalable: + type: tosca.capabilities.Scalable + properties: + propertyForTest: + type: string + description: test + required: true + default: success + # min_instances property should override property from tosca.capabilities.Scalable + min_instances: + type: integer + default: 3 + diff --git a/asdc-tests/src/test/resources/CI/csars/mycompute2.yml b/asdc-tests/src/test/resources/CI/csars/mycompute2.yml new file mode 100644 index 0000000000..9d479a1a55 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/mycompute2.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vfc.mycompute2: + derived_from: tosca.nodes.Compute + capabilities: + scalable: + type: tosca.capabilities.Scalable + properties: + propertyForTest: + type: string + description: test + required: true + default: success + # min_instances property should override property from tosca.capabilities.Scalable + min_instances: + type: integer + default: 3 + diff --git a/asdc-tests/src/test/resources/CI/csars/mycompute_failed.yml b/asdc-tests/src/test/resources/CI/csars/mycompute_failed.yml new file mode 100644 index 0000000000..a4d8e448f1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/mycompute_failed.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vfc.mycompute: + derived_from: tosca.nodes.Compute + capabilities: + scalable: + type: tosca.capabilities.Scalable + properties: + propertyForTest: + type: string + description: test + required: true + default: success + # min_instances property should override property from tosca.capabilities.Scalable + min_instances: + type: string + default: 3 + diff --git a/asdc-tests/src/test/resources/CI/csars/orig2G.csar b/asdc-tests/src/test/resources/CI/csars/orig2G.csar Binary files differnew file mode 100644 index 0000000000..609cd0a8b4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/orig2G.csar diff --git a/asdc-tests/src/test/resources/CI/csars/orig2GV001.csar b/asdc-tests/src/test/resources/CI/csars/orig2GV001.csar Binary files differnew file mode 100644 index 0000000000..a7e04cbf10 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/orig2GV001.csar diff --git a/asdc-tests/src/test/resources/CI/csars/orig2GV001_a.csar b/asdc-tests/src/test/resources/CI/csars/orig2GV001_a.csar Binary files differnew file mode 100644 index 0000000000..07371acaf2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/orig2GV001_a.csar diff --git a/asdc-tests/src/test/resources/CI/csars/orig2GV006-remove-all-nested-artifacts.csar b/asdc-tests/src/test/resources/CI/csars/orig2GV006-remove-all-nested-artifacts.csar Binary files differnew file mode 100644 index 0000000000..ebd95548f8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/orig2GV006-remove-all-nested-artifacts.csar diff --git a/asdc-tests/src/test/resources/CI/csars/orig2GV008-change-nested-oam-fileContent.csar b/asdc-tests/src/test/resources/CI/csars/orig2GV008-change-nested-oam-fileContent.csar Binary files differnew file mode 100644 index 0000000000..dc75ae1549 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/orig2GV008-change-nested-oam-fileContent.csar diff --git a/asdc-tests/src/test/resources/CI/csars/orig2G_a.csar b/asdc-tests/src/test/resources/CI/csars/orig2G_a.csar Binary files differnew file mode 100644 index 0000000000..2f6ad121a6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/orig2G_a.csar diff --git a/asdc-tests/src/test/resources/CI/csars/orig2G_updated.csar b/asdc-tests/src/test/resources/CI/csars/orig2G_updated.csar Binary files differnew file mode 100644 index 0000000000..1968eabf4b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/orig2G_updated.csar diff --git a/asdc-tests/src/test/resources/CI/csars/valid_vf.csar b/asdc-tests/src/test/resources/CI/csars/valid_vf.csar Binary files differnew file mode 100644 index 0000000000..01bf159071 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/valid_vf.csar diff --git a/asdc-tests/src/test/resources/CI/csars/valid_vf_a.csar b/asdc-tests/src/test/resources/CI/csars/valid_vf_a.csar Binary files differnew file mode 100644 index 0000000000..01bf159071 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/valid_vf_a.csar diff --git a/asdc-tests/src/test/resources/CI/csars/valid_vf_b.csar b/asdc-tests/src/test/resources/CI/csars/valid_vf_b.csar Binary files differnew file mode 100644 index 0000000000..3c0b683321 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/valid_vf_b.csar diff --git a/asdc-tests/src/test/resources/CI/csars/valid_vf_c.csar b/asdc-tests/src/test/resources/CI/csars/valid_vf_c.csar Binary files differnew file mode 100644 index 0000000000..57e3551682 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/valid_vf_c.csar diff --git a/asdc-tests/src/test/resources/CI/csars/valid_vf_d.csar b/asdc-tests/src/test/resources/CI/csars/valid_vf_d.csar Binary files differnew file mode 100644 index 0000000000..d66dfb60d9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/valid_vf_d.csar diff --git a/asdc-tests/src/test/resources/CI/csars/valid_vf_f.csar b/asdc-tests/src/test/resources/CI/csars/valid_vf_f.csar Binary files differnew file mode 100644 index 0000000000..a9a4bc75ab --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/valid_vf_f.csar diff --git a/asdc-tests/src/test/resources/CI/csars/vf_relate_by_cap_name.csar b/asdc-tests/src/test/resources/CI/csars/vf_relate_by_cap_name.csar Binary files differnew file mode 100644 index 0000000000..f2a7efb69e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/vf_relate_by_cap_name.csar diff --git a/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop.csar b/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop.csar Binary files differnew file mode 100644 index 0000000000..df98e259d6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop.csar diff --git a/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop1.csar b/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop1.csar Binary files differnew file mode 100644 index 0000000000..d4561a0640 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop1.csar diff --git a/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop1_failed.csar b/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop1_failed.csar Binary files differnew file mode 100644 index 0000000000..f145ebd5d2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop1_failed.csar diff --git a/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop_failed.csar b/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop_failed.csar Binary files differnew file mode 100644 index 0000000000..6e23829e8a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/vf_with_cap_prop_override_cap_type_prop_failed.csar diff --git a/asdc-tests/src/test/resources/CI/csars/vmmc_relate_by_cap_name.csar b/asdc-tests/src/test/resources/CI/csars/vmmc_relate_by_cap_name.csar Binary files differnew file mode 100644 index 0000000000..ada1451cea --- /dev/null +++ b/asdc-tests/src/test/resources/CI/csars/vmmc_relate_by_cap_name.csar diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.json b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.json new file mode 100644 index 0000000000..1bf593852b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.json @@ -0,0 +1,11 @@ +{ + "payloadName": "LAN_Connector.yml", + "contactId": "jh0003", + "resourceName": "org.openecomp.asdc.nodes.Connector.LAN_Connector", + "description": "Represents a LAN_Connector Node Type.", + "resourceIconPath": "defaulticon", + "category": "Infrastructure", + "tags": [ + "org.openecomp.asdc.nodes.Connector.LAN_Connector" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.yml b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.yml new file mode 100644 index 0000000000..4fff368cdc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.yml @@ -0,0 +1,23 @@ +org.openecomp.asdc.nodes.Connector.LAN_Connector: + #The LAN_Connector node connects Router and VNF_Container + derived_from: org.openecomp.asdc.nodes.Connector + properties: + network_id: + #or called: vlan_id + type: string + required: true + network_type: + #The technology types used by LAN connector + type: string + attributes: + network_ip_address: + #ip address is generated only after the node is instantiated at run-time + type: string + requirements: + - connectToRouter : + capability: tosca.capabilities.Root + node: org.openecomp.asdc.nodes.Router + - connectToVNF : + capability: tosca.capabilities.Root + node: org.openecomp.asdc.nodes.VNF_Container + #These two explicit requirements specify the LAN_Connector has two "connectTo" to connect to the node of Router type and VNF_Container type respectively diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.zip b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.zip Binary files differnew file mode 100644 index 0000000000..1b02f06386 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/LAN_Connector/LAN_Connector.zip diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.json b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.json new file mode 100644 index 0000000000..35b426c831 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.json @@ -0,0 +1,11 @@ +{ + "payloadName": "VNF.yml", + "contactId": "jh0003", + "resourceName": "org.openecomp.asdc.nodes.VNF", + "description": "Represents a VNF Node Type.", + "resourceIconPath": "defaulticon", + "category": "Infrastructure", + "tags": [ + "org.openecomp.asdc.nodes.VNF" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.yml b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.yml new file mode 100644 index 0000000000..22be623303 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.yml @@ -0,0 +1,16 @@ +org.openecomp.asdc.nodes.VNF: + #The VNF node is required to be hosted by a VNF_Container + derived_from: org.openecomp.asdc.nodes.Root + properties: + service_name: + type: string + attributes: + #attribute means the value is fulfilled at run-time. + service_id: + #In this case, we consider the VNF node only has the service_id value when the node is instantiated + type: string + requirements: + #the "host" requirement can establish the relationship with a VNF_Container node + - host : + capability: org.openecomp.asdc.capabilities.Container + node: org.openecomp.asdc.nodes.VNF_Container
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.zip b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.zip Binary files differnew file mode 100644 index 0000000000..c01081f0ab --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF/VNF.zip diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.json b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.json new file mode 100644 index 0000000000..c1347780e3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.json @@ -0,0 +1,11 @@ +{ + "payloadName": "VNF_Container.yml", + "contactId": "jh0003", + "resourceName": "org.openecomp.asdc.nodes.VNF_Container", + "description": "Represents a VNF_Container Node Type.", + "resourceIconPath": "defaulticon", + "category": "Infrastructure", + "tags": [ + "org.openecomp.asdc.nodes.VNF_Container" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.yml b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.yml new file mode 100644 index 0000000000..b8dd8355fa --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.yml @@ -0,0 +1,10 @@ +org.openecomp.asdc.nodes.VNF_Container: + #The VNF_Container node provides the capability to host VNFs. + derived_from: org.openecomp.asdc.nodes.Root + capabilities: + host: + #The "host" capability allows other TOSCA nodes (VNF) that requires such a capability to connect to this node + type: org.openecomp.asdc.capabilities.Container + connectTo: + #The "connectTo" capability allows other TOSCA nodes (connectors) that requires such a capability to connect to this node. + type: org.openecomp.asdc.capabilities.Endpoint
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.zip b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.zip Binary files differnew file mode 100644 index 0000000000..a8e006e728 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/VNF_Container/VNF_Container.zip diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.json b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.json new file mode 100644 index 0000000000..4cb0880297 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.json @@ -0,0 +1,11 @@ +{ + "payloadName": "WAN_Connector.yml", + "contactId": "jh0003", + "resourceName": "org.openecomp.asdc.nodes.Connector.WAN_Connector", + "description": "Represents a WAN_Connector Node Type.", + "resourceIconPath": "defaulticon", + "category": "Infrastructure", + "tags": [ + "org.openecomp.asdc.nodes.Connector.WAN_Connector" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.yml b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.yml new file mode 100644 index 0000000000..741d585488 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.yml @@ -0,0 +1,25 @@ +org.openecomp.asdc.nodes.Connector.WAN_Connector: + #The WAN_Connector node only connects to Router + derived_from: org.openecomp.asdc.nodes.Connector + properties: + customer_id: + type: string + required: true + vpn_id: + type: string + required: true + vpn_name: + type: string + required: true + network_type: + #The technology types used by WAN connector + type: string + attributes: + network_ip_address: + #ip address is generated only after the node is instantiated at run-time + type: string + requirements: + - connectTo : + capability: org.openecomp.asdc.capabilities.Endpoint + node: org.openecomp.asdc.nodes.Router + #This explicit requirement specifies WAN_Connector has only one "connectTo" to connect to the node of Router type
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.zip b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.zip Binary files differnew file mode 100644 index 0000000000..e193820659 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/WAN_Connector/WAN_Connector.zip diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/capabilityTypesWanLan.yml b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/capabilityTypesWanLan.yml new file mode 100644 index 0000000000..32989237d2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/capabilityTypesWanLan.yml @@ -0,0 +1,4 @@ +org.openecomp.asdc.capabilities.Endpoint: + derived_from: tosca.capabilities.Endpoint +org.openecomp.asdc.capabilities.Container: + derived_from: tosca.capabilities.Container
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/capabilityTypesWanLan.zip b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/capabilityTypesWanLan.zip Binary files differnew file mode 100644 index 0000000000..869be32b53 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/capabilityTypesWanLan.zip diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.json b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.json new file mode 100644 index 0000000000..99be86c707 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.json @@ -0,0 +1,11 @@ +{ + "payloadName": "connector.yml", + "contactId": "jh0003", + "resourceName": "org.openecomp.asdc.nodes.Connector", + "description": "Represents a connector Node Type.", + "resourceIconPath": "defaulticon", + "category": "Abstract", + "tags": [ + "org.openecomp.asdc.nodes.Connector" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.yml b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.yml new file mode 100644 index 0000000000..d9c9361daa --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.yml @@ -0,0 +1,10 @@ +org.openecomp.asdc.nodes.Connector: + #Connector is the parent node of both WAN and LAN connectors. + derived_from: org.openecomp.asdc.nodes.Root + requirements: + - connectTo: + capability: org.openecomp.asdc.capabilities.Endpoint + #the requirement can establish the relationship with a node providing such capability + relationship: org.openecomp.asdc.relationships.ConnectsTo + #occurrences means how many times this requirement can appear in one node. + occurrences: [1, UNBOUNDED]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.zip b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.zip Binary files differnew file mode 100644 index 0000000000..3c37303a3a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/connector/connector.zip diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/deleteResourcesLanWanDemo.sh b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/deleteResourcesLanWanDemo.sh new file mode 100644 index 0000000000..9f992d56dd --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/deleteResourcesLanWanDemo.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort>" +} + +function deleteResource() { + + ELEMENT_NAME=$1 + echo "###################### Removing Element ${ELEMENT_NAME} Start ######################" + curl -X "DELETE" -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/resources/res_${ELEMENT_NAME}".1.0" + echo "" + echo "###################### Removing Element ${ELEMENT_NAME} End ########################" + echo "" + echo "" + echo "" +} +if [ $# -lt 2 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 + + +deleteResource "org.openecomp.asdc.nodes.Connector.LAN_Connector" +deleteResource "org.openecomp.asdc.nodes.Connector.WAN_Connector" +deleteResource "org.openecomp.asdc.nodes.Connector" +deleteResource "org.openecomp.asdc.nodes.VNF" +deleteResource "org.openecomp.asdc.nodes.VNF_Container" +deleteResource "org.openecomp.asdc.nodes.Router" +deleteResource "org.openecomp.asdc.nodes.Root" + + diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/importResourcesLanWanDemo.sh b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/importResourcesLanWanDemo.sh new file mode 100644 index 0000000000..90a06d53b5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/importResourcesLanWanDemo.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort>" +} + +function addResource() { + + ELEMENT_NAME=$1 + echo -e "###################### Adding Element ${ELEMENT_NAME} Start ######################" + CURRENT_ZIP_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.zip + CURRENT_JSON_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.json + JSON_CONTENT=`paste -s ${CURRENT_JSON_FILE}` + curl -v -F resourceMetadata="${JSON_CONTENT}" -F resourceZip=@${CURRENT_ZIP_FILE} -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/upload/multipart + echo "" + echo -e "###################### Adding Element ${ELEMENT_NAME} End ########################" + +} +if [ $# -lt 2 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 + +#Add The CapabilityTypes +http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F capabilityTypeZip=@capabilityTypesWanLan.zip -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/uploadType/capability) +if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding The CapabilityTypes status code:${http_code} End ########################\n\n\n" +elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add CapabilityTypes status code:${http_code} End ########################\n\n\n" + exit 1 +else + echo -e "\n###################### Failed to add CapabilityTypes status code:${http_code} End ########################\n\n\n" + exit 1 +fi + +addResource "root" +addResource "router" +addResource "VNF_Container" +addResource "VNF" +addResource "connector" +addResource "WAN_Connector" +addResource "LAN_Connector" + + + diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.json b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.json new file mode 100644 index 0000000000..54cbb798a2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.json @@ -0,0 +1,11 @@ +{ + "payloadName": "root.yml", + "contactId": "jh0003", + "resourceName": "org.openecomp.asdc.nodes.Root", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "category": "Abstract", + "tags": [ + "org.openecomp.asdc.nodes.Root" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.yml b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.yml new file mode 100644 index 0000000000..34e7d0fb62 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.yml @@ -0,0 +1,3 @@ +org.openecomp.asdc.nodes.Root: + #Define the root node for ASDC modeling + derived_from: tosca.nodes.Root
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.zip b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.zip Binary files differnew file mode 100644 index 0000000000..ff604d55a7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/root/root.zip diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.json b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.json new file mode 100644 index 0000000000..19e4669a38 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.json @@ -0,0 +1,11 @@ +{ + "payloadName": "router.yml", + "contactId": "jh0003", + "resourceName": "org.openecomp.asdc.nodes.Router", + "description": "Represents a Router Node Type.", + "resourceIconPath": "defaulticon", + "category": "Infrastructure", + "tags": [ + "org.openecomp.asdc.nodes.Router" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.yml b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.yml new file mode 100644 index 0000000000..0598663c64 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.yml @@ -0,0 +1,13 @@ +org.openecomp.asdc.nodes.Router: + #The Router node has a property "routing_table" which is a list. The entry of the routing_table is the customized data type "RoutingTableEntry" + derived_from: org.openecomp.asdc.nodes.Root + properties: + routing_table: + type: list + entry_schema: + #"entry_schema" is the TOSCA spec to describe the type of the list item + type: RoutingTableEntry + capabilities: + connectTo: + #The "connectTo" capability allows other TOSCA nodes (connectors) that requires such a capability to connect to this node. + type: org.openecomp.asdc.capabilities.Endpoint
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.zip b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.zip Binary files differnew file mode 100644 index 0000000000..57ff8e0e2a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/demoResourcesWanLan/router/router.zip diff --git a/asdc-tests/src/test/resources/CI/error-configuration.yaml b/asdc-tests/src/test/resources/CI/error-configuration.yaml new file mode 100644 index 0000000000..6d4e2373fa --- /dev/null +++ b/asdc-tests/src/test/resources/CI/error-configuration.yaml @@ -0,0 +1,1576 @@ +# Errors +errors: + OK: { + code: 200, + message: "OK" + } + CREATED: { + code: 201, + message: "OK" + } + NO_CONTENT: { + code: 204, + message: "No Content" + } +#--------POL4050----------------------------- + NOT_ALLOWED: { + code: 405, + message: "Error: Method not allowed.", + messageId: "POL4050" + } +#--------POL5000----------------------------- + GENERAL_ERROR: { + code: 500, + message: "Error: Internal Server Error. Please try again later.", + messageId: "POL5000" + } +#---------POL5001------------------------------ + MISSING_X_ECOMP_INSTANCE_ID: { + code: 400 , + message: "Error: Missing 'X-ECOMP-InstanceID' HTTP header.", + messageId: "POL5001" + } +#---------POL5002------------------------------ + AUTH_REQUIRED: { + code: 401 , + message: "Error: Authentication is required to use the API.", + messageId: "POL5002" + } +#---------POL5003------------------------------ + AUTH_FAILED: { + code: 403 , + message: "Error: Not authorized to use the API.", + messageId: "POL5003" + } +#---------SVC4000----------------------------- + INVALID_CONTENT: { + code: 400, + message: "Error: Invalid content.", + messageId: "SVC4000" + } +#---------SVC4002----------------------------- + MISSING_INFORMATION: { + code: 403, + message: "Error: Missing information.", + messageId: "SVC4002" + } +#---------SVC4003------------------------------ +# %1 - Users's USER_ID + USER_NOT_FOUND: { + code: 404, + message: "Error: User '%1' was not found.", + messageId: "SVC4003" + } +#---------SVC4004----------------------------- +# %1 - Users's email address + INVALID_EMAIL_ADDRESS: { + code: 400, + message: "Error: Invalid email address '%1'.", + messageId: "SVC4004" + } +#---------SVC4005------------------------------ +# %1 - role + INVALID_ROLE: { + code: 400, + message: "Error: Invalid role '%1'.", + messageId: "SVC4005" + } +#---------SVC4006------------------------------ +# %1 - Users's USER_ID + USER_ALREADY_EXIST: { + code: 409, + message: "Error: User with '%1' ID already exists.", + messageId: "SVC4006" + } +#---------SVC4007------------------------------ + DELETE_USER_ADMIN_CONFLICT: { + code: 409, + message: "Error: An administrator can only be deleted by another administrator.", + messageId: "SVC4007" + } +#---------SVC4008----------------------------- +# %1 - Users's userId + INVALID_USER_ID: { + code: 400, + message: "Error: Invalid userId '%1'.", + messageId: "SVC4008" + } +#---------SVC4049------------------------------ +# %1 - service/resource + COMPONENT_MISSING_CONTACT: { + code: 400, + message: "Error: Invalid Content. Missing %1 contact id.", + messageId: "SVC4049" + } +#---------SVC4050----------------------------- +# %1 - Service/Resource/Additional parameter +# %2 - service/resource/label name + COMPONENT_NAME_ALREADY_EXIST: { + code: 409, + message: "Error: %1 with name '%2' already exists.", + messageId: "SVC4050" + } +#---------SVC4051------------------------------ +# %1 - resource/service + COMPONENT_MISSING_CATEGORY: { + code: 400, + message: "Error: Invalid Content. Missing %1 category.", + messageId: "SVC4051" + } + +#---------SVC4052------------------------------ + COMPONENT_MISSING_TAGS: { + code: 400, + message: "Error: Invalid Content. At least one tag has to be specified.", + messageId: "SVC4052" + } + +#---------SVC4053------------------------------ +# %1 - service/resource + COMPONENT_MISSING_DESCRIPTION: { + code: 400, + message: "Error: Invalid Content. Missing %1 description.", + messageId: "SVC4053" + } +#---------SVC4054------------------------------ +# %1 - resource/service + COMPONENT_INVALID_CATEGORY: { + code: 400, + message: "Error: Invalid Content. Invalid %1 category.", + messageId: "SVC4054" + } +#---------SVC4055------------------------------ + MISSING_VENDOR_NAME: { + code: 400, + message: "Error: Invalid Content. Missing vendor name.", + messageId: "SVC4055" + } +#---------SVC4056------------------------------ + MISSING_VENDOR_RELEASE: { + code: 400, + message: "Error: Invalid Content. Missing vendor release.", + messageId: "SVC4056" + } + +#---------SVC4057------------------------------ + MISSING_DERIVED_FROM_TEMPLATE: { + code: 400, + message: "Error: Invalid Content. Missing derived from template specification.", + messageId: "SVC4057" + } + +#---------SVC4058------------------------------ +# %1 - service/resource + COMPONENT_MISSING_ICON: { + code: 400, + message: "Error: Invalid Content. Missing %1 icon.", + messageId: "SVC4058" + } +#---------SVC4059------------------------------ +# %1 - service/resource + COMPONENT_INVALID_ICON: { + code: 400, + message: "Error: Invalid Content. Invalid %1 icon.", + messageId: "SVC4059" + } +#---------SVC4060------------------------------ + PARENT_RESOURCE_NOT_FOUND: { + code: 400, + message: "Error: Invalid Content. Derived from resource template was not found.", + messageId: "SVC4060" + } +#---------SVC4061------------------------------ + MULTIPLE_PARENT_RESOURCE_FOUND: { + code: 400, + message: "Error: Invalid Content. Multiple derived from resource template is not allowed.", + messageId: "SVC4061" + } + +#---------SVC4062------------------------------ +# %1 - service/resource + MISSING_COMPONENT_NAME: { + code: 400, + message: "Error: Invalid Content. Missing %1 name.", + messageId: "SVC4062" + } +#---------SVC4063------------------------------ + #%1 - resource/service name + RESOURCE_NOT_FOUND: { + code: 404, + message: "Error: Requested '%1' resource was not found.", + messageId: "SVC4063" + } + +#---------SVC4064------------------------------ +# %1 - Service/Resource + COMPONENT_INVALID_DESCRIPTION: { + code: 400, + message: "Error: Invalid Content. %1 description contains non-english characters.", + messageId: "SVC4064" + } +#---------SVC4065------------------------------ +# %1 - Service/Resource +# %2 - max resource/service name length + COMPONENT_DESCRIPTION_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. %1 description exceeds limit of %2 characters.", + messageId: "SVC4065" + } +#---------SVC4066------------------------------ +# %1 - max length + COMPONENT_TAGS_EXCEED_LIMIT: { + code: 400, + message: "Error: Invalid Content. Tags overall length exceeds limit of %1 characters.", + messageId: "SVC4066" + } +#---------SVC4067------------------------------ +# %1 - max length + VENDOR_NAME_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. Vendor name exceeds limit of %1 characters.", + messageId: "SVC4067" + } +#---------SVC4068------------------------------ +# %1 - max length + VENDOR_RELEASE_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. Vendor release exceeds limit of %1 characters.", + messageId: "SVC4068" + } + +#---------SVC4069------------------------------ +# %1 - Service/Resource/Product + COMPONENT_INVALID_CONTACT_ID: { + code: 400, + message: "Error: Invalid Content. %1 contact id should be in format 'mnnnnnn' or 'aannna' or 'aannnn', where m=m ,a=a-zA-Z and n=0-9", + messageId: "SVC4069" + } +#---------SVC4070------------------------------ +# %1 - Service/Resource + INVALID_COMPONENT_NAME: { + code: 400, + message: 'Error: Invalid Content. %1 name is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', + messageId: "SVC4070" + } + +#---------SVC4071------------------------------ + INVALID_VENDOR_NAME: { + code: 400, + message: 'Error: Invalid Content. Vendor name is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', + messageId: "SVC4071" + } +#---------SVC4072------------------------------ + INVALID_VENDOR_RELEASE: { + code: 400, + message: 'Error: Invalid Content. Vendor release is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', + messageId: "SVC4072" + } +#---------SVC4073------------------------------ +# %1 - Service/Resource +# %2 - max resource/service name + COMPONENT_NAME_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. %1 name exceeds limit of %2 characters.", + messageId: "SVC4073" + } +#---------SVC4080------------------------------ +# %1 - resource/service name +# %2 - resource/service +# %3 - First name of last modifier +# %4 - Last name of last modifier +# %5 - USER_ID of last modifier + COMPONENT_IN_CHECKOUT_STATE: { + code: 403, + message: "Error: Requested '%1' %2 is locked for modification by %3 %4(%5).", + messageId: "SVC4080" + } +#---------SVC4081----------------------------- +# %1 - resource/service name +# %2 - resource/service +# %3 - First name of last modifier +# %4 - Last name of last modifier +# %5 - USER_ID of last modifier + COMPONENT_IN_CERT_IN_PROGRESS_STATE: { + code: 403, + message: "Error: Requested '%1' %2 is locked for certification by %3 %4(%5).", + messageId: "SVC4081" + } + +#-----------SVC4082--------------------------- +# %1 - resource/service name +# %2 - resource/service +# %3 - First name of last modifier +# %4 - Last name of last modifier +# %5 - USER_ID of last modifier + COMPONENT_SENT_FOR_CERTIFICATION: { + code: 403, + message: "Error: Requested '%1' %2 is sent for certification by %3 %4(%5).", + messageId: "SVC4082" + } +#-----------SVC4083--------------------------- + COMPONENT_VERSION_ALREADY_EXIST: { + code: 409, + message: "Error: Version of this %1 was already promoted.", + messageId: "SVC4083" + } +#-----------SVC4084--------------------------- +# %1 - resource/service/product name +# %2 - resource/service/product +# %3 - First name of last modifier +# %4 - Last name of last modifier +# %5 - USER_ID of last modifier + COMPONENT_ALREADY_CHECKED_IN: { + code: 409, + message: "Error: The current version of '%1' %2 was already checked-in by %3 %4(%5).", + messageId: "SVC4084" + } +#-----------SVC4085--------------------------- +# %1 - resource/service/product name +# %2 - resource/service/product +# %3 - First name of last modifier +# %4 - Last name of last modifier +# %5 - USER_ID of last modifier + COMPONENT_CHECKOUT_BY_ANOTHER_USER: { + code: 403, + message: "Error: %1 %2 has already been checked out by %3 %4(%5).", + messageId: "SVC4085" + } +#-----------SVC4086--------------------------- +# %1 - resource/service name +# %2 - resource/service + COMPONENT_IN_USE: { + code: 403, + message: "Error: Requested '%1' %2 is in use by another user.", + messageId: "SVC4086" + } +#-----------SVC4087--------------------------- +# %1 - component name +# %2 - resource/service/product + COMPONENT_HAS_NEWER_VERSION: { + code: 409, + message: "Error: Checking out of the requested version of the '%1' %2 is not allowed as a newer version exists.", + messageId: "SVC4087" + } +#-----------SVC4088--------------------------- +# %1 - resource/service name +# %2 - resource/service +# %3 - First name of last modifier +# %4 - Last name of last modifier +# %5 - USER_ID of last modifier + COMPONENT_ALREADY_CERTIFIED: { + code: 403, + message: "Error: Requested %1 %2 has already been certified by %3 %4(%5).", + messageId: "SVC4088" + } +#-----------SVC4089--------------------------- +# %1 - resource/service name +# %2 - resource/service + COMPONENT_NOT_READY_FOR_CERTIFICATION: { + code: 403, + message: "Error: Requested '%1' %2 is not ready for certification.", + messageId: "SVC4089" + } +#-----------SVC4100--------------------------- +#%1 - property name + PROPERTY_NOT_FOUND: { + code: 404, + message: "Error: Requested '%1' property was not found.", + messageId: "SVC4100" + } +#-----------SVC4101--------------------------- +#%1 - property name + PROPERTY_ALREADY_EXIST: { + code: 409, + message: "Error: Property with '%1' name already exists.", + messageId: "SVC4101" + } + +#-----------SVC4102--------------------------- +# %1 - capability type name + CAPABILITY_TYPE_ALREADY_EXIST: { + code: 409, + message: "Error: Capability Type with name '%1' already exists.", + messageId: "SVC4102" + } +#-----------SVC4114--------------------------- + AUTH_FAILED_INVALIDE_HEADER: { + code: 400, + message: "Error: Invalid Authorization header.", + messageId: "SVC4114" + } +#-----------SVC4115--------------------------- +# %1 - capability type name + MISSING_CAPABILITY_TYPE: { + code: 400, + message: "Error: Invalid Content. Missing Capability Type '%1'.", + messageId: "SVC4115" + } + RESOURCE_INSTANCE_BAD_REQUEST: { + code: 400, + message: "Error: Invalid Content.", + messageId: "SVC4116" + } +#-----------SVC4117--------------------------- +# %1 - resource instance name +# %2 - resource instance name +# %3 - requirement name + RESOURCE_INSTANCE_MATCH_NOT_FOUND: { + code: 404, + message: "Error: Match not found between resource instance '%1' and resource instance '%2' for requirement '%3'.", + messageId: "SVC4117" + } +#-----------SVC4118--------------------------- +# %1 - resource instance name +# %2 - resource instance name +# %3 - requirement name + RESOURCE_INSTANCE_ALREADY_EXIST: { + code: 409, + message: "Error: Resource instances '%1' and '%2' are already associated with requirement '%3'.", + messageId: "SVC4118" + } +#-----------SVC4119--------------------------- +# %1 - resource instance name +# %2 - resource instance name +# %3 - requirement name + RESOURCE_INSTANCE_RELATION_NOT_FOUND: { + code: 404, + message: "Error: No relation found between resource instances '%1' and '%2' for requirement '%3'.", + messageId: "SVC4119" + } +#-----------SVC4120--------------------------- +# %1 - User's USER_ID + USER_INACTIVE: { + code: 404, + message: "Error: User %1 was not found.", + messageId: "SVC4120" + } +#-----------SVC4121--------------------------- +# %1 - User's USER_ID + USER_HAS_ACTIVE_ELEMENTS: { + code: 403, + message: "Error: User with %1 ID can not be deleted since it has active elements(resources/services/artifacts).", + messageId: "SVC4121" + } +#-----------SVC4122--------------------------- +# %1 - artifact type + ARTIFACT_TYPE_NOT_SUPPORTED: { + code: 400, + message: "Error: Invalid artifact type '%1'.", + messageId: "SVC4122" + } +#-----------SVC4123--------------------------- + ARTIFACT_LOGICAL_NAME_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Artifact logical name cannot be changed.", + messageId: "SVC4123" + } +#-----------SVC4124--------------------------- + MISSING_ARTIFACT_TYPE: { + code: 400, + message: "Error: Missing artifact type.", + messageId: "SVC4124" + } +#-----------SVC4125--------------------------- +# %1-artifact name + ARTIFACT_EXIST: { + code: 400, + message: "Error: Artifact '%1' already exists.", + messageId: "SVC4125" + } +#---------SVC4126------------------------------ +# %1 - resource/service/product/... +# %2 - field (tag, vendor name...) + INVALID_FIELD_FORMAT: { + code: 400, + message: "Error: Invalid %1 %2 format.", + messageId: "SVC4126" + } +#-----------SVC4127--------------------------- + ARTIFACT_INVALID_MD5: { + code: 400, + message: "Error: Invalid artifact checksum.", + messageId: "SVC4127" + } +#-----------SVC4128--------------------------- + MISSING_ARTIFACT_NAME: { + code: 400, + message: "Error: Invalid content. Missing artifact name.", + messageId: "SVC4128" + } +#-----------SVC4129--------------------------- + MISSING_PROJECT_CODE: { + code: 400, + message: "Error: Invalid Content. Missing PROJECT_CODE number.", + messageId: "SVC4129" + } +#-----------SVC4130--------------------------- + INVALID_PROJECT_CODE: { + code: 400, + message: "Error: Invalid Content. PROJECT_CODE number must be numeric from 5 up to 10 digits.", + messageId: "SVC4130" + } +#-----------SVC4131--------------------------- +# %1-resource/service +# %2-srtifact/artifacts +# %3-semicolomn separated list of artifact + COMPONENT_MISSING_MANDATORY_ARTIFACTS: { + code: 403, + message: "Error: Missing mandatory informational %1 %2: [%3].", + messageId: "SVC4131" + } +#-----------SVC4132--------------------------- +# %1 - lifecycle type name + LIFECYCLE_TYPE_ALREADY_EXIST: { + code: 409, + message: "Error: Lifecycle Type with name '%1' already exists.", + messageId: "SVC4132" + } +#-----------SVC4133--------------------------- +# %1 - service version +# %2 - service name + SERVICE_NOT_AVAILABLE_FOR_DISTRIBUTION: { + code: 403, + message: "Error: Version %1 of '%2' service is not available for distribution.", + messageId: "SVC4133" + } +#-----------SVC4134--------------------------- + MISSING_LIFECYCLE_TYPE: { + code: 400, + message: "Error: Invalid Content. Missing interface life-cycle type.", + messageId: "SVC4134" + } +#---------SVC4135------------------------------ + SERVICE_CATEGORY_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Service category cannot be changed once the service is certified.", + messageId: "SVC4135" + } +#---------SVC4136------------------------------ +# %1 - distribution environment name + DISTRIBUTION_ENVIRONMENT_NOT_AVAILABLE: { + code: 500, + message: "Error: Requested distribution environment '%1' is not available.", + messageId: "SVC4136" + } +#---------SVC4137------------------------------ +# %1 - distribution environment name + DISTRIBUTION_ENVIRONMENT_NOT_FOUND: { + code: 400, + message: "Error: Requested distribution environment '%1' was not found.", + messageId: "SVC4137" + } +#---------SVC4138------------------------------ + DISTRIBUTION_ENVIRONMENT_INVALID: { + code: 400, + message: "Error: Invalid distribution environment.", + messageId: "SVC4138" + } +#---------SVC4139------------------------------ +# %1 - service name + DISTRIBUTION_ARTIFACT_NOT_FOUND: { + code: 409, + message: "Error: Service '%1' cannot be distributed due to missing deployment artifacts.", + messageId: "SVC4139" + } +#---------SVC4200------------------------------ +# %1 - Service/Resource +# %2 - max icon name length + COMPONENT_ICON_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. %1 icon name exceeds limit of %2 characters.", + messageId: "SVC4200" + } +#---------SVC4300------------------------------ + RESTRICTED_ACCESS: { + code: 403, + message: "Error: Restricted access.", + messageId: "SVC4300" + } +#---------SVC4301------------------------------ + RESTRICTED_OPERATION: { + code: 409, + message: "Error: Restricted operation.", + messageId: "SVC4301" + } +#---------SVC4500------------------------------ + MISSING_BODY: { + code: 400 , + message: "Error: Missing request body.", + messageId: "SVC4500" + } +#---------SVC4501------------------------------ + MISSING_PUBLIC_KEY: { + code: 400 , + message: "Error: Invalid Content. Missing mandatory parameter 'apiPublicKey'." , + messageId: "SVC4501" + } +#---------SVC4502------------------------------ + DISTRIBUTION_ENV_DOES_NOT_EXIST: { + code: 400 , + message: "Error: Invalid Body : Missing mandatory parameter 'distrEnvName'." , + messageId: "SVC4502" + } +#-----------SVC4503--------------------------- +# %1 - service name + SERVICE_NOT_FOUND: { + code: 404, + message: "Error: Requested '%1' service was not found.", + messageId: "SVC4503" + } + +#---------SVC4504------------------------------ +# %1 - Service/Resource +# %2 - service/resource version + COMPONENT_VERSION_NOT_FOUND: { + code: 404, + message: "Error: %1 version %2 was not found.", + messageId: "SVC4504" + } +#-----------SVC4505--------------------------- + #%1-artifact name + + ARTIFACT_NOT_FOUND: { + code: 404, + message: "Error: Artifact '%1' was not found.", + messageId: "SVC4505" + } +#---------SVC4506------------------------------ + MISSING_ENV_NAME: { + code: 400 , + message: "Error: Invalid Content. Missing mandatory parameter 'distrEnvName'.", + messageId: "SVC4506" + } +#---------SVC4507------------------------------ + COMPONENT_INVALID_TAGS_NO_COMP_NAME: { + code: 400, + message: "Error: Invalid Content. One of the tags should be the component name.", + messageId: "SVC4507" + } + +#---------SVC4508------------------------------ + SERVICE_NAME_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Service name cannot be changed once the service is certified.", + messageId: "SVC4508" + } + +#---------SVC4509------------------------------ + SERVICE_ICON_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Icon cannot be changed once the service is certified.", + messageId: "SVC4509" + } +#---------SVC4510------------------------------ +# %1 - icon name max length + SERVICE_ICON_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. Icon name exceeds limit of %1 characters.", + messageId: "SVC4510" + } +#---------SVC4511------------------------------ + DISTRIBUTION_REQUESTED_NOT_FOUND: { + code: 404, + message: "Error: Requested distribution was not found.", + messageId: "SVC4511" + } +#---------SVC4512------------------------------ +# %1 - Distribution ID + DISTRIBUTION_REQUESTED_FAILED: { + code: 403, + message: "Error: Requested distribution '%1' failed.", + messageId: "SVC4512" + } +#---------SVC4513------------------------------ + RESOURCE_CATEGORY_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Resource category cannot be changed once the resource is certified.", + messageId: "SVC4513" + } +#---------SVC4514------------------------------ + RESOURCE_NAME_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Resource name cannot be changed once the resource is certified.", + messageId: "SVC4514" + } +#---------SVC4515------------------------------ + RESOURCE_ICON_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Icon cannot be changed once the resource is certified.", + messageId: "SVC4515" + } +#---------SVC4516------------------------------ + RESOURCE_VENDOR_NAME_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Vendor name cannot be changed once the resource is certified.", + messageId: "SVC4516" + } +#---------SVC4517------------------------------ + RESOURCE_DERIVED_FROM_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: Derived from resource template cannot be changed once the resource is certified.", + messageId: "SVC4517" + } +#---------SVC4518------------------------------ +# %1 - max length + COMPONENT_SINGLE_TAG_EXCEED_LIMIT: { + code: 400, + message: "Error: Invalid Content. Single tag exceeds limit of %1 characters.", + messageId: "SVC4518" + } +#---------SVC4519------------------------------ + INVALID_DEFAULT_VALUE: { + code: 400, + message: "Error: mismatch in data-type occurred for property %1. data type is %2 and default value found is %3.", + messageId: "SVC4519" + } +#---------SVC4520------------------------------ +# %1 - service or resource + ADDITIONAL_INFORMATION_MAX_NUMBER_REACHED: { + code: 409, + message: "Error: Maximal number of additional %1 parameters was reached.", + messageId: "SVC4520" + } +#---------SVC4521------------------------------ + ADDITIONAL_INFORMATION_EMPTY_STRING_NOT_ALLOWED: { + code: 400, + message: "Error: Invalid Content. The Additional information label and value cannot be empty.", + messageId: "SVC4521" + } +#---------SVC4522------------------------------ +# %1 - label/value +# %2 - Maximal length of %1 + ADDITIONAL_INFORMATION_EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. Additional information %1 exceeds limit of %2 characters.", + messageId: "SVC4522" + } +#---------SVC4523------------------------------ + ADDITIONAL_INFORMATION_KEY_NOT_ALLOWED_CHARACTERS: { + code: 400, + message: 'Error: Invalid Content. Additional information label is not allowed to contain characters like <>:"\/|?* and space characters other than regular space.', + messageId: "SVC4523" + } +#---------SVC4524------------------------------ + ADDITIONAL_INFORMATION_NOT_FOUND: { + code: 409, + message: "Error: Requested additional information was not found.", + messageId: "SVC4524" + } +#---------SVC4525------------------------------ + ADDITIONAL_INFORMATION_VALUE_NOT_ALLOWED_CHARACTERS: { + code: 400, + message: 'Error: Invalid Content. Additional information contains non-english characters.', + messageId: "SVC4525" + } +#---------SVC4526------------------------------ + RESOURCE_INSTANCE_NOT_FOUND: { + code: 404, + message: "Error: Requested '%1' resource instance was not found.", + messageId: "SVC4526" + } +#---------SVC4527------------------------------ + ASDC_VERSION_NOT_FOUND: { + code: 500, + message: 'Error: ASDC version cannot be displayed.', + messageId: "SVC4527" + } +#---------SVC4528------------------------------ +# %1-artifact url/artifact label/artifact description/VNF Service Indicator + MISSING_DATA: { + code: 400, + message: "Error: Invalid content. Missing %1.", + messageId: "SVC4528" + } +#---------SVC4529------------------------------ +# %1-artifact url/artifact label/artifact description/artifact name +# %2 - Maximal length of %1 + EXCEEDS_LIMIT: { + code: 400, + message: "Error: Invalid Content. %1 exceeds limit of %2 characters.", + messageId: "SVC4529" + } +#---------SVC4530------------------------------ + ARTIFACT_INVALID_TIMEOUT: { + code: 400, + message: "Error: Invalid Content. Artifact Timeout should be set to valid positive non-zero number of minutes.", + messageId: "SVC4530" + } +#---------SVC4531------------------------------ + SERVICE_IS_VNF_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: VNF Indicator cannot be updated for certified service.", + messageId: "SVC4531" + } + #---------SVC4532------------------------------ + RESOURCE_INSTANCE_NOT_FOUND_ON_SERVICE: { + code: 404, + message: "Error: Requested '%1' resource instance was not found on the service '%2.", + messageId: "SVC4532" + } + #---------SVC4533------------------------------ + # %1 - "HEAT"/"HEAT_ENV"/"MURANO_PKG"/"YANG_XML" + WRONG_ARTIFACT_FILE_EXTENSION: { + code: 400, + message: "Error: Invalid file extension for %1 artifact type.", + messageId: "SVC4533" + } + +#---------SVC4534------------------------------ +# %1 - "HEAT"/"HEAT_ENV" + INVALID_YAML: { + code: 400, + message: "Error: Uploaded YAML file for %1 artifact is invalid.", + messageId: "SVC4534" + } + +#---------SVC4535------------------------------ +# %1 - "HEAT" + INVALID_DEPLOYMENT_ARTIFACT_HEAT: { + code: 400, + message: "Error: Invalid %1 artifact.", + messageId: "SVC4535" + } +#---------SVC4536------------------------------ +# %1 - "Resource"/"Service" +# %2 - resource/service name +# %3 - "HEAT"/"HEAT_ENV"/"MURANO_PKG" +# %4 - "HEAT"/"HEAT_ENV"/"MURANO_PKG + DEPLOYMENT_ARTIFACT_OF_TYPE_ALREADY_EXISTS: { + code: 400, + message: "Error: %1 '%2' already has a deployment artifact of %3 type .Please delete or update an existing %4 artifact.", + messageId: "SVC4536" + } + +#---------SVC4537------------------------------ + MISSING_HEAT: { + code: 400, + message: "Error: Missing HEAT artifact. HEAT_ENV artifact cannot be uploaded without corresponding HEAT template.", + messageId: "SVC4537" + } +#---------SVC4538------------------------------ + MISMATCH_HEAT_VS_HEAT_ENV: { + code: 400, + message: "Error: Invalid artifact content. Parameter's set in HEAT_ENV '%1' artifact doesn't match the parameters in HEAT '%2' artifact.", + messageId: "SVC4538" + } +#---------SVC4539------------------------------ + INVALID_RESOURCE_PAYLOAD: { + code: 400, + message: "Error: Invalid resource payload.", + messageId: "SVC4539" + } +#---------SVC4540------------------------------ + INVALID_TOSCA_FILE_EXTENSION: { + code: 400, + message: "Error: Invalid file extension for TOSCA template.", + messageId: "SVC4540" + } +#---------SVC4541------------------------------ + INVALID_YAML_FILE: { + code: 400, + message: "Error: Invalid YAML file.", + messageId: "SVC4541" + } +#---------SVC4542------------------------------ + INVALID_TOSCA_TEMPLATE: { + code: 400, + message: "Error: Invalid TOSCA template.", + messageId: "SVC4542" + } +#---------SVC4543------------------------------ + NOT_RESOURCE_TOSCA_TEMPLATE: { + code: 400, + message: "Error: Imported Service TOSCA template.", + messageId: "SVC4543" + } +#---------SVC4544------------------------------ + NOT_SINGLE_RESOURCE: { + code: 400, + message: "Error: Imported TOSCA template should contain one resource definition.", + messageId: "SVC4544" + } +#---------SVC4545------------------------------ + INVALID_RESOURCE_NAMESPACE: { + code: 400, + message: "Error: Invalid resource namespace.", + messageId: "SVC4545" + } +#---------SVC4546------------------------------ + RESOURCE_ALREADY_EXISTS: { + code: 400, + message: "Error: Imported resource already exists in ASDC Catalog.", + messageId: "SVC4546" + } +#---------SVC4549------------------------------ + INVALID_RESOURCE_CHECKSUM: { + code: 400, + message: "Error: Invalid resource checksum.", + messageId: "SVC4549" + } +#---------SVC4550------------------------------ + #%1 - Consumer salt + INVALID_LENGTH: { + code: 400, + message: "Error: Invalid %1 length.", + messageId: "SVC4550" + } + #---------SVC4551------------------------------ + #%1 - ECOMP User name + ECOMP_USER_NOT_FOUND: { + code: 404, + message: "Error: ECOMP User '%1' was not found.", + messageId: "SVC4551" + } +#---------SVC4552------------------------------ + CONSUMER_ALREADY_EXISTS: { + code: 409, + message: "Error: ECOMP User already exists.", + messageId: "SVC4552" + } +#---------SVC4553----------------------------- + #%1 - Consumer name / Consumer password/ Consumer salt + INVALID_CONTENT_PARAM: { + code: 400, + message: "Error: %1 is invalid.", + messageId: "SVC4553" + } + #---------SVC4554------------------------------ +# %1 - "Resource"/"Service" + COMPONENT_ARTIFACT_NOT_FOUND: { + code: 404, + message: "Error: Requested artifact doesn't belong to specified %1.", + messageId: "SVC4554" + } +#---------SVC4554------------------------------ +# %1 - "Service name" + SERVICE_DEPLOYMENT_ARTIFACT_NOT_FOUND: { + code: 403, + message: "Error: Requested '%1' service is not ready for certification. Service has to have at least one deployment artifact.", + messageId: "SVC4554" + } +#---------SVC4555------------------------------ +#%1 - "Resource"/"Service"/"Product" +#%2 - "category" + COMPONENT_ELEMENT_INVALID_NAME_LENGTH: { + code: 400, + message: "Error: Invalid %1 %2 name length.", + messageId: "SVC4555" + } +#---------SVC4556------------------------------ +#%1 - "Resource"/"Service"/"Product" +#%2 - "category" + COMPONENT_ELEMENT_INVALID_NAME_FORMAT: { + code: 400, + message: "Error: Invalid %1 %2 name format.", + messageId: "SVC4556" + } +#---------SVC4557------------------------------ +#%1 - "Resource"/"Service"/"Product" +#%2 - "category name" + COMPONENT_CATEGORY_ALREADY_EXISTS: { + code: 409, + message: "Error: %1 category name '%2' already exists.", + messageId: "SVC4557" + } +#---------SVC4558------------------------------ +# %1 - "service"/"VF" +# %2 - "Resource name" + VALIDATED_RESOURCE_NOT_FOUND: { + code: 403, + message: "Error: Submit for Testing is not permitted as your '%1' includes non-validated '%2' resource.", + messageId: "SVC4558" + } +#---------SVC4559------------------------------ +# %1 - "service"/"VF" +# %2 - "Resource name" + FOUND_ALREADY_VALIDATED_RESOURCE: { + code: 403, + message: "Error: Submit for Testing is not permitted as your '%1' includes non-validated '%2' resource. Please use already available validated resource version.", + messageId: "SVC4559" + } +#---------SVC4560------------------------------ +# %1 - "service"/"VF" +# %2 - "Resource name" + FOUND_LIST_VALIDATED_RESOURCES: { + code: 403, + message: "Error: Submit for Testing is not permitted as your '%1' includes non-validated '%2' resource. Please use one of available validated resource versions.", + messageId: "SVC4560" + } +#---------SVC4561------------------------------ +# %1 - "resource"/"product" +# %2 - "category" +# %2 - "category name" + COMPONENT_CATEGORY_NOT_FOUND: { + code: 404, + message: "Error: Requested %1 %2 '%3' was not found.", + messageId: "SVC4561" + } +#---------SVC4562------------------------------ +# %1 - "Resource"/"Product" +# %2 - "sub-category name" +# %2 - "category name" + COMPONENT_SUB_CATEGORY_EXISTS_FOR_CATEGORY: { + code: 409, + message: "Error: %1 sub-category '%2' already exists under '%3' category.", + messageId: "SVC4562" + } +#---------SVC4563------------------------------ +# %1 - "Product" +# %2 - "grouping name" +# %2 - "sub-category name" + COMPONENT_GROUPING_EXISTS_FOR_SUB_CATEGORY: { + code: 409, + message: "Error: %1 grouping '%2' already exists under '%3' sub-category.", + messageId: "SVC4563" + } +#---------SVC4564------------------------------ +# %1 - product name + PRODUCT_NOT_FOUND: { + code: 404, + message: "Error: Requested '%1' product was not found.", + messageId: "SVC4564" + } +#---------SVC4565------------------------------ +# %1 - "HEAT" +# %2 - parameter type ("string" , "boolean" , "number") +# %3 - parameter name + INVALID_HEAT_PARAMETER_VALUE: { + code: 400, + message: "Error: Invalid %1 artifact. Invalid %2 value set for '%3' parameter.", + messageId: "SVC4565" + } +#---------SVC4566------------------------------ +# %1 - "HEAT" +# %2 - parameter type ("string" , "boolean" , "number") + INVALID_HEAT_PARAMETER_TYPE: { + code: 400, + message: "Error: Invalid %1 artifact. Unsupported '%2' parameter type.", + messageId: "SVC4566" + } +#---------SVC4567------------------------------ +# %1 - "YANG_XML" + INVALID_XML: { + code: 400, + message: "Error: Uploaded XML file for %1 artifact is invalid.", + messageId: "SVC4567" + } +#---------SVC4567------------------------------ +# %1 - "User Name and UserId" +# %2 -"checked-out"/"in-certification" + CANNOT_DELETE_USER_WITH_ACTIVE_ELEMENTS: { + code: 409, + message: "Error: User cannot be deleted. User '%1' has %2 projects.", + messageId: "SVC4567" + } +#---------SVC4568------------------------------ +# %1 - "User Name and UserId" +# %2 -"checked-out"/"in-certification" + CANNOT_UPDATE_USER_WITH_ACTIVE_ELEMENTS: { + code: 409, + message: "Error: Role cannot be changed. User '%1' has %2 projects.", + messageId: "SVC4568" + } +#---------SVC4570------------------------------ + UPDATE_USER_ADMIN_CONFLICT: { + code: 409, + message: "Error: An administrator is not allowed to change his/her role.", + messageId: "SVC4570" + } +#---------SVC4571------------------------------ + SERVICE_CANNOT_CONTAIN_SUBCATEGORY: { + code: 400, + message: "Error: Sub category cannot be defined for service", + messageId: "SVC4571" + } +#---------SVC4572------------------------------ +# %1 - "Resource"/"Service" + COMPONENT_TOO_MUCH_CATEGORIES: { + code: 400, + message: "Error: %1 must have only 1 category", + messageId: "SVC4572" + } +#---------SVC4574------------------------------ + RESOURCE_TOO_MUCH_SUBCATEGORIES: { + code: 400, + message: "Error: Resource must have only 1 sub category", + messageId: "SVC4574" + } +#---------SVC4575------------------------------ + COMPONENT_MISSING_SUBCATEGORY: { + code: 400, + message: "Error: Missing sub category", + messageId: "SVC4575" + } + #---------SVC4576------------------------------ +# %1 - "component type" + UNSUPPORTED_ERROR: { + code: 400, + message: "Error : Requested component type %1 is unsupported.", + messageId: "SVC4576" + } + #---------SVC4577------------------------------ +# %1 - "resource type" + RESOURCE_CANNOT_CONTAIN_RESOURCE_INSTANCES: { + code: 409, + message: "Error : Resource of type %1 cannot contain resource instances.", + messageId: "SVC4577" + } +#---------SVC4578------------------------------ +# %1 - "Resource"/"Service" +# %2 - resource/service name +# %3 - "artifact name" + DEPLOYMENT_ARTIFACT_NAME_ALREADY_EXISTS: { + code: 400, + message: "Error: %1 '%2' already has a deployment artifact named '%3'.", + messageId: "SVC4578" + } +#---------SVC4579------------------------------ +# %1 - "Category"/"Sub-Category"/"Group" +# %2 - category/sub-category/grouping name. + INVALID_GROUP_ASSOCIATION: { + code: 400, + message: "Error: Invalid group association. %1 '%2' was not found.", + messageId: "SVC4579" + } +#---------SVC4580------------------------------ + EMPTY_PRODUCT_CONTACTS_LIST: { + code: 400, + message: "Error: Invalid content. At least one Product Contact has to be specified.", + messageId: "SVC4580" + } +#---------SVC4581------------------------------ +# %1 - userId + INVALID_PRODUCT_CONTACT: { + code: 400, + message: "Error: Invalid content. User '%1' cannot be set as Product Contact.", + messageId: "SVC4581" + } +#---------SVC4582------------------------------ +# %1 - Product +# %2 - "abbreviated"/"full" + MISSING_ONE_OF_COMPONENT_NAMES: { + code: 400, + message: "Error: Invalid content. Missing %1 %2 name.", + messageId: "SVC4582" + } +#---------SVC4583------------------------------ +# %1 - "Icon" +# %2 - "resource"/"service"/"product" + COMPONENT_PARAMETER_CANNOT_BE_CHANGED: { + code: 400, + message: "Error: %1 cannot be changed once the %2 is certified.", + messageId: "SVC4583" + } +#---------SVC4584------------------------------ +# %1 - service/VF name +# %2 - "service" /"VF" +# %3 - resource instance origin type +# %4 - resource instance name +# %5 - requirement/capability +# %6 - requirement/capability name +# %7 - "fulfilled" (for req)/"consumed (for cap)" + REQ_CAP_NOT_SATISFIED_BEFORE_CERTIFICATION: { + code: 403, + message: "Error: Requested '%1' %2 is not ready for certification. %3 '%4' has to have %5 '%6' %7.", + messageId: "SVC4584" + } +#---------SVC4585------------------------------ + INVALID_OCCURRENCES: { + code: 400, + message: "Error: Invalid occurrences format.", + messageId: "SVC4585" + } +#---------SVC4586------------------------------ +#---------SVC4586------------------------------ + INVALID_SERVICE_API_URL: { + code: 400, + message: 'Error: Invalid Service API URL. Please check whether your URL has a valid domain extension and does not contain the following characters - #?&@%+;,=$<>~^`\[]{}|"*!', + messageId: "SVC4586" + } +#---------SVC4587------------------------------ +# %1 - Data type name + DATA_TYPE_ALREADY_EXIST: { + code: 409, + message: 'Error: Data type %1 already exists.', + messageId: "SVC4587" + } +#---------SVC4588------------------------------ +# %1 - Data type name + DATA_TYPE_NOR_PROPERTIES_NEITHER_DERIVED_FROM: { + code: 400, + message: 'Error: Invalid Data type %1. Data type must have either a valid derived from declaration or at least one valid property', + messageId: "SVC4588" + } +#---------SVC4589------------------------------ +# %1 - Data type name + DATA_TYPE_PROPERTIES_CANNOT_BE_EMPTY: { + code: 400, + message: "Error: Invalid Data type %1. 'properties' parameter cannot be empty if provided.", + messageId: "SVC4589" + } +#---------SVC4590------------------------------ +# %1 - Property type name +# %2 - Property name + INVALID_PROPERTY_TYPE: { + code: 400, + message: "Error: Invalid Property type %1 in property %2.", + messageId: "SVC4590" + } +#---------SVC4591------------------------------ +# %1 - Property inner type +# %2 - Property name + INVALID_PROPERTY_INNER_TYPE: { + code: 400, + message: "Error: Invalid property inner type %1, in property %2", + messageId: "SVC4591" + } +#---------SVC4592------------------------------ +# %1 - component instance name +# %2 - "resource instance"/"service instance" + COMPONENT_INSTANCE_NOT_FOUND: { + code: 404, + message: "Error: Requested '%1' %2 was not found.", + messageId: "SVC4592" + } +#---------SVC4593------------------------------ +# %1 - component instance name +# %2 - "resource instance"/"service instance" +# %3 - "resource/"service"/"product" +# %4 - container name + COMPONENT_INSTANCE_NOT_FOUND_ON_CONTAINER: { + code: 404, + message: "Error: Requested '%1' %2 was not found on the %3 '%4'.", + messageId: "SVC4593" + } +#---------SVC4594------------------------------ +#%1 - requirement / capability +#%2 - requirement name + IMPORT_DUPLICATE_REQ_CAP_NAME: { + code: 400, + message: "Error: Imported TOSCA template contains more than one %1 named '%2'.", + messageId: "SVC4594" + } +#---------SVC4595------------------------------ +#%1 - requirement / capability +#%2 - requirement name +#%3 - parent containing the requirement + IMPORT_REQ_CAP_NAME_EXISTS_IN_DERIVED: { + code: 400, + message: "Error: Imported TOSCA template contains %1 '%2' that is already defined by derived template %3.", + messageId: "SVC4595" + } +#---------SVC4596------------------------------ +# %1 - Data type name + DATA_TYPE_DERIVED_IS_MISSING: { + code: 400, + message: "Error: Invalid Content. The ancestor data type %1 cannot be found in the system.", + messageId: "SVC4596" + } +#---------SVC4597------------------------------ +# %1 - Data type name +# %2 - Property names + DATA_TYPE_PROPERTY_ALREADY_DEFINED_IN_ANCESTOR: { + code: 400, + message: "Error: Invalid Content. The data type %1 contains properties named %2 which are already defined in one of its ancestors.", + messageId: "SVC4597" + } +#---------SVC4598------------------------------ +# %1 - Data type name + DATA_TYPE_DUPLICATE_PROPERTY: { + code: 400, + message: "Error: Invalid Content. The data type %1 contains duplicate property.", + messageId: "SVC4598" + } +#---------SVC4599------------------------------ +# %1 - Data type name +# %2 - Property names + DATA_TYPE_PROEPRTY_CANNOT_HAVE_SAME_TYPE_OF_DATA_TYPE: { + code: 400, + message: "Error: Invalid Content. The data type %1 contains properties %2 which their type is this data type.", + messageId: "SVC4599" + } +#---------SVC4600------------------------------ +# %1 - Data type name + DATA_TYPE_CANNOT_HAVE_PROPERTIES: { + code: 400, + message: "Error: Invalid Content. The data type %1 cannot have properties since it is of type scalar", + messageId: "SVC4600" + } +#---------SVC4601------------------------------ + NOT_TOPOLOGY_TOSCA_TEMPLATE: { + code: 400, + message: "Error: TOSCA yaml file %1 cannot be modeled to VF as it does not contain 'topology_template.", + messageId: "SVC4601" + } +#---------SVC4602-------------------------------- +# %1 - yaml file name +# %2 - node_template label +# %3 - node_template type + INVALID_NODE_TEMPLATE: { + code: 400, + message: "Error: TOSCA yaml file '%1' contains node_template '%2' of type '%3' that does not represent existing VFC/CP/VL", + messageId: "SVC4602" + } +#---------SVC4603------------------------------ +# %1 - component type +# %2 - component name +# %3 - state + ILLEGAL_COMPONENT_STATE: { + code: 403, + message: "Error: Component instance of %1 can not be created because the component '%2' is in an illegal state %3.", + messageId: "SVC4603" + } +#---------SVC4604------------------------------ +# %1 - csar file name + CSAR_INVALID: { + code: 400, + message: "Error: TOSCA CSAR '%1' is invalid. 'TOSCA-Metadata/Tosca.meta' file must be provided.", + messageId: "SVC4604" + } +#---------SVC4605------------------------------ +# %1 - csar file name + CSAR_INVALID_FORMAT: { + code: 400, + message: "Error: TOSCA CSAR '%1' is invalid. Invalid 'TOSCA-Metadata/Tosca.meta' file format.", + messageId: "SVC4605" + } +#---------SVC4606------------------------------ +# %1 - property name +# %2 - property type +# %3 - property innerType +# %4 - default value is + INVALID_COMPLEX_DEFAULT_VALUE: { + code: 400, + message: "Error: Invalid default value of property %1. Data type is %2 with inner type %3 and default value found is %4.", + messageId: "SVC4606" + } +#---------SVC4607------------------------------ +# %1 - csar file name + CSAR_NOT_FOUND: { + code: 400, + message: "Error: TOSCA CSAR '%1' is not found.", + messageId: "SVC4607" + } +#---------SVC4608------------------------------ +# %1 - artifact name +# %2 - component type +# %3 - actual component type + MISMATCH_BETWEEN_ARTIFACT_TYPE_AND_COMPONENT_TYPE: { + code: 400, + message: "Error: Artifact %1 is only compatible with component of type %2, but component type is %3.", + messageId: "SVC4608" + } + +#---------SVC4609------------------------------ +# %1 - "INVALID_JSON" + INVALID_JSON: { + code: 400, + message: "Error: Uploaded JSON file for %1 artifact is invalid.", + messageId: "SVC4609" + } +#---------SVC4610------------------------------ +# %1 - csar file name +# %2 - missing file name + YAML_NOT_FOUND_IN_CSAR: { + code: 400, + message: "Error - TOSCA CSAR %1 is invalid. TOSCA-Metadata/Tosca.meta refers to file %2 that is not provided.", + messageId: "SVC4610" + } +#---------SVC4611------------------------------ +# %1 - group name + GROUP_MEMBER_EMPTY: { + code: 400, + message: "Error: Invalid Content. Group %1 member list was provided but does not have values", + messageId: "SVC4611" + } +#---------SVC4612------------------------------ +# %1 - group name + GROUP_TYPE_ALREADY_EXIST: { + code: 409, + message: 'Error: Group type %1 already exists.', + messageId: "SVC4612" + } +#---------SVC4613------------------------------ +# %1 - group name +# %2 - VF name(component name) +# %3 - actual component type [VF] + GROUP_ALREADY_EXIST: { + code: 409, + message: "Error: Group with name '%1' already exists in %2 %3.", + messageId: "SVC4613" + } +#---------SVC4614------------------------------ +# %1 - group type + GROUP_TYPE_IS_INVALID: { + code: 400, + message: "Error: Invalid content. Group type %1 does not exist", + messageId: "SVC4614" + } +#---------SVC4615------------------------------ +# %1 - group name + GROUP_MISSING_GROUP_TYPE: { + code: 400, + message: "Error: Invalid Content. Missing Group Type for group '%1'", + messageId: "SVC4615" + } +#---------SVC4616------------------------------ +# %1 - member name +# %2 - group name +# %3 - VF name +# %4 - component type [VF ] + GROUP_INVALID_COMPONENT_INSTANCE: { + code: 400, + message: "Error: member %1 listed in group %2 is not part of %3 %4.", + messageId: "SVC4616" + } +#---------SVC4617------------------------------ +# %1 - member name +# %2 - group name +# %3 - group type + GROUP_INVALID_TOSCA_NAME_OF_COMPONENT_INSTANCE: { + code: 400, + message: "Error: member %1 listed in group %2 is not part of allowed members of group type %3.", + messageId: "SVC4617" + } +#---------SVC4618------------------------------ +# %1 - missing file name +# %2 - csar file name + ARTIFACT_NOT_FOUND_IN_CSAR: { + code: 400, + message: "Error: artifact %1 is defined in CSAR %2 manifest but is not provided", + messageId: "SVC4618" + } +#---------SVC4619------------------------------ +# %1 - artifact name +# %2 - artifact type +# %3 - existing artifact type + ARTIFACT_ALRADY_EXIST_IN_DIFFERENT_TYPE_IN_CSAR: { + code: 400, + message: "Error: artifact %1 in type %2 already exists in type %3.", + messageId: "SVC4619" + } +#---------SVC4620------------------------------ + FAILED_RETRIVE_ARTIFACTS_TYPES: { + code: 400, + message: "Error: Failed to retrieve list of suported artifact types.", + messageId: "SVC4620" + } +#---------SVC4621------------------------------ +# %1 - artifact name +# %2 - master + ARTIFACT_ALRADY_EXIST_IN_MASTER_IN_CSAR: { + code: 400, + message: "Error: artifact %1 already exists in master %2 .", + messageId: "SVC4621" + } +#---------SVC4622------------------------------ +# %1 - artifact name +# %2 - artifact type +# %3 - master name +# %4 - master type + ARTIFACT_NOT_VALID_IN_MASTER: { + code: 400, + message: "Error: artifact %1 in type %2 can not be exists under master %3 in type %4.", + messageId: "SVC4622" + } +#---------SVC4623------------------------------ +# %1 - artifact name +# %2 - artifact type +# %3 - env name +# %4 - existing env + ARTIFACT_NOT_VALID_ENV: { + code: 400, + message: "Error: Artifact %1 in type %2 with env %3 already exists with another env %4", + messageId: "SVC4623" + } +#---------SVC4624------------------------------ +# %1 - groups names +# %2 - VF name +# %3 - component type [VF ] + GROUP_IS_MISSING: { + code: 400, + message: "Error: Invalid Content. The groups '%1' cannot be found under %2 %3.", + messageId: "SVC4624" + } +#---------SVC4625------------------------------ +# %1 - groups name + GROUP_ARTIFACT_ALREADY_ASSOCIATED: { + code: 400, + message: "Error: Invalid Content. Artifact already associated to group '%1'.", + messageId: "SVC4625" + } +#---------SVC4626------------------------------ +# %1 - groups name + GROUP_ARTIFACT_ALREADY_DISSOCIATED: { + code: 400, + message: "Error: Invalid Content. Artifact already dissociated from group '%1'.", + messageId: "SVC4626" + } +#---------SVC4627------------------------------ +# %1 - property name +# %2 - group name +# %3 - group type name + GROUP_PROPERTY_NOT_FOUND: { + code: 400, + message: "Error: property %1 listed in group %2 is not exist in group type %3.", + messageId: "SVC4627" + } +#---------SVC4628------------------------------ +# %1 - csarUUID +# %2 - VF name + VSP_ALREADY_EXISTS: { + code: 400, + message: "Error: The VSP with UUID %1 was already imported for VF %2. Please select another or update the existing VF.", + messageId: "SVC4628" + } +#---------SVC4629------------------------------ +# %1 - VF name + MISSING_CSAR_UUID: { + code: 400, + message: "Error: The Csar UUID or payload name is missing for VF %1.", + messageId: "SVC4629" + } +#---------SVC4630------------------------------ +# %1 - VF name +# %2 - new csarUUID +# %3 - old csarUUID + RESOURCE_LINKED_TO_DIFFERENT_VSP: { + code: 400, + message: "Error: Resource %1 cannot be updated using CsarUUID %2 since the resource is linked to a different VSP with csarUUID %3.", + messageId: "SVC4630" + } +#---------SVC4631------------------------------ +# %1 - policy name + POLICY_TYPE_ALREADY_EXIST: { + code: 409, + message: "Error: Policy type %1 already exists.", + messageId: "SVC4631" + } +#---------SVC4632------------------------------ +# %1 - target name +# %2 - policy type name + TARGETS_NON_VALID: { + code: 400, + message: "Error: target %1 listed in policy type %2 is not a group or resource.", + messageId: "SVC4632" + } +#---------SVC4633------------------------------ +# %1 - policy name + TARGETS_EMPTY: { + code: 400, + message: "Error: Invalid Content. Policy %1 target list was provided but does not have values", + messageId: "SVC4633" + } +#---------SVC4634------------------------------ + DATA_TYPE_CANNOT_BE_EMPTY: { + code: 500, + message: "Error: Data types are empty. Please import the data types.", + messageId: "SVC4634" + } +#---------SVC4635------------------------------ +# %1 - csar uuid + RESOURCE_FROM_CSAR_NOT_FOUND: { + code: 400, + message: "Error: resource from csar uuid %1 not found", + messageId: "SVC4635" + }
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.json b/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.json new file mode 100644 index 0000000000..2560a8acfa --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.json @@ -0,0 +1,11 @@ +{ + "payloadName": "HSS.yml", + "contactId": "jh0003", + "resourceName": "att.nodes.ims.HSS", + "description": "The home subscriber server (HSS), or user profile server function (UPSF), is a master user database that supports the IMS network entities that actually handle calls. It contains the subscription-related information (subscriber profiles), performs authentication and authorization of the user, and can provide information about the subscriber's location and IP information.", + "resourceIconPath": "defaulticon", + "category": "IMS", + "tags": [ + "att.nodes.ims.HSS", "IMS_TAG" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.yml b/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.yml new file mode 100644 index 0000000000..060059508a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.yml @@ -0,0 +1,18 @@ +att.nodes.ims.HSS: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + icscf_endpoint: + type: tosca.capabilities.Endpoint + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more I-CSCF functions + scscf_endpoint: + type: tosca.capabilities.Endpoint + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more S-CSCF functions + requirements: + database_endpoint: + capability: tosca.capabilities.Endpoint.Database + node: tosca.nodes.Database + relationship: tosca.relationships.ConnectsTo
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.yml.old b/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.yml.old new file mode 100644 index 0000000000..c58191e85b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.yml.old @@ -0,0 +1,28 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +description: > + The home subscriber server (HSS), or user profile server function (UPSF), + is a master user database that supports the IMS network entities that actually handle calls. + It contains the subscription-related information (subscriber profiles), + performs authentication and authorization of the user, and can provide information about the + subscriber's location and IP information. + +node_types: + att.nodes.ims.HSS: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + icscf_endpoint: + type: tosca.capabilities.Endpoint + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more I-CSCF functions + scscf_endpoint: + type: tosca.capabilities.Endpoint + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more S-CSCF functions + requirements: + database_endpoint: + capability: tosca.capabilities.Endpoint.Database + node: tosca.nodes.Database + relationship: tosca.relationships.ConnectsTo
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.zip b/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.zip Binary files differnew file mode 100644 index 0000000000..ed8949f445 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/HSS/HSS.zip diff --git a/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.json b/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.json new file mode 100644 index 0000000000..89bf58a2fb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.json @@ -0,0 +1,11 @@ +{ + "payloadName": "ICSCF.yml", + "contactId": "jh0003", + "resourceName": "att.nodes.ims.ICSCF", + "description": "Interrogating-CSCF (I-CSCF) is a SIP function located at the edge of an administrative domain. Its IP address is published in the Domain Name System (DNS) of the domain(using NAPTR and SRV type of DNS records), so that remote servers can find it, and use it as a forwarding point (e.g., registering) for SIP packets to this domain.It queries the HSS to retrieve the address of the S-CSCF and assign it to a user performing SIP registration. It also forwards SIP request or response to the S-CSCF.", + "resourceIconPath": "defaulticon", + "category": "IMS", + "tags": [ + "att.nodes.ims.ICSCF", "IMS_TAG" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.yml b/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.yml new file mode 100644 index 0000000000..a00685bc03 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.yml @@ -0,0 +1,13 @@ +att.nodes.ims.ICSCF: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + pcscf_endpoint: + type: tosca.capabilities.Endpoint + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more P-CSCF functions + requirements: + hss_endpoint: + capability: tosca.capabilities.Endpoint + node: att.nodes.ims.HSS + relationship: tosca.relationships.ConnectsTo
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.yml.old b/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.yml.old new file mode 100644 index 0000000000..183f8db3f4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.yml.old @@ -0,0 +1,24 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +description: > + Interrogating-CSCF (I-CSCF) is a SIP function located at the edge of an administrative domain. + Its IP address is published in the Domain Name System (DNS) of the domain + (using NAPTR and SRV type of DNS records), so that remote servers can find it, + and use it as a forwarding point (e.g., registering) for SIP packets to this domain. + It queries the HSS to retrieve the address of the S-CSCF and assign it to a user performing SIP + registration. It also forwards SIP request or response to the S-CSCF. + +node_types: + att.nodes.ims.ICSCF: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + pcscf_endpoint: + type: tosca.capabilities.Endpoint + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more P-CSCF functions + requirements: + hss_endpoint: + capability: tosca.capabilities.Endpoint + node: att.nodes.ims.HSS + relationship: tosca.relationships.ConnectsTo
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.zip b/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.zip Binary files differnew file mode 100644 index 0000000000..228372e2f3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/ICSCF/ICSCF.zip diff --git a/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.json b/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.json new file mode 100644 index 0000000000..bf8ee08d30 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.json @@ -0,0 +1,11 @@ +{ + "payloadName": "PCSCF.yml", + "contactId": "jh0003", + "resourceName": "att.nodes.ims.PCSCF", + "description": "A Proxy-CSCF (P-CSCF) is a SIP proxy that is the first point of contact for the IMS terminal. It can be located either in the visited network (in full IMS networks) or in the home network (when the visited network is not IMS compliant yet). The P-CSCF is at its core a specialized SBC for the User network interface which not onlyprotects the network, but also the IMS terminal. The use of an additional SBC between the IMS terminal and the P-CSCF is unnecessary and infeasible due to the signaling being encrypted on this leg. The terminal discovers its P-CSCF with either DHCP, or it may be configured (e.g. during initial provisioning or via a 3GPP IMS Management Object (MO)) or in the ISIM or assigned in the PDP Context (in General Packet Radio Service (GPRS)).", + "resourceIconPath": "defaulticon", + "category": "IMS", + "tags": [ + "att.nodes.ims.PCSCF", "IMS_TAG" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.yml b/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.yml new file mode 100644 index 0000000000..3d0e38eefc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.yml @@ -0,0 +1,13 @@ +att.nodes.ims.PCSCF: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + pcscf_endpoint: + type: tosca.capabilities.Endpoint.Public + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more UAs + requirements: + icscf_endpoint: + capability: tosca.capabilities.Endpoint + node: att.nodes.ims.ICSCF + relationship: tosca.relationships.ConnectsTo
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.zip b/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.zip Binary files differnew file mode 100644 index 0000000000..37a6bac251 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/PCSCF/PCSCF.zip diff --git a/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.json b/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.json new file mode 100644 index 0000000000..0f893ddb9b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.json @@ -0,0 +1,11 @@ +{ + "payloadName": "SCSCF.yml", + "resourceName": "att.nodes.ims.SCSCF", + "description": "A Serving-CSCF (S-CSCF) is the central node of the signaling plane. It is a SIP server, but performs session control too. It is always located in the home network. It uses Diameter Cx and Dx interfaces to the HSS to download user profiles and upload user-to-S-CSCF associations (the user profile is only cached locally for processing reasons only and is not changed). All necessary subscriber profile information is loaded from the HSS.", + "resourceIconPath": "defaulticon", + "category": "IMS", + "contactId": jh0003, + "tags": [ + "att.nodes.ims.SCSCF", "IMS_TAG" + ] +} diff --git a/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.yml b/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.yml new file mode 100644 index 0000000000..a2672ddb13 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.yml @@ -0,0 +1,13 @@ +att.nodes.ims.SCSCF: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + icscf_endpoint: + type: tosca.capabilities.Endpoint + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more I-CSCF functions + requirements: + hss_endpoint: + capability: tosca.capabilities.Endpoint + node: att.nodes.ims.HSS + relationship: tosca.relationships.ConnectsTo
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.yml.old b/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.yml.old new file mode 100644 index 0000000000..d8fb1b0d33 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.yml.old @@ -0,0 +1,23 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +description: > + A Serving-CSCF (S-CSCF) is the central node of the signalling plane. + It is a SIP server, but performs session control too. It is always located in the home network. + It uses Diameter Cx and Dx interfaces to the HSS to download user profiles and upload + user-to-S-CSCF associations (the user profile is only cached locally for processing reasons only + and is not changed). All necessary subscriber profile information is loaded from the HSS. + +node_types: + att.nodes.ims.SCSCF: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + icscf_endpoint: + type: tosca.capabilities.Endpoint + relationship: tosca.relationships.ConnectTo + occurrences: [0, UNBOUNDED] + description: Connection with one ore more I-CSCF functions + requirements: + hss_endpoint: + capability: tosca.capabilities.Endpoint + node: att.nodes.ims.HSS + relationship: tosca.relationships.ConnectsTo
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.zip b/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.zip Binary files differnew file mode 100644 index 0000000000..7a579dc5c1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/SCSCF/SCSCF.zip diff --git a/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.json b/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.json new file mode 100644 index 0000000000..7425778dd1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.json @@ -0,0 +1,15 @@ +{ + "payloadName": "compute.yml", + "contactId": "jh0003", + "resourceName": "tosca.nodes.Compute", + "description": "Represents a real or virtual machine or server. Information specified on the Compute + node will be used to find the machine that fits the given requirements in the cloud + available machines. If no sizing information are specified the cloud provider default + machine will be used. It is strongly recommended to specify the required CPUs and memory + at least.", + "resourceIconPath": "defaulticon", + "category": "Infrastructure", + "tags": [ + "tosca.nodes.Compute" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.yml b/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.yml new file mode 100644 index 0000000000..b110157df3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.Compute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.zip b/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.zip Binary files differnew file mode 100644 index 0000000000..95a1325d92 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/compute/compute.zip diff --git a/asdc-tests/src/test/resources/CI/importAttResources/deleteResourcesDemo.sh b/asdc-tests/src/test/resources/CI/importAttResources/deleteResourcesDemo.sh new file mode 100644 index 0000000000..549a4ca78d --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/deleteResourcesDemo.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort>" +} + +function deleteResource() { + + ELEMENT_NAME=$1 + echo "###################### Removing Element ${ELEMENT_NAME} Start ######################" + curl -X "DELETE" -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/resources/res_${ELEMENT_NAME}".1.0" + echo "" + echo "###################### Removing Element ${ELEMENT_NAME} End ########################" + echo "" + echo "" + echo "" +} +if [ $# -lt 2 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 + +deleteResource "tosca.nodes.root" +deleteResource "tosca.nodes.compute" +deleteResource "tosca.nodes.softwarecomponent" +deleteResource "tosca.nodes.loadbalancer" +deleteResource "att.nodes.ims.hss" +deleteResource "att.nodes.ims.icscf" +deleteResource "att.nodes.ims.pcscf" +deleteResource "att.nodes.ims.scscf" + + diff --git a/asdc-tests/src/test/resources/CI/importAttResources/importResourcesDemo.sh b/asdc-tests/src/test/resources/CI/importAttResources/importResourcesDemo.sh new file mode 100644 index 0000000000..92beb9625a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/importResourcesDemo.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort>" +} + +function addResource() { + + ELEMENT_NAME=$1 + echo "###################### Adding Element ${ELEMENT_NAME} Start ######################" + CURRENT_ZIP_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.zip + CURRENT_JSON_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.json + JSON_CONTENT=`paste -s ${CURRENT_JSON_FILE}` + curl -v -F resourceMetadata="${JSON_CONTENT}" -F resourceZip=@${CURRENT_ZIP_FILE} -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/upload/multipart + echo "" + echo "###################### Adding Element ${ELEMENT_NAME} End ########################" + echo "" + echo "" + echo "" +} +if [ $# -lt 2 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 + +addResource "root" +addResource "compute" +addResource "softwareComponent" +addResource "loadBalancer" +addResource "HSS" +addResource "ICSCF" +addResource "PCSCF" +addResource "SCSCF" + + diff --git a/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.json b/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.json new file mode 100644 index 0000000000..d74dc3a3d5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.json @@ -0,0 +1,11 @@ +{ + "payloadName": "loadBalancer.yml", + "contactId": "jh0003", + "resourceName": "tosca.nodes.LoadBalancer", + "description": "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).", + "resourceIconPath": "defaulticon", + "category": "Infrastructure", + "tags": [ + "tosca.nodes.LoadBalancer" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.yml b/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.yml new file mode 100644 index 0000000000..53c053f0a6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.yml @@ -0,0 +1,16 @@ +tosca.nodes.LoadBalancer: + derived_from: tosca.nodes.Root + properties: + # TBD + algorithm : + type: string + required: false + status: experimental + capabilities : + client: + type: tosca.capabilities.Endpoint.Public + description: the Floating (IP) client’s on the public network can connect to + requirements: + - application: + capability: tosca.capabilities.Endpoint + relationship: tosca.relationships.RoutesTo diff --git a/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.zip b/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.zip Binary files differnew file mode 100644 index 0000000000..45edc204b5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/loadBalancer/loadBalancer.zip diff --git a/asdc-tests/src/test/resources/CI/importAttResources/root/root.json b/asdc-tests/src/test/resources/CI/importAttResources/root/root.json new file mode 100644 index 0000000000..6f96cf8b02 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/root/root.json @@ -0,0 +1,11 @@ +{ + "payloadName": "root.yml", + "contactId": "jh0003", + "resourceName": "tosca.nodes.Root", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "category": "Abstract", + "tags": [ + "tosca.nodes.Root" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/root/root.yml b/asdc-tests/src/test/resources/CI/importAttResources/root/root.yml new file mode 100644 index 0000000000..81aacd56ab --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/root/root.yml @@ -0,0 +1,21 @@ +tosca.nodes.Root: + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature: + type: tosca.capabilities.Node + requirements: + - dependency : + capability: tosca.capabilities.Node + node: tosca.nodes.Root + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + interfaces: + Standard: + type: tosca.interfaces.node.lifecycle.Standard diff --git a/asdc-tests/src/test/resources/CI/importAttResources/root/root.zip b/asdc-tests/src/test/resources/CI/importAttResources/root/root.zip Binary files differnew file mode 100644 index 0000000000..bdafdfbeb6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/root/root.zip diff --git a/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.json b/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.json new file mode 100644 index 0000000000..22379bf695 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.json @@ -0,0 +1,11 @@ +{ + "payloadName": "softwareComponent.yml", + "contactId": "jh0003", + "resourceName": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "category": "Abstract", + "tags": [ + "tosca.nodes.SoftwareComponent" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.yml b/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.yml new file mode 100644 index 0000000000..287a376fc3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.yml @@ -0,0 +1,15 @@ +tosca.nodes.SoftwareComponent: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.zip b/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.zip Binary files differnew file mode 100644 index 0000000000..8e39b87808 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importAttResources/softwareComponent/softwareComponent.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.capabilities.yaml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.capabilities.yaml new file mode 100644 index 0000000000..073eba5ee7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.capabilities.yaml @@ -0,0 +1,13 @@ +asdc.capabilities.NetworkInterface: + derived_from: tosca.capabilities.Root + +asdc.capabilities.Container: + derived_from: tosca.capabilities.Container + +# binding a VDU to a CP +asdc.capabilities.nfv.VirtualBindable: + derived_from: tosca.capabilities.Root + +# linking a VL to a CP +asdc.capabilities.nfv.VirtualLinkable: + derived_from: tosca.capabilities.Root diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.json new file mode 100644 index 0000000000..e1727aca5c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.json @@ -0,0 +1,11 @@ +{ + "payloadName": "asdc.nodes.Module.yml", + "contactId": "jh0003", + "name": "asdc.nodes.Module", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "asdc.nodes.Module", "module" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.yml new file mode 100644 index 0000000000..b95156b5e1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.yml @@ -0,0 +1,2 @@ +asdc.nodes.Module: + derived_from: tosca.nodes.Root diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.zip Binary files differnew file mode 100644 index 0000000000..08003f1af8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Module/asdc.nodes.Module.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.json new file mode 100644 index 0000000000..c52bbeebc2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.json @@ -0,0 +1,11 @@ +{ + "payloadName": "asdc.nodes.Network.yml", + "contactId": "jh0003", + "name": "asdc.nodes.Network", + "description": "This is the default AT&T TOSCA Network Node Type that all other AT&T Network TOSCA nodes should extends.", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "asdc.nodes.Network", "Network" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.yml new file mode 100644 index 0000000000..0e56ef7bf2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.yml @@ -0,0 +1,2 @@ +asdc.nodes.Network: + derived_from: tosca.nodes.Root diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.zip Binary files differnew file mode 100644 index 0000000000..9b7fa35c2e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Network/asdc.nodes.Network.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.json new file mode 100644 index 0000000000..5e1dda7106 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.json @@ -0,0 +1,13 @@ +{ + "payloadName": "asdc.nodes.Root.yml", + "contactId": "jh0003", + "name": "asdc.nodes.Root", + "description": "This is the default (root) AT&T TOSCA Node Type that all other AT&T TOSCA nodes should extends. + This allows all AT&T TOSCA nodes to have a consistent set of features for modeling and management (e.g, consistent definitions for requirements, capabilities, and lifecycle interfaces).", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "asdc.nodes.Root" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.yml new file mode 100644 index 0000000000..ed8e1e46aa --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.yml @@ -0,0 +1,3 @@ +asdc.nodes.Root: + derived_from: tosca.nodes.Root + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.zip Binary files differnew file mode 100644 index 0000000000..8453bf3843 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.Root/asdc.nodes.Root.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.json new file mode 100644 index 0000000000..7a122a57cd --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.module.ECA_OAM.yml", + "contactId": "jh0003", + "name": "asdc.nodes.module.ECA_OAM", + "description": "Operation, Administration & Management of vMMSC ECA TRX", + "resourceIconPath": "applicationServer", + "category": "Application Layer 4+/Application Servers", + "tags": [ + "asdc.nodes.module.ECA_OAM", "MMSC OAM", "ECA", "MMSC", "vMMSC", "Mobility" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.yml new file mode 100644 index 0000000000..054c98439c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.yml @@ -0,0 +1,9 @@ +asdc.nodes.module.ECA_OAM: + derived_from: asdc.nodes.Module + requirements: + - oam_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.OAM + - internal_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Internal diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.zip Binary files differnew file mode 100644 index 0000000000..389ef18bae --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_OAM/asdc.nodes.module.ECA_OAM.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.json new file mode 100644 index 0000000000..338099286f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.module.ECA_TRX.yml", + "contactId": "jh0003", + "name": "asdc.nodes.module.ECA_TRX", + "description": "External Content Adaption Transcoder. Transcodes and adapts MMS content according to the capabilities of receiving MS or UE.", + "resourceIconPath": "applicationServer", + "category": "Application Layer 4+/Application Servers", + "tags": [ + "asdc.nodes.module.ECA_TRX", "Content Adaptation Transcoder", "MMSC", "vMMSC", "Mobility" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.yml new file mode 100644 index 0000000000..e2a520dc1d --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.yml @@ -0,0 +1,12 @@ +asdc.nodes.module.ECA_TRX: + derived_from: asdc.nodes.Module + requirements: + - oam_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.OAM + - traffic_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Traffic + - internal_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Internal diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.zip Binary files differnew file mode 100644 index 0000000000..f7911beb8f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.ECA_TRX/asdc.nodes.module.ECA_TRX.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.json new file mode 100644 index 0000000000..8ce0b8a961 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.module.F5_LTM.yml", + "contactId": "jh0003", + "name": "asdc.nodes.module.F5_LTM", + "description": "vMMSC Local Traffic Manager serves as the load balancer for traffic coming into the vMMSC. Traffic from MMSC designated to external network passes via F5. Also, internal communication between ECA and MMSC is via F5", + "resourceIconPath": "loadBalancer", + "category": "Application Layer 4+/Load Balancer", + "tags": [ + "asdc.nodes.module.F5_LTM", "F5", "Load Balancer", "vMMSC", "Mobility" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.yml new file mode 100644 index 0000000000..c50cd0a481 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.yml @@ -0,0 +1,12 @@ +asdc.nodes.module.F5_LTM: + derived_from: asdc.nodes.Module + requirements: + - core_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Core + - dmz_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.DMZ + - traffic_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Traffic diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.zip Binary files differnew file mode 100644 index 0000000000..2bb9bbaa03 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.F5_LTM/asdc.nodes.module.F5_LTM.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.json new file mode 100644 index 0000000000..4103880abf --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.module.MMSC.yml", + "contactId": "jh0003", + "name": "asdc.nodes.module.MMSC", + "description": "Accepts MMS messages via F5 and distributes among MMSCs. Messages are from user mobile device or from another Message Service", + "resourceIconPath": "applicationServer", + "category": "Application Layer 4+/Application Servers", + "tags": [ + "asdc.nodes.module.MMSC", "MMSC", "vMMSC", "Mobility" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.yml new file mode 100644 index 0000000000..b65b20f5b2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.yml @@ -0,0 +1,12 @@ +asdc.nodes.module.MMSC: + derived_from: asdc.nodes.Module + requirements: + - oam_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.OAM + - cinder_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Cinder + - traffic_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Traffic diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.zip Binary files differnew file mode 100644 index 0000000000..abf8dd8ced --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.MMSC/asdc.nodes.module.MMSC.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.json new file mode 100644 index 0000000000..a289e4dd1b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.module.NEMS_BE.yml", + "contactId": "jh0003", + "name": "asdc.nodes.module.NEMS_BE", + "description": "The Back End of a Network Message Storage allows external multimedia content to use SMTP e-mail mechanism to submit MMS messages", + "resourceIconPath": "applicationServer", + "category": "Application Layer 4+/Application Servers", + "tags": [ + "asdc.nodes.module.NEMS_BE", "MMSC", "vMMSC", "Network Message Storage", "Back End", "Mobility" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.yml new file mode 100644 index 0000000000..b460bf57a5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.yml @@ -0,0 +1,9 @@ +asdc.nodes.module.NEMS_BE: + derived_from: asdc.nodes.Module + requirements: + - oam_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.OAM + - internal_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Internal diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.zip Binary files differnew file mode 100644 index 0000000000..2ee35f5cde --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_BE/asdc.nodes.module.NEMS_BE.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.json new file mode 100644 index 0000000000..4d80b25712 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.json @@ -0,0 +1,11 @@ +{ + "payloadName": "asdc.nodes.module.NEMS_FE.yml", + "contactId": "jh0003", + "name": "asdc.nodes.module.NEMS_FE", + "description": "The Front End of a Network Message Storage allows external multimedia content to use SMTP e-mail mechanism to submit MMS messages", + "resourceIconPath": "objectStorage", + "category": "Application Layer 4+/Application Servers", + "tags": [ + "asdc.nodes.module.NEMS_FE", "MMSC", "vMMSC", "Network Message Storage", "Front End", "Mobility" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.yml new file mode 100644 index 0000000000..256aa7e4a3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.yml @@ -0,0 +1,15 @@ +asdc.nodes.module.NEMS_FE: + derived_from: asdc.nodes.Module + requirements: + - oam_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.OAM + - cinder_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Cinder + - traffic_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Traffic + - internal_connection: + capability: asdc.capabilities.NetworkInterface + node: asdc.nodes.network.Internal diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.zip Binary files differnew file mode 100644 index 0000000000..28eb1ccb60 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.module.NEMS_FE/asdc.nodes.module.NEMS_FE.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.json new file mode 100644 index 0000000000..4217cd4f07 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.network.Cinder.yml", + "contactId": "jh0003", + "name": "asdc.nodes.network.Cinder", + "description": "Represents access to cloud shared storae.", + "resourceIconPath": "network", + "category": "Generic/Network Elements", + "tags": [ + "asdc.nodes.network.Cinder", "Network", "Cinder", "Cloud" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.yml new file mode 100644 index 0000000000..54b34d23fe --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.yml @@ -0,0 +1,5 @@ +asdc.nodes.network.Cinder: + derived_from: asdc.nodes.Network + capabilities: + cinder_connection: + type: asdc.capabilities.NetworkInterface diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.zip Binary files differnew file mode 100644 index 0000000000..5210a39f29 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Cinder/asdc.nodes.network.Cinder.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.json new file mode 100644 index 0000000000..343a785b6f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.network.Core.yml", + "contactId": "jh0003", + "name": "asdc.nodes.network.Core", + "description": "Represents Cloud Core network which provide interface to other services.", + "resourceIconPath": "network", + "category": "Generic/Network Elements", + "tags": [ + "asdc.nodes.network.Core", "Network", "Core", "Cloud" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.yml new file mode 100644 index 0000000000..ac4ceed23e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.yml @@ -0,0 +1,5 @@ +asdc.nodes.network.Core: + derived_from: asdc.nodes.Network + capabilities: + core_connection: + type: asdc.capabilities.NetworkInterface diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.zip Binary files differnew file mode 100644 index 0000000000..7482fee585 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Core/asdc.nodes.network.Core.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.json new file mode 100644 index 0000000000..50041339b6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.network.DMZ.yml", + "contactId": "jh0003", + "name": "asdc.nodes.network.DMZ", + "description": "Represents DMZ network.", + "resourceIconPath": "network", + "category": "Generic/Network Elements", + "tags": [ + "asdc.nodes.network.DMZ", "Network", "DMZ", "Cloud" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.yml new file mode 100644 index 0000000000..df41ae4072 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.yml @@ -0,0 +1,5 @@ +asdc.nodes.network.DMZ: + derived_from: asdc.nodes.Network + capabilities: + dmz_connection: + type: asdc.capabilities.NetworkInterface diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.zip Binary files differnew file mode 100644 index 0000000000..fab96c9a64 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.DMZ/asdc.nodes.network.DMZ.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.json new file mode 100644 index 0000000000..a2cf1c8026 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.json @@ -0,0 +1,11 @@ +{ + "payloadName": "asdc.nodes.network.Internal.yml", + "contactId": "jh0003", + "name": "asdc.nodes.network.Internal", + "description": "Represents Internal Network", + "resourceIconPath": "network", + "category": "Generic/Network Elements", + "tags": [ + "asdc.nodes.network.Internal", "Network", "Cloud" + ] +} diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.yml new file mode 100644 index 0000000000..01b6dece24 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.yml @@ -0,0 +1,5 @@ + asdc.nodes.network.Internal: + derived_from: asdc.nodes.Network + capabilities: + dmz_connection: + type: asdc.capabilities.NetworkInterface diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.zip Binary files differnew file mode 100644 index 0000000000..2317ce5ad0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Internal/asdc.nodes.network.Internal.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.json new file mode 100644 index 0000000000..161897ac22 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.json @@ -0,0 +1,12 @@ +{ + "payloadName": "asdc.nodes.network.OAM.yml", + "contactId": "jh0003", + "name": "asdc.nodes.network.OAM", + "description": "Represents AT&T Operation, Administration and Management (OA&M) network.", + "resourceIconPath": "network", + "category": "Generic/Network Elements", + "tags": [ + "asdc.nodes.network.OAM", "Network", "OAM", "Cloud" + ] +} + diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.yml new file mode 100644 index 0000000000..0a0875ad07 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.yml @@ -0,0 +1,5 @@ +asdc.nodes.network.OAM: + derived_from: asdc.nodes.Network + capabilities: + oam_connection: + type: asdc.capabilities.NetworkInterface diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.zip Binary files differnew file mode 100644 index 0000000000..b2fbb78a7c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.OAM/asdc.nodes.network.OAM.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.json b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.json new file mode 100644 index 0000000000..fb8269039c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.json @@ -0,0 +1,11 @@ +{ + "payloadName": "asdc.nodes.network.Traffic.yml", + "contactId": "jh0003", + "name": "asdc.nodes.network.Traffic", + "description": "Represents Network Traffic", + "resourceIconPath": "network", + "category": "Generic/Network Elements", + "tags": [ + "asdc.nodes.network.Traffic", "Network", "Cloud" + ] +} diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.yml b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.yml new file mode 100644 index 0000000000..b50bc8e612 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.yml @@ -0,0 +1,5 @@ +asdc.nodes.network.Traffic: + derived_from: asdc.nodes.Network + capabilities: + dmz_connection: + type: asdc.capabilities.NetworkInterface diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.zip Binary files differnew file mode 100644 index 0000000000..3add4e6ade --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/asdc.nodes.network.Traffic/asdc.nodes.network.Traffic.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/capabilityTypes.zip b/asdc-tests/src/test/resources/CI/importResource-MMSC/capabilityTypes.zip Binary files differnew file mode 100644 index 0000000000..a1f0cdeee5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/capabilityTypes.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/deleteNormative.sh b/asdc-tests/src/test/resources/CI/importResource-MMSC/deleteNormative.sh new file mode 100644 index 0000000000..fb46daa544 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/deleteNormative.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort> <resourceName>" +} + +function deleteResource() { + + ELEMENT_NAME=$1 + echo -e "############### Removing Element ${ELEMENT_NAME} Start ######################" + http_code=$(curl -s -o /dev/null -w "%{http_code}" -X "DELETE" -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/resources/res_${ELEMENT_NAME}".1.0") + if [ ${http_code} -eq 204 ]; then + echo -e "\n############### Removing Element ${ELEMENT_NAME} status code:${http_code} End #######\n\n\n" + elif [ ${http_code} -eq 500 ]; then + echo -e "\n############### Failed to remove Element ${ELEMENT_NAME} status code:${http_code} End #######\n\n\n" + exit 1 + elif [ ${http_code} -eq 404 ]; then + echo -e "\n############### Element ${ELEMENT_NAME} not found status code:${http_code} End #######\n\n\n" + else + echo -e "\n############### Failed to remove Element ${ELEMENT_NAME} status code:${http_code} End #######\n\n\n" + exit 1 + fi +} +if [ $# -lt 3 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 + +deleteResource $3 + +exit 0 diff --git a/asdc-tests/src/test/resources/CI/importResource-MMSC/importNormative.sh b/asdc-tests/src/test/resources/CI/importResource-MMSC/importNormative.sh new file mode 100644 index 0000000000..9e568dddc3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-MMSC/importNormative.sh @@ -0,0 +1,85 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort> <userId>" +} + +function addResource() { + + ELEMENT_NAME=$1 + echo -e "###################### Adding Element ${ELEMENT_NAME} Start ######################" + CURRENT_ZIP_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.zip + CURRENT_JSON_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.json + sed -i 's/"userId": ".*",/"userId": "'${ATT_UID}'",/' ${CURRENT_JSON_FILE} + JSON_CONTENT=`paste -s ${CURRENT_JSON_FILE}` + http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F resourceMetadata="${JSON_CONTENT}" -F resourceZip=@${CURRENT_ZIP_FILE} -H USER_ID:${ATT_UID} ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/upload/multipart) + if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding Element ${ELEMENT_NAME} End ########################\n\n\n" + elif [ ${http_code} -eq 409 ]; then + echo -e "\n###################### Already exists Element ${ELEMENT_NAME} status code:${http_code} End ########################\n\n\n" + elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add Element ${ELEMENT_NAME} status code:${http_code} End ########################\n\n\n" + exit 1 + fi +} +if [ $# -lt 3 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 +ATT_UID=$3 +NO_CAPS=$4 + +if [ "$NO_CAPS" = "nocaps" ]; then + echo "Skipping Caps import..." +else + #Add The CapabilityTypes + http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F capabilityTypeZip=@capabilityTypes.zip -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/uploadType/capability) + if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding The CapabilityTypes status code:${http_code} End ########################\n\n\n" + elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add CapabilityTypes status code:${http_code} End ########################\n\n\n" + exit 1 + else + echo -e "\n###################### Failed to add CapabilityTypes status code:${http_code} End ########################\n\n\n" + exit 1 + fi + #Add The InterfaceLifecycleTypes + #http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F interfaceLifecycleTypeZip=@interfaceLifecycleTypes.zip -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/uploadType/interfaceLifecycle) + #if [ ${http_code} -eq 201 ]; then + # echo -e "\n###################### Adding The InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + #elif [ ${http_code} -eq 409 ]; then + # echo -e "\n###################### Already exists InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + #elif [ ${http_code} -eq 500 ]; then + # echo -e "\n###################### Failed to add InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + # exit 1 + #else + # echo -e "\n###################### Failed to add InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + # exit 1 + #fi +fi + +addResource "asdc.nodes.Root" +addResource "asdc.nodes.Network" +addResource "asdc.nodes.network.Cinder" +addResource "asdc.nodes.network.Core" +addResource "asdc.nodes.network.DMZ" +addResource "asdc.nodes.network.OAM" +addResource "asdc.nodes.network.Traffic" +addResource "asdc.nodes.network.Internal" +addResource "asdc.nodes.Module" +addResource "asdc.nodes.module.ECA_OAM" +addResource "asdc.nodes.module.ECA_TRX" +addResource "asdc.nodes.module.F5_LTM" +addResource "asdc.nodes.module.MMSC" +addResource "asdc.nodes.module.NEMS_BE" +addResource "asdc.nodes.module.NEMS_FE" + + + + + +exit 0 diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/VCE_Brocade_Tosca.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/VCE_Brocade_Tosca.yaml new file mode 100644 index 0000000000..da71792698 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/VCE_Brocade_Tosca.yaml @@ -0,0 +1,834 @@ +tosca_definitions_version: tosca_simple_profile_for_nfv_1_0_0 +tosca_default_namespace: Need to figure out the namespace +description: vCEBrocade and Base Types for VNF, Connection Point, Virtual Link, etc based on VNF Modeling Guidelines + +metadata: + template_name: VCE_Brocade.yaml + template_author: Kazi Farooqui (KF6593) + template_version: "0.1" + +##################################################################### +############################ Data Types ########################### +##################################################################### +#data_types: + +########################################################################################### +###################### NODE TYPE DEFINITIONS ############################################ +########################################################################################### + +node_types: + ################################################################## + ################### TOSCA VNF Node ########################## + ################################################################## + tosca.nodes.nfv.VNF: + derived_from: tosca.nodes.Root + properties: + vnf_category: + type: string + description: Router, FW, LB, DNS are example categories + id: + type: string + description: ID of this VNF + vendor: + type: string + description: name of the vendor who provides this VNF + version: + type: version + description: version of the software for this VNF + #device_config: + # type: map + #entry_schema: + # type: string + #default: + # p1: 1 + # p2: 2 + #p3: 3 + #requirements: + # - virtualLink: + #capability: tosca.capabilities.nfv.VirtualLinkable + #occurrences: [1, UNBOUNDED] + + ################################################################## + ################### ASDC VNF Node ########################## + ################################################################## + org.openecomp.resource.nfv.VNF: + derived_from: tosca.nodes.nfv.VNF + + + ################################################################## + ###################### TOSCA VDU Node ########################## + ################################################################## + + tosca.nodes.nfv.VDU: + derived_from: tosca.nodes.SoftwareComponent + #properties: + + capabilities: + high_availability: + type: tosca.capabilities.nfv.HA + occurrences: [1, UNBOUNDED] # this is default + + virtual_binding: + type: tosca.capabilities.nfv.VDU.VirtualBindable + occurrences: [1, UNBOUNDED] # this is default + + requirements: + - high_availability: + capability: tosca.capabilities.nfv.HA + occurrences: [0,1] + + - host: ##Is hosted in a VM + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn + occurrences: [1, 1] #this is default + + ################################################################## + ###################### ASDC VDU Node###### ###################### + ################################################################## + org.openecomp.resource.nfv.VDU: + derived_from: tosca.nodes.nfv.VDU + description: A VDU is a compute component of VNF + + ################################################################## + ####################### TOSCA CP Node ########################## + ################################################################## + tosca.nodes.nfv.CP: + derived_from: tosca.nodes.Root + properties: + type: + type: string + required: false + requirements: + - virtualbinding: + capability: tosca.capabilities.nfv.VDU.VirtualBindable + occurrences: [1, 1] #this is default + + - virtuallink: + capability: tosca.capabilities.nfv.VirtualLinkable + occurrences: [1, 1] #this is default + + attributes: + ip_address: + type: string + # required: false + + ################################################################## + ############################ ASDC CP Node ##################### + ################################################################## + org.openecomp.resource.nfv.CP: + derived_from: tosca.nodes.nfv.CP + + ################################################################## + ############### IPAG VLAN Connector CP Node ##################### + ################################################################## + org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector: + derived_from: org.openecomp.resource.nfv.CP + properties: + ipag_network_name: + type: string + + ipag_network_type: + type: string + + ipag_network_uuid: + type: string + + vlan_segment_ids: + type: list + entry_schema: + type: string + description: list of segmentation Ids. + + + #attributes: + capabilities: + dummy_capability: + type: org.openecomp.capabilities.nfv.IPAG_VLAN_Connector + description: This capability has been introduced to model this Connector as a component of VCE VNF, because Node Template is not supported by ASDC Team + + requirements: + - virtualBindingRequirement: + capability: org.openecomp.capabilities.nfv.VDU.VirtualBindable + #node: org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU + relationship: org.openecomp.relationships.nfv.VirtualBindsTo + occurrences: [1, 1] #default + + - virtualLinkingrequirement: + capability: org.openecomp.capabilities.nfv.VirtualLinkable + #node: org.openecomp.resource.nfv.VL + relationship: org.openecomp.relationships.nfv.VirtualLinksTo + occurrences: [1, 1] #default + + #interfaces: + #standard: + #configure: + #implementation: configure.sh + + ################################################################## + ############### VPE VLAN Connector CP Node ##################### + ################################################################## + org.openecomp.resource.nfv.CP.VPE_VLAN_Connector: + derived_from: org.openecomp.resource.nfv.CP + properties: + vpe_network_name: + type: string + + vpe_network_type: + type: string + + vpe_network_uuid: + type: string + + vlan_segment_ids: + type: list + entry_schema: + type: string + description: list of segmentation Ids. + + + #attributes: + capabilities: + dummy_capability: + type: org.openecomp.capabilities.nfv.VPE_VLAN_Connector + description: This capability has been introduced to model this Connector as a component of VCE VNF, because Node Template is not supported by ASDC Team + + requirements: + - virtualBindingRequirement: + capability: org.openecomp.capabilities.nfv.VDU.VirtualBindable + #node: org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU + relationship: org.openecomp.relationships.nfv.VirtualBindsTo + occurrences: [1, 1] #default + + - virtualLinkingrequirement: + capability: org.openecomp.capabilities.nfv.VirtualLinkable + #node: org.openecomp.resource.nfv.VL + relationship: org.openecomp.relationships.nfv.VirtualLinksTo + occurrences: [1, 1] #default + + #interfaces: + #standard: + #configure: + #implementation: configure.sh + ################################################################## + ############### OAM VLAN Connector CP Node ##################### + ################################################################## + org.openecomp.resource.nfv.CP.OAM_VLAN_Connector: + derived_from: org.openecomp.resource.nfv.CP + properties: + oam_network_name: + type: string + + oam_network_type: + type: string + + oam_network_uuid: + type: string + + vlan_segment_ids: + type: list + entry_schema: + type: string + description: list of segmentation Ids. + + + #attributes: + capabilities: + dummy_capability: + type: org.openecomp.capabilities.nfv.OAM_VLAN_Connector + description: This capability has been introduced to model this Connector as a component of VCE VNF, because Node Template is not supported by ASDC Team + + requirements: + - virtualBindingRequirement: + capability: org.openecomp.capabilities.nfv.VDU.VirtualBindable + #node: org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU + relationship: org.openecomp.relationships.nfv.VirtualBindsTo + occurrences: [1, 1] #default + + - virtualLinkingrequirement: + capability: org.openecomp.capabilities.nfv.VirtualLinkable + #node: org.openecomp.resource.nfv.VL + relationship: org.openecomp.relationships.nfv.VirtualLinksTo + occurrences: [1, 1] #default + + #interfaces: + #standard: + #configure: + #implementation: configure.sh + + ################################################################## + ############## TOSCA VL Node Type ####################### + ################################################################## + tosca.nodes.nfv.VL: + derived_from: tosca.nodes.Root + properties: + vendor: + type: string + required: false + description: name of the vendor who provides this VL + + capabilities: + virtuallinkable: + type: tosca.capabilities.nfv.VirtualLinkable + occurrences: [1, UNBOUNDED] # this is default + +################################################################## +###################### ASDC VL Node TYPE ###################### +################################################################## + org.openecomp.resource.nfv.VL: + derived_from: tosca.nodes.nfv.VL + + +################################################################## +###################### ASDC VNF Node TYPE ###################### +################################################################## + org.openecomp.resource.nfv.VNF: + derived_from: tosca.nodes.nfv.VNF + +################################################################## +###################### ASDC Routing Category VDU ################# +################################################################## + + org.openecomp.resource.nfv.VDU.RoutingCategoryVDU: + derived_from: org.openecomp.resource.nfv.VDU + +################################################################## +###################### vCE_Brocade_VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU:#paharoni - renamed from org.openecomp.resource.v/VCE_Brocade_VDU to keep convention + derived_from: org.openecomp.resource.nfv.VDU.RoutingCategoryVDU + description: Definition of VCE Brocade VDU + properties: + vnf_category: + type: string + description: input provided at RESOURCE INJECTION TIME in ASDC TOOL + vce_type: + type: string + description: input provided at RESOURCE INJECTION TIME in ASDC TOOL + vendor: + type: string + description: input provided at RESOURCE INJECTION TIME in ASDC TOOL + version: + type: string + description: input provided at RESOURCE INJECTION TIME in ASDC TOOL + image_id: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer -vCE image used to boot VM + flavor_id: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer - VM Size, SMALL, MEDIUM, LARGE + username: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer -login user Id of Router + password: + type: string + description: I Input provided at DESIGN TIME by Service Composer or Designer - password for login + domain_name: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer or (perhaps pre-defined for each Cloud Region) - login domain + time_zone: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer or (perhaps pre-defined for each Cloud Region) - time zone to set for vCE + login_session_timeout: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer or (perhaps pre-defined for each Cloud Region) - user login session timeout + ipag_vlan_bandwidth: + type: integer + description: Input provided at DESIGN TIME by Service Composer or Designer - bandwidth allocation of customer VLAN requested by customer + vpe_vlan_interface_qos_name: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer - QoS Policy name to be applied to this interface + ipag_vlan_interface_qos_name: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer - QoS Policy name to be applied to this interface + hostname: + type: string + description: Input provided at RUN TIME by Cloud-PO - Host VM is created first and this value is input when the vCE image is later on installed by Cloud-PO + host_ip: + type: string + description: Input provided at RUN TIME by Cloud-PO - Host VM IP + availability_zone: + type: string + description: Input provided at RUN TIME by Cloud-PO - Cloud availability zone where VM is created + oam_loopback_vlan_ip_address: + type: string + description: Input provided at RUN TIME by Cloud-PO - OAM Network is pre-created - already exists in Data Center + ipag_vlan_ip_address: + type: string + description: Input provided at RUN TIME by Cloud-PO - IPAG VLAN Network is created by Cloud-PO before the vCE is created or installed + vpe_vlan_ip_address: + type: string + description: Input provided at RUN TIME by Cloud-PO - VPE VLAN Network is created by Cloud-PO before the vCE is created / installed + vpe_vlan_id: + type: string + description: Input provided at RUN TIME by Cloud-PO - VLAN Id is created first by Cloud-PO. It is required to apply VPE QoS Policy + ipag_vlan_id: + type: string + description: Input provided at RUN TIME by Cloud-PO - VLAN Id is created first by Cloud-PO. It is required to apply IPAG QoS Policy + oam_vlan_interface_name: + type: string + description: Input provided at RUN TIME by Cloud-PO - This interfce is created first by Cloud-PO. This is the interface to which QoS policy is applied + vpe_vlan_interface_name: + type: string + description: Input provided at RUN TIME by Cloud-PO - This interfce is created first by Cloud-PO. This is the interface to which QoS policy is applied + ipag_vlan_interface_name: + type: string + description: Input provided at RUN TIME by Cloud-PO - This interfce is created first by Cloud-PO. This is the interface to which QoS policy is applied + #############ATTRIBUTES of vCE - These values are outputted by Cloud-PO when vCE is created / installed ############## + attributes: + vce_name: + type: string + description: Name assigned to vCE by Cloud-PO + oam_loopback_vlan_ipaddres: + type: string + description: IP Address assigned by Cloud-PO to OAM VLAN + ipag_vlan_ipaddres: + type: string + description: IP Address assigned by Cloud-PO to IPAG VLAN + vpe_vlan_ipaddres: + type: string + description: IP Address assigned by Cloud-PO to VPE VLAN + vnf_id: + type: string + description: unique id assigned to VNF by Cloud-PO - used for AAI metadata + + #############CAPABILITIES of vCE - ######################### + capabilities: + ce_routing_capability: + type: org.openecomp.capabilities.nfv.CERouting + description: This is the base capability of vCE + occurrences: [1, UNBOUNDED] # default + + static_routing: + type: org.openecomp.capabilities.nfv.StaticRouting + description: This is the optional capability of the vCE + occurrences: [0, UNBOUNDED] + + bgp_routing: + type: org.openecomp.capabilities.nfv.BGPRouting + description: This is the optional capability of the vCE + occurrences: [0, UNBOUNDED] + + virtual_bindable: + type: org.openecomp.capabilities.nfv.VDU.VirtualBindable# paharoni - changed to org.openecomp.capabilities.nfv.vdu.VirtualBindable from tosca.capabilities.nfv.VDU.VirtualBindable - was it intentional?? + description: This is the internal capability of the VDU to support Binding to Connection Points + occurrences: [1, UNBOUNDED] + + dummy_capability: + type: org.openecomp.capabilities.nfv.VCE_Brocade_Routing + description: This capability has been introduced to model VCE VDU as a component of VCE VNF, because Node Template is not supported by ASDC Team + + #############REQUIREMENTS of vCE - ########################### + requirements: + - nat: # A vCE may have a requirement to connect to a VNF offering this capability, during service composition + capability: org.openecomp.capabilities.nfv.VNF.NetworkAddressTranslationCapability + node: org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU + relationship: org.openecomp.relationships.nfv.CnnectsToNAT + occurrences: [0, 1] + + - pat: # A vCE may have a requirement to connect to a VNF offering this capability, during service composition + capability: org.openecomp.capabilities.nfv.VNF.PortAddressTranslationCapability + node: org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU #paharoni - renamed from org.openecomp.resource.nfv.VDU.PortAddressTranslationCategoryVDU. Resource name can be up to 50 chars + relationship: org.openecomp.relationships.nfv.CnnectsToPAT + occurrences: [0, 1] + + + - firewall: # A vCE may have a requirement to connect to a VNF offering this capability, during service composition + capability: org.openecomp.capabilities.nfv.VNF.FirewallCapability + node: org.openecomp.resource.nfv.VDU.FirewallCategoryVDU + relationship: org.openecomp.relationships.nfv.CnnectsToFirewall + occurrences: [0, 1] + + - dhcp: # A vCE may have a requirement to connect to a VNF offering this capability, during service composition + capability: org.openecomp.capabilities.nfv.VNF.DHCPCapability + node: org.openecomp.resource.nfv.VDU.DHCPCategoryVDU + relationship: org.openecomp.relationships.nfv.CnnectsToDHCP + occurrences: [0, 1] + + - dns: # A vCE may have a requirement to connect to a VNF offering this capability, during service composition + capability: org.openecomp.capabilities.nfv.VNF.DNSCapability + node: org.openecomp.resource.nfv.VDU.DNSCategoryVDU + relationship: org.openecomp.relationships.nfv.CnnectsToDNS + occurrences: [0, 1] + + - hosted_on: # A vCE needs to be hosted in a VM + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn + occurrences: [1, 1] #default + + + + +######################################################################################################## +###################### vCE_Brocade_VNF Node TYPE ##################################################### +########### IN THE ABSENCE OF NODE TEMPLATE, the vCE_Brocade_VNF Node Type is modeled as REQUIRING: ##### +########### 1. vce_Brocade_VDU Node +########### 2. oam_vlan_connector Node +########### 3. ipag_vlan_connector Node +########### 4. vpe_vlan_connector Node +######################################################################################################## + + org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF: + derived_from: org.openecomp.resource.nfv.VNF + requirements: + - vce_brocade_vdu: + capability: org.openecomp.capabilities.nfv.VCE_Brocade_Routing + node: org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU + occurrences: [1, 1] + + - oam_vlan_connector: + capability: org.openecomp.capabilities.nfv.OAM_VLAN_Connector + node: org.openecomp.resource.nfv.CP.OAM_VLAN_Connector + occurrences: [1, 1] + + - vpe_vlan_connector: + capability: org.openecomp.capabilities.nfv.VPE_VLAN_Connector + node: org.openecomp.resource.nfv.CP.VPE_VLAN_Connector + occurrences: [1, 1] + + - ipag_vlan_connector: + capability: org.openecomp.capabilities.nfv.IPAG_VLAN_Connector + node: org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector + occurrences: [1, 1] + +################################################################## +###################### ASDC NAT VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU: #paharoni - renamed from org.openecomp.resource.nfv.VDU.NetworkAddressTranslationCategoryVDU. Resource name can be up to 50 chars in ASDC + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + nat: + type: org.openecomp.capabilities.nfv.VNF.NetworkAddressTranslationCapability + description: This capability has been introduced + ###############Further details described in NAT VNF TOSCA Model + +################################################################## +###################### PAT VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU: #paharoni - renamed from org.openecomp.resource.nfv.VDU.PortAddressTranslationCategoryVDU. Resource name can be up to 50 chars in ASDC + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + pat: + type: org.openecomp.capabilities.nfv.VNF.PortAddressTranslationCapability + description: This capability has been introduced + ###############Further details described in PAT VNF TOSCA Model + +################################################################## +###################### Firewall VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.FirewallCategoryVDU: + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + firewall: + type: org.openecomp.capabilities.nfv.VNF.FirewallCapability + description: This capability has been introduced + ###############Further details described in Firewall VNF TOSCA Model + +################################################################## +###################### DHCP VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.DHCPCategoryVDU: + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + dhcp: + type: org.openecomp.capabilities.nfv.VNF.DHCPCapability + description: This capability has been introduced + ###############Further details described in DHCP VNF TOSCA Model + +################################################################## +###################### DNS VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.DNSCategoryVDU: + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + dns: + type: org.openecomp.capabilities.nfv.VNF.DNSCapability + description: This capability has been introduced + ###############Further details described in DNS VNF TOSCA Model + + +########################################################################################### +###################### CAPABILITY TYPE DEFINITIONS ###################################### +########################################################################################### + +capability_types: + ##################################################################################### + ###################### TOSCA Capability: VirtualBindable ########################## + ##################################################################################### + tosca.capabilities.nfv.VDU.VirtualBindable: + derived_from: tosca.capabilities.Root + valid_source_types: [tosca.nodes.nfv.VDU] + + ##################################################################################### + ############################ ASDC Capability: VirtualBindable ##################### + ##################################################################################### + org.openecomp.capabilities.nfv.VDU.VirtualBindable: + derived_from: tosca.capabilities.nfv.VDU.VirtualBindable + valid_source_types: [org.openecomp.resource.nfv.VDU] + + ##################################################################################### + ##################### TOSCA Capability: VirtualLinkable ########################## + ##################################################################################### + tosca.capabilities.nfv.VirtualLinkable: + derived_from: tosca.capabilities.Root ##paharoni - changed from tosca.capabilities.nfv.VirtualLinkable - cannot derive from itself + valid_source_types: [org.openecomp.resource.nfv.VL] + + ##################################################################################### + ############################ ASDC Capability: VirtualLinkable ##################### + ##################################################################################### + org.openecomp.capabilities.nfv.VirtualLinkable: + derived_from: tosca.capabilities.Root + valid_source_types: [tosca.nodes.nfv.VL] + + ##################################################################################### + ############################ Capability: HighAvailability ########################## + ##################################################################################### + tosca.capabilities.nfv.HA: + derived_from: tosca.capabilities.Root + valid_source_types: [tosca.nodes.nfv.VDU] + + ##################################################################################### + ######################Capability: Generic asdc capability ########################## + ##################################################################################### + org.openecomp.capabilities.Root: + derived_from: tosca.capabilities.Root + + ##################################################################################### + ############################ Capability: GENERIC ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.RoutingCapability: + derived_from: org.openecomp.capabilities.Root + properties: + routing_type: + type: string + description: some basic routing descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.VDU.RoutingCategoryVDU] + + ##################################################################################### + ############################ Capability: CE ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.CERouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: PE ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.PERouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: P ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.PRouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: BGP ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.BGPRouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: STATIC ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.StaticRouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: Network Address Translation ############### + ##################################################################################### + org.openecomp.capabilities.nfv.VNF.NetworkAddressTranslationCapability: + derived_from: org.openecomp.capabilities.Root + properties: + nat_type: + type: string + description: some basic NAT descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU] + + ##################################################################################### + ############################ Capability: Port Address Translation ############### + ##################################################################################### + org.openecomp.capabilities.nfv.VNF.PortAddressTranslationCapability: + derived_from: org.openecomp.capabilities.Root + properties: + pat_type: + type: string + description: some basic PAT descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU] + + ##################################################################################### + ############################ Capability: FIREWALL ############### + ##################################################################################### + org.openecomp.capabilities.nfv.VNF.FirewallCapability: + derived_from: org.openecomp.capabilities.Root + properties: + firewall_type: + type: string + description: some basic Firewall Capability descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.VDU.FirewallCategoryVDU] + + ##################################################################################### + ############################ Capability: DHCP ############### + ##################################################################################### + org.openecomp.capabilities.nfv.VNF.DHCPCapability: + derived_from: org.openecomp.capabilities.Root + properties: + dhcp_type: + type: string + description: some basic DHCP Capability descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.VDU.DHCPCategoryVDU] + + ##################################################################################### + ############################ Capability: DNS ############### + ##################################################################################### + org.openecomp.capabilities.nfv.VNF.DNSCapability: + derived_from: org.openecomp.capabilities.Root + properties: + dns_type: + type: string + description: some basic DNS Capability descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.VDU.DNSCategoryVDU] + + ##################################################################################### + ############################ Capability: vCE Brocade ROUTING ################# DUMMY + ############## THIS IS CAPABILITY IS ONLY OFFERED BY SPECIFIC BROCADE VDU ########### + ##################################################################################### + org.openecomp.capabilities.nfv.vCE_Brocade_Routing: + derived_from: org.openecomp.capabilities.nfv.CERouting + valid_source_types: [org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU] + + ##################################################################################### + ############################ Capability: OAM VLAn Connector ################# DUMMY + ############## THIS IS CAPABILITY IS ONLY OFFERED BY SPECIFIC Connector ########### + ##################################################################################### + org.openecomp.capabilities.nfv.OAM_VLAN_Connector: + derived_from: org.openecomp.capabilities.Root + valid_source_types: [org.openecomp.resource.nfv.CP.OAM_VLAN_Connector] + + ##################################################################################### + ############################ Capability: IPAG VLAn Connector ################# DUMMY + ############## THIS IS CAPABILITY IS ONLY OFFERED BY SPECIFIC Connector ########### + ##################################################################################### + org.openecomp.capabilities.nfv.IPAG_VLAN_Connector: + derived_from: org.openecomp.capabilities.Root + valid_source_types: [org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector] + + ##################################################################################### + ############################ Capability: VPE VLAn Connector ################# DUMMY + ############## THIS IS CAPABILITY IS ONLY OFFERED BY SPECIFIC Connector ########### + ##################################################################################### + org.openecomp.capabilities.nfv.VPE_VLAN_Connector: + derived_from: org.openecomp.capabilities.Root + valid_source_types: [org.openecomp.resource.nfv.CP.VPE_VLAN_Connector] + +########################################################################################### +###################### RELATIONSHIP TYPE DEFINITIONS ################################### +########################################################################################### + +relationship_types: +##################################################################################### +######################TOSCA Relationship: VirtualBindsTo ########################## +##################################################################################### + tosca.relationships.nfv.VirtualBindsTo: + derived_from: tosca.relationships.ConnectsTo + description: Represents the relationsHIP between VDU and CP Node Types + valid_target_types: [tosca.capabilities.nfv.VDU.VirtualBindable] + +##################################################################################### +######################ASDC Relationship: VirtualBindsTo ########################## +##################################################################################### + org.openecomp.relationships.nfv.VirtualBindsTo: + derived_from: tosca.relationships.nfv.VirtualBindsTo + description: Represents the relationsHIP between VDU and CP Node Types + valid_target_types: [org.openecomp.capabilities.nfv.VDU.VirtualBindable] + +##################################################################################### +##################### TOSCA Relationship: VirtualLinksTo ########################## +##################################################################################### + tosca.relationships.nfv.VirtualLinksTo: + derived_from: tosca.relationships.ConnectsTo + description: Represents the relationsHIP between CP and VL Node Types + valid_target_types: [tosca.capabilities.nfv.VirtualLinkable] + +##################################################################################### +##################### ASDC Relationship: VirtualLinksTo ########################## +##################################################################################### + org.openecomp.relationships.nfv.VirtualLinksTo: + derived_from: tosca.relationships.ConnectsTo + description: Represents the relationsHIP between CP and VL Node Types + valid_target_types: [org.openecomp.capabilities.nfv.VirtualLinkable] + +##################################################################################### +###################### ASDC Relationship: ConnectsToNAT ########################## +##################################################################################### + org.openecomp.relationships.nfv.CnnectsToNAT: + derived_from: tosca.relationships.ConnectsTo + description: Represents the relationsHIP between a VNF and NAT capable Node + #properties: + #attributes: + #interfaces: + valid_target_types: [org.openecomp.capabilities.nfv.VNF.NetworkAddressTranslationCapability] + +##################################################################################### +###################### ASDC Relationship: ConnectsToPAT ########################## +##################################################################################### + org.openecomp.relationships.nfv.CnnectsToPAT: + derived_from: tosca.relationships.ConnectsTo + description: Represents the relationsHIP between a VNF and PAT capable Node + #properties: + #attributes: + #interfaces: + valid_target_types: [org.openecomp.capabilities.nfv.VNF.PortAddressTranslationCapability] + +##################################################################################### +###################### ASDC Relationship: ConnectsToFirewall ########################## +##################################################################################### + org.openecomp.relationships.nfv.CnnectsToFirewall: + derived_from: tosca.relationships.ConnectsTo + description: Represents the relationsHIP between a VNF and Firewall capable Node + #properties: + #attributes: + #interfaces: + valid_target_types: [org.openecomp.capabilities.nfv.VNF.FirewallCapability] + +##################################################################################### +###################### ASDC Relationship: ConnectsToDNS ########################## +##################################################################################### + org.openecomp.relationships.nfv.CnnectsToDNS: + derived_from: tosca.relationships.ConnectsTo + description: Represents the relationsHIP between a VNF and DNS capable Node + #properties: + #attributes: + #interfaces: + valid_target_types: [org.openecomp.capabilities.nfv.VNF.DNSCapability] + +##################################################################################### +###################### ASDC Relationship: ConnectsToDHCP ########################## +##################################################################################### + org.openecomp.relationships.nfv.CnnectsToDHCP: + derived_from: tosca.relationships.ConnectsTo + description: Represents the relationsHIP between a VNF and DHCP capable Node + #properties: + #attributes: + #interfaces: + valid_target_types: [org.openecomp.capabilities.nfv.VNF.DHCPCapability] +
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/capabilityTypes.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/capabilityTypes.zip Binary files differnew file mode 100644 index 0000000000..75f56d4c76 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/capabilityTypes.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/importVceBrocade.sh b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/importVceBrocade.sh new file mode 100644 index 0000000000..76f567bfe2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/importVceBrocade.sh @@ -0,0 +1,89 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort> <userId>" +} + +function addResource() { + + ELEMENT_NAME=$1 + echo -e "###################### Adding Element ${ELEMENT_NAME} Start ######################" + CURRENT_ZIP_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.zip + CURRENT_JSON_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.json + sed -i 's/"userId": ".*",/"userId": "'${ATT_UID}'",/' ${CURRENT_JSON_FILE} + JSON_CONTENT=`paste -s ${CURRENT_JSON_FILE}` + http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F resourceMetadata="${JSON_CONTENT}" -F resourceZip=@${CURRENT_ZIP_FILE} -H USER_ID:${ATT_UID} ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/upload/multipart) + if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding Element ${ELEMENT_NAME} End ########################\n\n\n" + elif [ ${http_code} -eq 409 ]; then + echo -e "\n###################### Already exists Element ${ELEMENT_NAME} status code:${http_code} End ########################\n\n\n" + elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add Element ${ELEMENT_NAME} status code:${http_code} End ########################\n\n\n" + exit 1 + fi +} +if [ $# -lt 3 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 +ATT_UID=$3 +NO_CAPS=$4 + +if [ "$NO_CAPS" = "nocaps" ]; then + echo "Skipping Caps import..." +else + #Add The CapabilityTypes + http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F capabilityTypeZip=@capabilityTypes.zip -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/uploadType/capability) + if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding The CapabilityTypes status code:${http_code} End ########################\n\n\n" + elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add CapabilityTypes status code:${http_code} End ########################\n\n\n" + exit 1 + else + echo -e "\n###################### Failed to add CapabilityTypes status code:${http_code} End ########################\n\n\n" + exit 1 + fi + #Add The InterfaceLifecycleTypes + #http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F interfaceLifecycleTypeZip=@interfaceLifecycleTypes.zip -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/uploadType/interfaceLifecycle) + #if [ ${http_code} -eq 201 ]; then + # echo -e "\n###################### Adding The InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + #elif [ ${http_code} -eq 409 ]; then + # echo -e "\n###################### Already exists InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + #elif [ ${http_code} -eq 500 ]; then + # echo -e "\n###################### Failed to add InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + # exit 1 + #else + # echo -e "\n###################### Failed to add InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + # exit 1 + #fi +fi + +addResource "tosca.nodes.nfv.CP" +addResource "tosca.nodes.nfv.VDU" + +addResource "org.openecomp.resource.nfv.CP" +addResource "org.openecomp.resource.nfv.VDU" + +addResource "org.openecomp.resource.nfv.vdu.RoutingCategoryVDU" +addResource "org.openecomp.resource.nfv.vdu.VCE_Brocade_VDU" +addResource "org.openecomp.resource.nfv.cp.IPAG_VLAN_Connector" +addResource "org.openecomp.resource.nfv.cp.OAM_VLAN_Connector" +addResource "org.openecomp.resource.nfv.cp.VPE_VLAN_Connector" + +#addResource "tosca.nodes.nfv.VL" +#addResource "tosca.nodes.nfv.VNF" +#addResource "org.openecomp.resource.nfv.VL" +#addResource "org.openecomp.resource.nfv.VNF" +#addResource "org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU" +#addResource "org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF" +#addResource "org.openecomp.resource.nfv.VDU.DHCPCategoryVDU" +#addResource "org.openecomp.resource.nfv.VDU.DNSCategoryVDU" +#addResource "org.openecomp.resource.nfv.VDU.FirewallCategoryVDU" +#addResource "org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU" + + +exit 0 diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.json new file mode 100644 index 0000000000..390fda0257 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.cp.IPAG_VLAN_Connector.yaml", + "contactId": "jh0003", + "name": "org.openecomp.resource.nfv.cp.IPAG_VLAN_Connector", + "description": "Represents a virtual or physical interface between the NFV and the LAN.", + "resourceIconPath": "port", + "category": "Network Layer 2-3/LAN Connectors", + "tags": [ + "org.openecomp.resource.nfv.cp.IPAG_VLAN_Connector", "LAN Connector" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.yaml new file mode 100644 index 0000000000..03ecc8ea3e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.yaml @@ -0,0 +1,48 @@ +################################################################## + ############### IPAG VLAN Connector CP Node ##################### + ################################################################## +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.nfv.cp.IPAG_VLAN_Connector: + derived_from: org.openecomp.resource.nfv.CP + properties: + ipag_network_name: + type: string + + ipag_network_type: + type: string + + ipag_network_uuid: + type: string + + vlan_segment_ids: + type: list + entry_schema: + type: string + description: list of segmentation Ids. + + + #attributes: + capabilities: + dummy_capability: + type: org.openecomp.capabilities.nfv.IPAG_VLAN_Connector + description: This capability has been introduced to model this Connector as a component of VCE VNF, because Node Template is not supported by ASDC Team + + requirements: + - virtualBindingRequirement: + capability: org.openecomp.capabilities.nfv.vdu.VirtualBindable + #node: org.openecomp.asdc.nodes.vCE_Brocade_VDU + relationship: org.openecomp.relationships.nfv.VirtualBindsTo + occurrences: [1, 1] #default + + - virtualLinkingrequirement: + capability: org.openecomp.capabilities.nfv.VirtualLinkable + #node: org.openecomp.asdc.nodes.nfv.VL + relationship: org.openecomp.relationships.nfv.VirtualLinksTo + occurrences: [1, 1] #default + + #interfaces: + #standard: + #configure: + #implementation: configure.sh +
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.zip Binary files differnew file mode 100644 index 0000000000..31ddc8cbf6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector/org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.json new file mode 100644 index 0000000000..b4f9a8f03e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.cp.OAM_VLAN_Connector.yaml", + "contactId": "jh0003", + "name": "org.openecomp.resource.nfv.cp.OAM_VLAN_Connector", + "description": "Represents a virtual or physical interface between the NFV and the OAM.", + "resourceIconPath": "port", + "category": "Network Layer 2-3/LAN Connectors", + "tags": [ + "org.openecomp.resource.nfv.cp.OAM_VLAN_Connector", "OAM Connector", "OAM" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.yaml new file mode 100644 index 0000000000..6f7c86f676 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.yaml @@ -0,0 +1,48 @@ +################################################################## + ############### OAM VLAN Connector CP Node ##################### + ################################################################## +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.nfv.cp.OAM_VLAN_Connector: + derived_from: org.openecomp.resource.nfv.CP + properties: + oam_network_name: + type: string + + oam_network_type: + type: string + + oam_network_uuid: + type: string + + vlan_segment_ids: + type: list + entry_schema: + type: string + description: list of segmentation Ids. + + + #attributes: + capabilities: + dummy_capability: + type: org.openecomp.capabilities.nfv.OAM_VLAN_Connector + description: This capability has been introduced to model this Connector as a component of VCE VNF, because Node Template is not supported by ASDC Team + + requirements: + - virtualBindingRequirement: + capability: org.openecomp.capabilities.nfv.vdu.VirtualBindable + #node: org.openecomp.asdc.nodes.vCE_Brocade_VDU + relationship: org.openecomp.relationships.nfv.VirtualBindsTo + occurrences: [1, 1] #default + + - virtualLinkingrequirement: + capability: org.openecomp.capabilities.nfv.VirtualLinkable + #node: org.openecomp.asdc.nodes.nfv.VL + relationship: org.openecomp.relationships.nfv.VirtualLinksTo + occurrences: [1, 1] #default + + #interfaces: + #standard: + #configure: + #implementation: configure.sh +
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.zip Binary files differnew file mode 100644 index 0000000000..2076fb039b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector/org.openecomp.resource.nfv.CP.OAM_VLAN_Connector.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.json new file mode 100644 index 0000000000..819335d0f3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.cp.VPE_VLAN_Connector.yaml", + "contactId": "jh0003", + "name": "org.openecomp.resource.nfv.cp.VPE_VLAN_Connector", + "description": "Represents a virtual or physical interface between the NFV and the WAN.", + "resourceIconPath": "port", + "category": "Network Layer 2-3/WAN Connectors", + "tags": [ + "org.openecomp.resource.nfv.cp.VPE_VLAN_Connector", "WAN Connector" + ] +} diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.yaml new file mode 100644 index 0000000000..f5f7380374 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.yaml @@ -0,0 +1,48 @@ +################################################################## + ############### VPE VLAN Connector CP Node ##################### + ################################################################## +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.nfv.cp.VPE_VLAN_Connector: + derived_from: org.openecomp.resource.nfv.CP + properties: + vpe_network_name: + type: string + + vpe_network_type: + type: string + + vpe_network_uuid: + type: string + + vlan_segment_ids: + type: list + entry_schema: + type: string + description: list of segmentation Ids. + + + #attributes: + capabilities: + dummy_capability: + type: org.openecomp.capabilities.nfv.VPE_VLAN_Connector + description: This capability has been introduced to model this Connector as a component of VCE VNF, because Node Template is not supported by ASDC Team + + requirements: + - virtualBindingRequirement: + capability: org.openecomp.capabilities.nfv.vdu.VirtualBindable + #node: org.openecomp.asdc.nodes.vCE_Brocade_VDU + relationship: org.openecomp.relationships.nfv.VirtualBindsTo + occurrences: [1, 1] #default + + - virtualLinkingrequirement: + capability: org.openecomp.capabilities.nfv.VirtualLinkable + #node: org.openecomp.asdc.nodes.nfv.VL + relationship: org.openecomp.relationships.nfv.VirtualLinksTo + occurrences: [1, 1] #default + + #interfaces: + #standard: + #configure: + #implementation: configure.sh +
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.zip Binary files differnew file mode 100644 index 0000000000..5808fc9338 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector/org.openecomp.resource.nfv.CP.VPE_VLAN_Connector.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.json new file mode 100644 index 0000000000..76c3eabc26 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.CP.yaml", + "contactId": "jh0003", + "name": "org.openecomp.resource.nfv.CP", + "description": "ATT CP element", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "org.openecomp.resource.nfv.CP" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.yaml new file mode 100644 index 0000000000..ba6bda0c8b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.yaml @@ -0,0 +1,7 @@ +################################################################## +############################ ASDC CP Node ##################### +################################################################## +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.nfv.CP: + derived_from: tosca.nodes.nfv.CP
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.zip Binary files differnew file mode 100644 index 0000000000..0fd24994f9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.CP/org.openecomp.resource.nfv.CP.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.json new file mode 100644 index 0000000000..95673b81ff --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.vdu.RoutingCategoryVDU.yaml", + "contactId": "jh0003", + "name": "org.openecomp.resource.nfv.vdu.RoutingCategoryVDU", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Infrastructure", + "tags": [ + "org.openecomp.resource.nfv.vdu.RoutingCategoryVDU" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.yaml new file mode 100644 index 0000000000..5bbc64cb2c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.yaml @@ -0,0 +1,7 @@ +################################################################## +###################### ASDC Routing Category VDU ################# +################################################################## +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.nfv.vdu.RoutingCategoryVDU: + derived_from: org.openecomp.resource.nfv.VDU diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.zip Binary files differnew file mode 100644 index 0000000000..3853a341b0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU/org.openecomp.resource.nfv.VDU.RoutingCategoryVDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.json new file mode 100644 index 0000000000..91b692357b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.vdu.VCE_Brocade_VDU.yaml", + "contactId": "jh0003", + "name": "org.openecomp.resource.nfv.vdu.VCE_Brocade_VDU", + "description": "Brocade Vyatta 5600 vRouter used as Virtual Customer Edge (vCE) delivers high throughput on general-purpose x86 server. it is based on open standards, open protocols and is fully compatible with legacy networks. It has advanced functionality to be able to deploy in a variety of network environments.", + "resourceIconPath": "brocade", + "category": "Network Layer 2-3/Router", + "tags": [ + "org.openecomp.resource.nfv.vdu.VCE_Brocade_VDU", "vCE", "Brocade", "Gamma" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.yaml new file mode 100644 index 0000000000..2ba732ab3b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.yaml @@ -0,0 +1,156 @@ +################################################################## +###################### vCE_Brocade_VDU Node TYPE ############### +################################################################## +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.nfv.vdu.VCE_Brocade_VDU: + derived_from: org.openecomp.resource.nfv.vdu.RoutingCategoryVDU + description: Definition of VCE Brocade VDU + properties: + vnf_category: + type: string + description: input provided at RESOURCE INJECTION TIME in ASDC TOOL + vce_type: + type: string + description: input provided at RESOURCE INJECTION TIME in ASDC TOOL + vendor: + type: string + description: input provided at RESOURCE INJECTION TIME in ASDC TOOL + version: + type: string + description: input provided at RESOURCE INJECTION TIME in ASDC TOOL + image_id: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer -vCE image used to boot VM + flavor_id: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer - VM Size, SMALL, MEDIUM, LARGE + username: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer -login user Id of Router + password: + type: string + description: I Input provided at DESIGN TIME by Service Composer or Designer - password for login + domain_name: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer or (perhaps pre-defined for each Cloud Region) - login domain + time_zone: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer or (perhaps pre-defined for each Cloud Region) - time zone to set for vCE + login_session_timeout: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer or (perhaps pre-defined for each Cloud Region) - user login session timeout + ipag_vlan_bandwidth: + type: integer + description: Input provided at DESIGN TIME by Service Composer or Designer - bandwidth allocation of customer VLAN requested by customer + vpe_vlan_interface_qos_name: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer - QoS Policy name to be applied to this interface + ipag_vlan_interface_qos_name: + type: string + description: Input provided at DESIGN TIME by Service Composer or Designer - QoS Policy name to be applied to this interface + hostname: + type: string + description: Input provided at RUN TIME by Cloud-PO - Host VM is created first and this value is input when the vCE image is later on installed by Cloud-PO + host_ip: + type: string + description: Input provided at RUN TIME by Cloud-PO - Host VM IP + availability_zone: + type: string + description: Input provided at RUN TIME by Cloud-PO - Cloud availability zone where VM is created + oam_loopback_vlan_ip_address: + type: string + description: Input provided at RUN TIME by Cloud-PO - OAM Network is pre-created - already exists in Data Center + ipag_vlan_ip_address: + type: string + description: Input provided at RUN TIME by Cloud-PO - IPAG VLAN Network is created by Cloud-PO before the vCE is created or installed + vpe_vlan_ip_address: + type: string + description: Input provided at RUN TIME by Cloud-PO - VPE VLAN Network is created by Cloud-PO before the vCE is created / installed + vpe_vlan_id: + type: string + description: Input provided at RUN TIME by Cloud-PO - VLAN Id is created first by Cloud-PO. It is required to apply VPE QoS Policy + ipag_vlan_id: + type: string + description: Input provided at RUN TIME by Cloud-PO - VLAN Id is created first by Cloud-PO. It is required to apply IPAG QoS Policy + oam_vlan_interface_name: + type: string + description: Input provided at RUN TIME by Cloud-PO - This interfce is created first by Cloud-PO. This is the interface to which QoS policy is applied + vpe_vlan_interface_name: + type: string + description: Input provided at RUN TIME by Cloud-PO - This interfce is created first by Cloud-PO. This is the interface to which QoS policy is applied + ipag_vlan_interface_name: + type: string + description: Input provided at RUN TIME by Cloud-PO - This interfce is created first by Cloud-PO. This is the interface to which QoS policy is applied + #############ATTRIBUTES of vCE - These values are outputted by Cloud-PO when vCE is created / installed ############## + attributes: + vce_name: + type: string + description: Name assigned to vCE by Cloud-PO + oam_loopback_vlan_ipaddres: + type: string + description: IP Address assigned by Cloud-PO to OAM VLAN + ipag_vlan_ipaddres: + type: string + description: IP Address assigned by Cloud-PO to IPAG VLAN + vpe_vlan_ipaddres: + type: string + description: IP Address assigned by Cloud-PO to VPE VLAN + vnf_id: + type: string + description: unique id assigned to VNF by Cloud-PO - used for AAI metadata + + #############CAPABILITIES of vCE - ######################### + capabilities: + ce_routing_capability: + type: org.openecomp.capabilities.nfv.CERouting + description: This is the base capability of vCE + occurrences: [1, UNBOUNDED] # default + + static_routing: + type: org.openecomp.capabilities.nfv.StaticRouting + description: This is the optional capability of the vCE + occurrences: [0, UNBOUNDED] + + bgp_routing: + type: org.openecomp.capabilities.nfv.BGPRouting + description: This is the optional capability of the vCE + occurrences: [0, UNBOUNDED] + + virtual_bindable: + type: org.openecomp.capabilities.nfv.vdu.VirtualBindable + description: This is the internal capability of the VDU to support Binding to Connection Points + occurrences: [1, UNBOUNDED] + + dummy_capability: + type: org.openecomp.capabilities.nfv.VCE_Brocade_Routing + description: This capability has been introduced to model VCE VDU as a component of VCE VNF, because Node Template is not supported by ASDC Team + + #############REQUIREMENTS of vdu - ########################### + requirements: + - oam_vlan_connector: + capability: org.openecomp.capabilities.nfv.OAM_VLAN_Connector + node: org.openecomp.resource.nfv.cp.OAM_VLAN_Connector + relationship: tosca.relationships.ConnectsTo + occurrences: [1, 1] + + - vpe_vlan_connector: + capability: org.openecomp.capabilities.nfv.VPE_VLAN_Connector + node: org.openecomp.resource.nfv.cp.VPE_VLAN_Connector + relationship: tosca.relationships.ConnectsTo + occurrences: [1, 1] + + - ipag_vlan_connector: + capability: org.openecomp.capabilities.nfv.IPAG_VLAN_Connector + node: org.openecomp.resource.nfv.cp.IPAG_VLAN_Connector + relationship: tosca.relationships.ConnectsTo + occurrences: [1, 1] + + - hosted_on: # A vCE needs to be hosted in a VM + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn + occurrences: [1, 1] #default + + + diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.zip Binary files differnew file mode 100644 index 0000000000..1d5b041a88 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU/org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.json new file mode 100644 index 0000000000..9623090743 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VDU.yaml", + "contactId": "jh0003", + "name": "org.openecomp.resource.nfv.VDU", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "org.openecomp.resource.nfv.VDU" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.yaml new file mode 100644 index 0000000000..f5e5aa9195 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.yaml @@ -0,0 +1,5 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.nfv.VDU: + derived_from: tosca.nodes.nfv.VDU + description: A VDU is a compute component of VNF
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.zip Binary files differnew file mode 100644 index 0000000000..569a8b2a44 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/org.openecomp.resource.nfv.VDU/org.openecomp.resource.nfv.VDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.json new file mode 100644 index 0000000000..e17b474385 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.yaml", + "contactId": "jh0003", + "resourceName": "org.openecomp.resource.nfv.VDU.DHCPCategoryVDU", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Network Elements", + "tags": [ + "org.openecomp.resource.nfv.VDU.DHCPCategoryVDU" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.yaml new file mode 100644 index 0000000000..64f150e73e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.yaml @@ -0,0 +1,10 @@ +################################################################## +###################### DHCP VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.DHCPCategoryVDU: + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + dhcp: + type: org.openecomp.capabilities.nfv.VNF.DHCPCapability + description: This capability has been introduced + ###############Further details described in DHCP VNF TOSCA Model
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.zip Binary files differnew file mode 100644 index 0000000000..d60b15698c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU/org.openecomp.resource.nfv.VDU.DHCPCategoryVDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.json new file mode 100644 index 0000000000..8c419d17d3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VDU.DNSCategoryVDU.yaml", + "contactId": "jh0003", + "resourceName": "org.openecomp.resource.nfv.VDU.DNSCategoryVDU", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Network Elements", + "tags": [ + "org.openecomp.resource.nfv.VDU.DNSCategoryVDU" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.yaml new file mode 100644 index 0000000000..58aa9f3e81 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.yaml @@ -0,0 +1,10 @@ +################################################################## +###################### DNS VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.DNSCategoryVDU: + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + dns: + type: org.openecomp.capabilities.nfv.VNF.DNSCapability + description: This capability has been introduced + ###############Further details described in DNS VNF TOSCA Model
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.zip Binary files differnew file mode 100644 index 0000000000..e927ad3d2a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.DNSCategoryVDU/org.openecomp.resource.nfv.VDU.DNSCategoryVDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.json new file mode 100644 index 0000000000..6c0b033552 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.yaml", + "contactId": "jh0003", + "resourceName": "org.openecomp.resource.nfv.VDU.FirewallCategoryVDU", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Network Elements", + "tags": [ + "org.openecomp.resource.nfv.VDU.FirewallCategoryVDU" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.yaml new file mode 100644 index 0000000000..f22dfcb35e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.yaml @@ -0,0 +1,10 @@ +################################################################## +###################### Firewall VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.FirewallCategoryVDU: + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + firewall: + type: org.openecomp.capabilities.nfv.VNF.FirewallCapability + description: This capability has been introduced + ###############Further details described in Firewall VNF TOSCA Model
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.zip Binary files differnew file mode 100644 index 0000000000..548b64ed17 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU/org.openecomp.resource.nfv.VDU.FirewallCategoryVDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.json new file mode 100644 index 0000000000..be8f6fd133 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.yaml", + "contactId": "jh0003", + "resourceName": "org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Network Elements", + "tags": [ + "org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.yaml new file mode 100644 index 0000000000..133ccc33b5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.yaml @@ -0,0 +1,10 @@ +################################################################## +###################### ASDC NAT VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU: #paharoni - renamed from org.openecomp.resource.nfv.VDU.NetworkAddressTranslationCategoryVDU. Resource name can be up to 50 chars in ASDC + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + nat: + type: org.openecomp.capabilities.nfv.VNF.NetworkAddressTranslationCapability + description: This capability has been introduced + ###############Further details described in NAT VNF TOSCA Model
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.zip Binary files differnew file mode 100644 index 0000000000..93ef2905f6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU/org.openecomp.resource.nfv.VDU.NetworkAddrCategoryVDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.json new file mode 100644 index 0000000000..26a2dd9a08 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.yaml", + "contactId": "jh0003", + "resourceName": "org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Network Elements", + "tags": [ + "org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.yaml new file mode 100644 index 0000000000..04aad2f848 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.yaml @@ -0,0 +1,10 @@ +################################################################## +###################### PAT VDU Node TYPE ############### +################################################################## + org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU: #paharoni - renamed from org.openecomp.resource.nfv.VDU.PortAddressTranslationCategoryVDU. Resource name can be up to 50 chars in ASDC + derived_from: org.openecomp.resource.nfv.VDU + capabilities: #paharoni - added to connect to VCE_Brocade_VDU + pat: + type: org.openecomp.capabilities.nfv.VNF.PortAddressTranslationCapability + description: This capability has been introduced + ###############Further details described in PAT VNF TOSCA Model
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.zip Binary files differnew file mode 100644 index 0000000000..0bad67331b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU/org.openecomp.resource.nfv.VDU.PortAddrCategoryVDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.json new file mode 100644 index 0000000000..7ea24e09f5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VL.yaml", + "contactId": "jh0003", + "resourceName": "org.openecomp.resource.nfv.VL", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "org.openecomp.resource.nfv.VL" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.yaml new file mode 100644 index 0000000000..0709072040 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.yaml @@ -0,0 +1,7 @@ +################################################################## +###################### ASDC VL Node TYPE ###################### +################################################################## + org.openecomp.resource.nfv.VL: + derived_from: tosca.nodes.nfv.VL + + diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.zip Binary files differnew file mode 100644 index 0000000000..b6d19de95b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VL/org.openecomp.resource.nfv.VL.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.json new file mode 100644 index 0000000000..6e68301bcb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.yaml", + "contactId": "jh0003", + "resourceName": "org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Network Elements", + "tags": [ + "org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.yaml new file mode 100644 index 0000000000..bbd0fe0945 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.yaml @@ -0,0 +1,32 @@ +######################################################################################################## +###################### vCE_Brocade_VNF Node TYPE ##################################################### +########### IN THE ABSENCE OF NODE TEMPLATE, the vCE_Brocade_VNF Node Type is modeled as REQUIRING: ##### +########### 1. vce_Brocade_VDU Node +########### 2. oam_vlan_connector Node +########### 3. ipag_vlan_connector Node +########### 4. vpe_vlan_connector Node +######################################################################################################## + + org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF: + derived_from: org.openecomp.resource.nfv.VNF + requirements: + - vce_brocade_vdu: + capability: org.openecomp.capabilities.nfv.VCE_Brocade_Routing + node: org.openecomp.resource.nfv.VDU.VCE_Brocade_VDU + occurrences: [1, 1] + + - oam_vlan_connector: + capability: org.openecomp.capabilities.nfv.OAM_VLAN_Connector + node: org.openecomp.resource.nfv.CP.OAM_VLAN_Connector + occurrences: [1, 1] + + - vpe_vlan_connector: + capability: org.openecomp.capabilities.nfv.VPE_VLAN_Connector + node: org.openecomp.resource.nfv.CP.VPE_VLAN_Connector + occurrences: [1, 1] + + - ipag_vlan_connector: + capability: org.openecomp.capabilities.nfv.IPAG_VLAN_Connector + node: org.openecomp.resource.nfv.CP.IPAG_VLAN_Connector + occurrences: [1, 1] + diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.zip Binary files differnew file mode 100644 index 0000000000..158f917ee8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF/org.openecomp.resource.nfv.VNF.VCE_Brocade_VNF.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.json new file mode 100644 index 0000000000..18ce8bbca5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.json @@ -0,0 +1,11 @@ +{ + "payloadName": "org.openecomp.resource.nfv.VNF.yaml", + "contactId": "jh0003", + "resourceName": "org.openecomp.resource.nfv.VNF", + "description": "Node Type that represents a Module", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "org.openecomp.resource.nfv.VNF" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.yaml new file mode 100644 index 0000000000..6872cfc7fb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.yaml @@ -0,0 +1,5 @@ +################################################################## +###################### ASDC VNF Node TYPE ###################### +################################################################## + org.openecomp.resource.nfv.VNF: + derived_from: tosca.nodes.nfv.VNF diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.zip Binary files differnew file mode 100644 index 0000000000..2b8e33d71a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/org.openecomp.resource.nfv.VNF/org.openecomp.resource.nfv.VNF.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.json new file mode 100644 index 0000000000..e5bcfb204e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.json @@ -0,0 +1,11 @@ +{ + "payloadName": "tosca.nodes.nfv.VL.yaml", + "contactId": "jh0003", + "resourceName": "tosca.nodes.nfv.VL", + "description": "TOSCA VL base element", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "tosca.nodes.nfv.VL" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.yaml new file mode 100644 index 0000000000..2fbcc9c46d --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.yaml @@ -0,0 +1,16 @@ +################################################################## + ############## TOSCA VL Node Type ####################### + ################################################################## + tosca.nodes.nfv.VL: + derived_from: tosca.nodes.Root + properties: + vendor: + type: string + required: false + description: name of the vendor who provides this VL + + capabilities: + virtuallinkable: + type: tosca.capabilities.nfv.VirtualLinkable + occurrences: [1, UNBOUNDED] # this is default +
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.zip Binary files differnew file mode 100644 index 0000000000..fc7ba8d27b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VL/tosca.nodes.nfv.VL.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.json new file mode 100644 index 0000000000..bd6047734c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.json @@ -0,0 +1,11 @@ +{ + "payloadName": "tosca.nodes.nfv.VNF.yaml", + "contactId": "jh0003", + "resourceName": "tosca.nodes.nfv.VNF", + "description": "TOSCA VNF base element", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "tosca.nodes.nfv.VNF" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.yaml new file mode 100644 index 0000000000..5cf9453884 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.yaml @@ -0,0 +1,30 @@ +################################################################## +################### TOSCA VNF Node ########################## +################################################################## +tosca.nodes.nfv.VNF: + derived_from: tosca.nodes.Root + properties: + vnf_category: + type: string + description: Router, FW, LB, DNS are example categories + id: + type: string + description: ID of this VNF + vendor: + type: string + description: name of the vendor who provides this VNF + version: + type: version + description: version of the software for this VNF + #device_config: + # type: map + #entry_schema: + # type: string + #default: + # p1: 1 + # p2: 2 + #p3: 3 + #requirements: + # - virtualLink: + #capability: tosca.capabilities.nfv.VirtualLinkable + #occurrences: [1, UNBOUNDED]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.zip Binary files differnew file mode 100644 index 0000000000..3c10c5f388 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/resourcesToFix/tosca.nodes.nfv.VNF/tosca.nodes.nfv.VNF.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.json new file mode 100644 index 0000000000..bf82a9a390 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.json @@ -0,0 +1,11 @@ +{ + "payloadName": "tosca.nodes.nfv.CP.yaml", + "contactId": "jh0003", + "name": "tosca.nodes.nfv.CP", + "description": "TOSCA CP base element", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "tosca.nodes.nfv.CP" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.yaml new file mode 100644 index 0000000000..271a4bf026 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.yaml @@ -0,0 +1,24 @@ + ################################################################## + ####################### TOSCA CP Node ########################## + ################################################################## +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.nfv.CP: + derived_from: tosca.nodes.Root + properties: + type: + type: string + required: false + requirements: + - virtualbinding: + capability: tosca.capabilities.nfv.vdu.VirtualBindable + occurrences: [1, 1] #this is default + + - virtuallink: + capability: tosca.capabilities.nfv.VirtualLinkable + occurrences: [1, 1] #this is default + + attributes: + ip_address: + type: string + # required: false
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.zip Binary files differnew file mode 100644 index 0000000000..2d7281a915 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.CP/tosca.nodes.nfv.CP.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.json b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.json new file mode 100644 index 0000000000..2ab0340e59 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.json @@ -0,0 +1,11 @@ +{ + "payloadName": "tosca.nodes.nfv.VDU.yaml", + "contactId": "jh0003", + "name": "tosca.nodes.nfv.VDU", + "description": "TOSCA VDU base element", + "resourceIconPath": "defaulticon", + "category": "Generic/Abstract", + "tags": [ + "tosca.nodes.nfv.VDU" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.yaml new file mode 100644 index 0000000000..d1cba804e6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.yaml @@ -0,0 +1,28 @@ + ################################################################## + ###################### TOSCA VDU Node ########################## + ################################################################## +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.nfv.VDU: + derived_from: tosca.nodes.SoftwareComponent + #properties: + + capabilities: + high_availability: + type: tosca.capabilities.nfv.HA + occurrences: [1, UNBOUNDED] # this is default + + virtual_binding: + type: tosca.capabilities.nfv.vdu.VirtualBindable + occurrences: [1, UNBOUNDED] # this is default + + requirements: + - high_availability: + capability: tosca.capabilities.nfv.HA + occurrences: [0,1] + + - host: ##Is hosted in a VM + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn + occurrences: [1, 1] #this is default
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.zip b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.zip Binary files differnew file mode 100644 index 0000000000..3ba4eb7d80 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/tosca.nodes.nfv.VDU/tosca.nodes.nfv.VDU.zip diff --git a/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/vce.brocade.capabilities.yaml b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/vce.brocade.capabilities.yaml new file mode 100644 index 0000000000..af55754cf3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource-VCE-Brocade/vce.brocade.capabilities.yaml @@ -0,0 +1,191 @@ +##################################################################################### + ###################### TOSCA Capability: VirtualBindable ########################## + ##################################################################################### + tosca.capabilities.nfv.vdu.VirtualBindable: + derived_from: tosca.capabilities.Root + valid_source_types: [tosca.nodes.nfv.VDU] + + ##################################################################################### + ##################### TOSCA Capability: VirtualLinkable ########################## + ##################################################################################### + tosca.capabilities.nfv.VirtualLinkable: + derived_from: tosca.capabilities.Root ##paharoni - changed from tosca.capabilities.nfv.VirtualLinkable - cannot derive from itself + valid_source_types: [org.openecomp.resource.nfv.VL] + + ##################################################################################### + ############################ Capability: HighAvailability ########################## + ##################################################################################### + tosca.capabilities.nfv.HA: + derived_from: tosca.capabilities.Root + valid_source_types: [tosca.nodes.nfv.VDU] + + ##################################################################################### + ############################ ASDC Capability: VirtualBindable ##################### + ##################################################################################### + org.openecomp.capabilities.nfv.vdu.VirtualBindable: + derived_from: tosca.capabilities.nfv.vdu.VirtualBindable + valid_source_types: [org.openecomp.resource.nfv.VDU] + + + + ##################################################################################### + ############################ ASDC Capability: VirtualLinkable ##################### + ##################################################################################### + org.openecomp.capabilities.nfv.VirtualLinkable: + derived_from: tosca.capabilities.Root + valid_source_types: [tosca.nodes.nfv.VL] + + + + ##################################################################################### + ######################Capability: Generic asdc capability ########################## + ##################################################################################### + org.openecomp.capabilities.Root: + derived_from: tosca.capabilities.Root + + ##################################################################################### + ############################ Capability: GENERIC ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.RoutingCapability: + derived_from: org.openecomp.capabilities.Root + properties: + routing_type: + type: string + description: some basic routing descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.vdu.RoutingCategoryVDU] + + ##################################################################################### + ############################ Capability: CE ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.CERouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: PE ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.PERouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: P ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.PRouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: BGP ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.BGPRouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: STATIC ROUTING ########################## + ##################################################################################### + org.openecomp.capabilities.nfv.StaticRouting: + derived_from: org.openecomp.capabilities.nfv.RoutingCapability + + ##################################################################################### + ############################ Capability: Network Address Translation ############### + ##################################################################################### + org.openecomp.capabilities.nfv.vnf.NetworkAddressTranslationCapability: + derived_from: org.openecomp.capabilities.Root + properties: + nat_type: + type: string + description: some basic NAT descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.vdu.NetworkAddressTranslationCategoryVDU] + + ##################################################################################### + ############################ Capability: Port Address Translation ############### + ##################################################################################### + org.openecomp.capabilities.nfv.vnf.PortAddressTranslationCapability: + derived_from: org.openecomp.capabilities.Root + properties: + pat_type: + type: string + description: some basic PAT descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.vdu.PortAddressTranslationCategoryVDU] + + ##################################################################################### + ############################ Capability: FIREWALL ############### + ##################################################################################### + org.openecomp.capabilities.nfv.vnf.FirewallCapability: + derived_from: org.openecomp.capabilities.Root + properties: + firewall_type: + type: string + description: some basic Firewall Capability descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.vdu.FirewallCategoryVDU] + + ##################################################################################### + ############################ Capability: DHCP ############### + ##################################################################################### + org.openecomp.capabilities.nfv.vnf.DHCPCapability: + derived_from: org.openecomp.capabilities.Root + properties: + dhcp_type: + type: string + description: some basic DHCP Capability descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.vdu.DHCPCategoryVDU] + + ##################################################################################### + ############################ Capability: DNS ############### + ##################################################################################### + org.openecomp.capabilities.nfv.vnf.DNSCapability: + derived_from: org.openecomp.capabilities.Root + properties: + dns_type: + type: string + description: some basic DNS Capability descriptor, if any??? + constraints: + - valid_values: [TBD1, TBDn] + #attributes: ??? + valid_source_types: [org.openecomp.resource.nfv.vdu.DNSCategoryVDU] + + ##################################################################################### + ############################ Capability: vCE Brocade ROUTING ################# DUMMY + ############## THIS IS CAPABILITY IS ONLY OFFERED BY SPECIFIC BROCADE VDU ########### + ##################################################################################### + org.openecomp.capabilities.nfv.VCE_Brocade_Routing: + derived_from: org.openecomp.capabilities.nfv.CERouting + valid_source_types: [org.openecomp.resource.nfv.vdu.VCE_Brocade_VDU] + + ##################################################################################### + ############################ Capability: OAM VLAn Connector ################# DUMMY + ############## THIS IS CAPABILITY IS ONLY OFFERED BY SPECIFIC Connector ########### + ##################################################################################### + org.openecomp.capabilities.nfv.OAM_VLAN_Connector: + derived_from: org.openecomp.capabilities.Root + valid_source_types: [org.openecomp.resource.nfv.cp.OAM_VLAN_Connector] + + ##################################################################################### + ############################ Capability: IPAG VLAn Connector ################# DUMMY + ############## THIS IS CAPABILITY IS ONLY OFFERED BY SPECIFIC Connector ########### + ##################################################################################### + org.openecomp.capabilities.nfv.IPAG_VLAN_Connector: + derived_from: org.openecomp.capabilities.Root + valid_source_types: [org.openecomp.resource.nfv.cp.IPAG_VLAN_Connector] + + ##################################################################################### + ############################ Capability: VPE VLAn Connector ################# DUMMY + ############## THIS IS CAPABILITY IS ONLY OFFERED BY SPECIFIC Connector ########### + ##################################################################################### + org.openecomp.capabilities.nfv.VPE_VLAN_Connector: + derived_from: org.openecomp.capabilities.Root + valid_source_types: [org.openecomp.resource.nfv.cp.VPE_VLAN_Connector] +
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/DBMS/DBMS.json b/asdc-tests/src/test/resources/CI/importResource/DBMS/DBMS.json new file mode 100644 index 0000000000..790a30ab42 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/DBMS/DBMS.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-DBMS.yml", + "contactId": "jh0003", + "name": "DBMS", + "description": "Represents a typical relational, SQL Database Management System software component or service.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Abstract" + } + ] + } +], + "tags": [ + "DBMS" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/DBMS/normative-types-new-DBMS.yml b/asdc-tests/src/test/resources/CI/importResource/DBMS/normative-types-new-DBMS.yml new file mode 100644 index 0000000000..28919d38e4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/DBMS/normative-types-new-DBMS.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.DBMS: + derived_from: tosca.nodes.SoftwareComponent + properties: + root_password: + type: string + required: false + description: the optional root password for the DBMS service + port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [ tosca.nodes.Database ] diff --git a/asdc-tests/src/test/resources/CI/importResource/DBMS/normative-types-new-DBMS.zip b/asdc-tests/src/test/resources/CI/importResource/DBMS/normative-types-new-DBMS.zip Binary files differnew file mode 100644 index 0000000000..84bddbce47 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/DBMS/normative-types-new-DBMS.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/blockStorage/blockStorage.json b/asdc-tests/src/test/resources/CI/importResource/blockStorage/blockStorage.json new file mode 100644 index 0000000000..72ef5c009b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/blockStorage/blockStorage.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-blockStorage.yml", + "contactId": "jh0003", + "name": "BlockStorage", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "objectStorage", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "BlockStorage" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/blockStorage/normative-types-new-blockStorage.yml b/asdc-tests/src/test/resources/CI/importResource/blockStorage/normative-types-new-blockStorage.yml new file mode 100644 index 0000000000..a82965215f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/blockStorage/normative-types-new-blockStorage.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.BlockStorage: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResource/blockStorage/normative-types-new-blockStorage.zip b/asdc-tests/src/test/resources/CI/importResource/blockStorage/normative-types-new-blockStorage.zip Binary files differnew file mode 100644 index 0000000000..f690e9d8ea --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/blockStorage/normative-types-new-blockStorage.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/capabilityTypes.yml b/asdc-tests/src/test/resources/CI/importResource/capabilityTypes.yml new file mode 100644 index 0000000000..58d661b17e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/capabilityTypes.yml @@ -0,0 +1,148 @@ +tosca.capabilities.Root: + description: The TOSCA root Capability Type all other TOSCA base Capability Types derive from +tosca.capabilities.Attachment: + derived_from: tosca.capabilities.Root +tosca.capabilities.Node: + derived_from: tosca.capabilities.Root +tosca.capabilities.Container: + derived_from: tosca.capabilities.Root + properties: + num_cpus: + type: integer + required: false + constraints: + - greater_or_equal: 1 + cpu_frequency: + type: scalar-unit.frequency + required: false + constraints: + - greater_or_equal: 0.1 GHz + disk_size: + type: scalar-unit.size + required: false + constraints: + - greater_or_equal: 0 MB + mem_size: + type: scalar-unit.size + required: false + constraints: + - greater_or_equal: 0 MB +tosca.capabilities.Endpoint: + derived_from: tosca.capabilities.Root + properties: + protocol: + type: string + default: tcp + port: + type: PortDef + required: false + secure: + type: boolean + default: false + url_path: + type: string + required: false + port_name: + type: string + required: false + network_name: + type: string + required: false + default: PRIVATE + initiator: + type: string + default: source + constraints: + - valid_values: [ source, target, peer ] + ports: + type: map + required: false + constraints: + - min_length: 1 + entry_schema: + type: PortSpec + attributes: + ip_address: + type: string +tosca.capabilities.DatabaseEndpoint: + derived_from: tosca.capabilities.Endpoint +tosca.capabilities.Endpoint.Public: + derived_from: tosca.capabilities.Endpoint + properties: + # Change the default network_name to use the first public network found + network_name: 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: + derived_from: tosca.capabilities.Endpoint + # Change Endpoint secure indicator to true from its default of false + properties: + secure: true +tosca.capabilities.Endpoint.Database: + derived_from: tosca.capabilities.Endpoint +tosca.capabilities.OperatingSystem: + derived_from: tosca.capabilities.Root + properties: + architecture: + type: string + required: false + type: + type: string + required: false + distribution: + type: string + required: false + version: + type: version + required: false +tosca.capabilities.Scalable: + derived_from: tosca.capabilities.Root + properties: + min_instances: + type: integer + default: 1 + max_instances: + type: integer + default: 1 + default_instances: + type: integer +tosca.capabilities.network.Bindable: + derived_from: tosca.capabilities.Node + + +tosca.capabilities.Container.Docker: + derived_from: tosca.capabilities.Container + properties: + version: + type: list + required: false + entry_schema: version + publish_all: + type: boolean + default: false + required: false + publish_ports: + type: list + entry_schema: PortSpec + required: false + expose_ports: + type: list + entry_schema: PortSpec + required: false + volumes: + type: list + entry_schema: string + required: false +tosca.capabilities.network.Linkable: + derived_from: tosca.capabilities.Root + + diff --git a/asdc-tests/src/test/resources/CI/importResource/capabilityTypes.zip b/asdc-tests/src/test/resources/CI/importResource/capabilityTypes.zip Binary files differnew file mode 100644 index 0000000000..50b66e61be --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/capabilityTypes.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/capabilityTypesCi.zip b/asdc-tests/src/test/resources/CI/importResource/capabilityTypesCi.zip Binary files differnew file mode 100644 index 0000000000..550cd756f4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/capabilityTypesCi.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/categoryTypes.yml b/asdc-tests/src/test/resources/CI/importResource/categoryTypes.yml new file mode 100644 index 0000000000..d88a326859 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/categoryTypes.yml @@ -0,0 +1,89 @@ +services: + Mobility: + name: "Mobility" + icons: ['mobility'] + Network_L1_3: + name: "Network L1-3" + icons: ['network_l_1-3'] + Network_L4: + name: "Network L4+" + icons: ['network_l_4'] + VoIP_Call_Control: + name: "VoIP Call Control" + icons: ['call_controll'] +resources: + NetworkLayer23: + name: "Network L2-3" + subcategories: + Router: + name: "Router" + icons: ['router','vRouter'] + Gateway: + name: "Gateway" + icons: ['gateway'] + WAN_Connectors: + name: "WAN Connectors" + icons: ['network','connector','port'] + LAN_Connectors: + name: "LAN Connectors" + icons: ['network','connector','port'] + Infrastructure: + name: "Infrastructure" + icons: ['ucpe'] + NetworkLayer4: + name: "Network L4+" + subcategories: + Common_Network_Resources: + name: "Common Network Resources" + icons: ['network'] + ApplicationLayer4: + name: "Application L4+" + subcategories: + Border_Element: + name: "Border Element" + icons: ['borderElement'] + Application_Server: + name: "Application Server" + icons: ['applicationServer'] + Web_Server: + name: "Web Server" + icons: ['applicationServer'] + Call_Control: + name: "Call Control" + icons: ['call_controll'] + Media_Servers: + name: "Media Servers" + icons: ['applicationServer'] + Load_Balancer: + name: "Load Balancer" + icons: ['loadBalancer'] + Database: + name: "Database" + icons: ['database'] + Firewall: + name: "Firewall" + icons: ['firewall'] + Generic: + name: "Generic" + subcategories: + Infrastructure: + name: "Infrastructure" + icons: ['connector'] + Abstract: + name: "Abstract" + icons: ['objectStorage', 'compute'] + Network_Elements: + name: "Network Elements" + icons: ['network', 'connector'] + Database: + name: "Database" + icons: ['database'] + NetworkConnectivity: + name: "Network Connectivity" + subcategories: + ConnectionPoints: + name: "Connection Points" + icons: ['cp'] + VirtualLinks: + name: "Virtual Links" + icons: ['vl']
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/categoryTypes.zip b/asdc-tests/src/test/resources/CI/importResource/categoryTypes.zip Binary files differnew file mode 100644 index 0000000000..29984b8a06 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/categoryTypes.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/compute/compute.json b/asdc-tests/src/test/resources/CI/importResource/compute/compute.json new file mode 100644 index 0000000000..48775d0f14 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/compute/compute.json @@ -0,0 +1,24 @@ +{ + "payloadName": "normative-types-new-compute.yml", + "contactId": "jh0003", + "name": "Compute", + "description": "Represents a real or virtual machine or server. Information specified on the Compute + node will be used to find the machine that fits the given requirements in the cloud + available machines. If no sizing information are specified the cloud provider default + machine will be used. It is strongly recommended to specify the required CPUs and memory + at least.", + "resourceIconPath": "compute", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "Compute" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/compute/normative-types-new-compute.yml b/asdc-tests/src/test/resources/CI/importResource/compute/normative-types-new-compute.yml new file mode 100644 index 0000000000..00b07fb908 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/compute/normative-types-new-compute.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.Compute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/importResource/compute/normative-types-new-compute.zip b/asdc-tests/src/test/resources/CI/importResource/compute/normative-types-new-compute.zip Binary files differnew file mode 100644 index 0000000000..f7a7c31bf0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/compute/normative-types-new-compute.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/containerApplication/containerApplication.json b/asdc-tests/src/test/resources/CI/importResource/containerApplication/containerApplication.json new file mode 100644 index 0000000000..1713e56cb4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/containerApplication/containerApplication.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-containerApplication.yml", + "contactId": "jh0003", + "name": "Application", + "description": "Represents an application that requires Container-level virtualization technology.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Abstract" + } + ] + } +], + "tags": [ + "Application" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/containerApplication/normative-types-new-containerApplication.yml b/asdc-tests/src/test/resources/CI/importResource/containerApplication/normative-types-new-containerApplication.yml new file mode 100644 index 0000000000..8813f26e04 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/containerApplication/normative-types-new-containerApplication.yml @@ -0,0 +1,9 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.Container.Application: + derived_from: tosca.nodes.Root + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Container + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResource/containerApplication/normative-types-new-containerApplication.zip b/asdc-tests/src/test/resources/CI/importResource/containerApplication/normative-types-new-containerApplication.zip Binary files differnew file mode 100644 index 0000000000..1da3bc1707 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/containerApplication/normative-types-new-containerApplication.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/containerRuntime/containerRuntime.json b/asdc-tests/src/test/resources/CI/importResource/containerRuntime/containerRuntime.json new file mode 100644 index 0000000000..233bf39bce --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/containerRuntime/containerRuntime.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-containerRuntime.yml", + "contactId": "jh0003", + "name": "Runtime", + "description": "Represents operating system-level virtualization technology used to run multiple application services on a single Compute host.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Abstract" + } + ] + } +], + "tags": [ + "Runtime" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/containerRuntime/normative-types-new-containerRuntime.yml b/asdc-tests/src/test/resources/CI/importResource/containerRuntime/normative-types-new-containerRuntime.yml new file mode 100644 index 0000000000..86a10a0185 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/containerRuntime/normative-types-new-containerRuntime.yml @@ -0,0 +1,9 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.Container.Runtime: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + host: + type: tosca.capabilities.Container + scalable: + type: tosca.capabilities.Scalable diff --git a/asdc-tests/src/test/resources/CI/importResource/containerRuntime/normative-types-new-containerRuntime.zip b/asdc-tests/src/test/resources/CI/importResource/containerRuntime/normative-types-new-containerRuntime.zip Binary files differnew file mode 100644 index 0000000000..5140472147 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/containerRuntime/normative-types-new-containerRuntime.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/database/database.json b/asdc-tests/src/test/resources/CI/importResource/database/database.json new file mode 100644 index 0000000000..0f09e278c0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/database/database.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-database.yml", + "contactId": "jh0003", + "name": "Database", + "description": "Represents a logical database that can be managed and hosted by a DBMS node.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Database" + } + ] + } +], + "tags": [ + "Database" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/database/normative-types-new-database.yml b/asdc-tests/src/test/resources/CI/importResource/database/normative-types-new-database.yml new file mode 100644 index 0000000000..5166150c73 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/database/normative-types-new-database.yml @@ -0,0 +1,27 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.Database: + derived_from: tosca.nodes.Root + properties: + name: + type: string + description: the logical name of the database + port: + type: integer + description: the port the underlying database service will listen to for data + user: + type: string + description: the optional user account name for DB administration + required: false + password: + type: string + description: the optional password for the DB user account + required: false + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.DBMS + relationship: tosca.relationships.HostedOn + capabilities: + database_endpoint: + type: tosca.capabilities.Endpoint.Database diff --git a/asdc-tests/src/test/resources/CI/importResource/database/normative-types-new-database.zip b/asdc-tests/src/test/resources/CI/importResource/database/normative-types-new-database.zip Binary files differnew file mode 100644 index 0000000000..9e8b178554 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/database/normative-types-new-database.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/deleteNormative.sh b/asdc-tests/src/test/resources/CI/importResource/deleteNormative.sh new file mode 100644 index 0000000000..fb70f71418 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/deleteNormative.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort>" +} + +function deleteResource() { + + ELEMENT_NAME=$1 + echo -e "############### Removing Element ${ELEMENT_NAME} Start ######################" + http_code=$(curl -s -o /dev/null -w "%{http_code}" -X "DELETE" -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/resources/res_${ELEMENT_NAME}".1.0") + if [ ${http_code} -eq 204 ]; then + echo -e "\n############### Removing Element ${ELEMENT_NAME} status code:${http_code} End #######\n\n\n" + elif [ ${http_code} -eq 500 ]; then + echo -e "\n############### Failed to remove Element ${ELEMENT_NAME} status code:${http_code} End #######\n\n\n" + exit 1 + elif [ ${http_code} -eq 404 ]; then + echo -e "\n############### Element ${ELEMENT_NAME} not found status code:${http_code} End #######\n\n\n" + else + echo -e "\n############### Failed to remove Element ${ELEMENT_NAME} status code:${http_code} End #######\n\n\n" + exit 1 + fi +} +if [ $# -lt 2 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 + +deleteResource "tosca.nodes.Root" +deleteResource "tosca.nodes.Compute" +deleteResource "tosca.nodes.SoftwareComponent" +deleteResource "tosca.nodes.WebServer" +deleteResource "tosca.nodes.WebApplication" +deleteResource "tosca.nodes.DBMS" +deleteResource "tosca.nodes.Database" +deleteResource "tosca.nodes.ObjectStorage" +deleteResource "tosca.nodes.BlockStorage" +deleteResource "tosca.nodes.Container.Runtime" +deleteResource "tosca.nodes.Container.Application" +deleteResource "tosca.nodes.LoadBalancer" +deleteResource "tosca.nodes.network.Port" +deleteResource "tosca.nodes.network.Network" + +exit 0 + diff --git a/asdc-tests/src/test/resources/CI/importResource/importNormative.sh b/asdc-tests/src/test/resources/CI/importResource/importNormative.sh new file mode 100644 index 0000000000..7c420ceb43 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/importNormative.sh @@ -0,0 +1,89 @@ +#!/bin/bash + +function usage { + echo "Usage: $0 <hostIp> <hostPort> <userId>" +} + +function addResource() { + + ELEMENT_NAME=$1 + echo -e "###################### Adding Element ${ELEMENT_NAME} Start ######################" + CURRENT_ZIP_FILE=./${ELEMENT_NAME}/normative-types-new-${ELEMENT_NAME}.zip + CURRENT_JSON_FILE=./${ELEMENT_NAME}/${ELEMENT_NAME}.json + sed -i 's/"userId": ".*",/"userId": "'${ATT_UID}'",/' ${CURRENT_JSON_FILE} + JSON_CONTENT=`paste -s ${CURRENT_JSON_FILE}` + http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F resourceMetadata="${JSON_CONTENT}" -F resourceZip=@${CURRENT_ZIP_FILE} -H USER_ID:${ATT_UID} ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/upload/multipart) + if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding Element ${ELEMENT_NAME} End ########################\n\n\n" + elif [ ${http_code} -eq 409 ]; then + echo -e "\n###################### Already exists Element ${ELEMENT_NAME} status code:${http_code} End ########################\n\n\n" + elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add Element ${ELEMENT_NAME} status code:${http_code} End ########################\n\n\n" + exit 1 + fi +} +if [ $# -lt 3 ] +then + usage + exit 2 +fi + +HOST_IP=$1 +HOST_PORT=$2 +ATT_UID=$3 + +#Add The CapabilityTypes +http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F capabilityTypeZip=@capabilityTypes.zip -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/uploadType/capability) +if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding The CapabilityTypes status code:${http_code} End ########################\n\n\n" +elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add CapabilityTypes status code:${http_code} End ########################\n\n\n" + exit 1 +else + echo -e "\n###################### Failed to add CapabilityTypes status code:${http_code} End ########################\n\n\n" + exit 1 +fi +#Add The InterfaceLifecycleTypes +http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F interfaceLifecycleTypeZip=@interfaceLifecycleTypes.zip -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/uploadType/interfaceLifecycle) +if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding The InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" +elif [ ${http_code} -eq 409 ]; then + echo -e "\n###################### Already exists InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" +elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + exit 1 +else + echo -e "\n###################### Failed to add InterfaceLifecycleTypes status code:${http_code} End ########################\n\n\n" + exit 1 +fi +#Add The CategoryTypes +http_code=$(curl -s -o /dev/null -w "%{http_code}" -v -F categoriesZip=@categoryTypes.zip -H "USER_ID: jh0003" ${HOST_IP}:${HOST_PORT}/sdc2/rest/v1/catalog/uploadType/categories) +if [ ${http_code} -eq 201 ]; then + echo -e "\n###################### Adding The CategoryTypes status code:${http_code} End ########################\n\n\n" +elif [ ${http_code} -eq 409 ]; then + echo -e "\n###################### Already exists CategoryTypes status code:${http_code} End ########################\n\n\n" +elif [ ${http_code} -eq 500 ]; then + echo -e "\n###################### Failed to add CategoryTypes status code:${http_code} End ########################\n\n\n" + exit 1 +else + echo -e "\n###################### Failed to add CategoryTypes status code:${http_code} End ########################\n\n\n" + exit 1 +fi + +addResource "root" +addResource "compute" +addResource "softwareComponent" +addResource "webServer" +addResource "webApplication" +addResource "DBMS" +addResource "database" +addResource "objectStorage" +addResource "blockStorage" +addResource "containerRuntime" +addResource "containerApplication" +addResource "loadBalancer" +addResource "port" +addResource "network" + +exit 0 + diff --git a/asdc-tests/src/test/resources/CI/importResource/interfaceLifecycleTypes.yml b/asdc-tests/src/test/resources/CI/importResource/interfaceLifecycleTypes.yml new file mode 100644 index 0000000000..1b67118934 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/interfaceLifecycleTypes.yml @@ -0,0 +1,11 @@ +tosca.interfaces.node.lifecycle.Standard: + 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.
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/interfaceLifecycleTypes.zip b/asdc-tests/src/test/resources/CI/importResource/interfaceLifecycleTypes.zip Binary files differnew file mode 100644 index 0000000000..9bcf93ab7d --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/interfaceLifecycleTypes.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/loadBalancer/loadBalancer.json b/asdc-tests/src/test/resources/CI/importResource/loadBalancer/loadBalancer.json new file mode 100644 index 0000000000..fbddc18c07 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/loadBalancer/loadBalancer.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-loadBalancer.yml", + "contactId": "jh0003", + "name": "LoadBalancer", + "description": "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).", + "resourceIconPath": "loadBalancer", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "LoadBalancer" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/loadBalancer/normative-types-new-loadBalancer.yml b/asdc-tests/src/test/resources/CI/importResource/loadBalancer/normative-types-new-loadBalancer.yml new file mode 100644 index 0000000000..86857656ad --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/loadBalancer/normative-types-new-loadBalancer.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.LoadBalancer: + derived_from: tosca.nodes.Root + properties: + # TBD + algorithm : + type: string + required: false + status: experimental + capabilities : + client: + type: tosca.capabilities.Endpoint.Public + description: the Floating (IP) client’s on the public network can connect to + requirements: + - application: + capability: tosca.capabilities.Endpoint + relationship: tosca.relationships.RoutesTo diff --git a/asdc-tests/src/test/resources/CI/importResource/loadBalancer/normative-types-new-loadBalancer.zip b/asdc-tests/src/test/resources/CI/importResource/loadBalancer/normative-types-new-loadBalancer.zip Binary files differnew file mode 100644 index 0000000000..fefed6f0f4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/loadBalancer/normative-types-new-loadBalancer.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/network/network.json b/asdc-tests/src/test/resources/CI/importResource/network/network.json new file mode 100644 index 0000000000..cf1eb03ff0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/network/network.json @@ -0,0 +1,21 @@ +{ + "payloadName": "normative-types-new-network.yml", + "contactId": "jh0003", + "name": "Network", + "description": "Represents a simple , logical network service.", + "resourceIconPath": "network", + "resourceType": "VL", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "Network" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/network/normative-types-new-network.yml b/asdc-tests/src/test/resources/CI/importResource/network/normative-types-new-network.yml new file mode 100644 index 0000000000..e1f9d3db70 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/network/normative-types-new-network.yml @@ -0,0 +1,41 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.Network: + derived_from: tosca.nodes.Root + properties: + ip_version: + type: integer + required: false + default: 4 + constraints: + - valid_values: [ 4, 6 ] + cidr: + type: string + required: false + start_ip: + type: string + required: false + end_ip: + type: string + required: false + gateway_ip: + type: string + required: false + network_name: + type: string + required: false + network_id: + type: string + required: false + segmentation_id: + type: string + required: false + network_type: + type: string + required: false + physical_network: + type: string + required: false + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/importResource/network/normative-types-new-network.zip b/asdc-tests/src/test/resources/CI/importResource/network/normative-types-new-network.zip Binary files differnew file mode 100644 index 0000000000..b10daebb2b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/network/normative-types-new-network.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/normative-port/normative-types-new-port.yml b/asdc-tests/src/test/resources/CI/importResource/normative-port/normative-types-new-port.yml new file mode 100644 index 0000000000..2d1540b27b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/normative-port/normative-types-new-port.yml @@ -0,0 +1,31 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.network.Port: + derived_from: tosca.nodes.Root + properties: + ip_address: + type: string + required: false + order: + type: integer + required: true + default: 0 + constraints: + - greater_or_equal: 0 + is_default: + type: boolean + required: false + default: false + ip_range_start: + type: string + required: false + ip_range_end: + type: string + required: false + 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/asdc-tests/src/test/resources/CI/importResource/normative-port/normative-types-new-port.zip b/asdc-tests/src/test/resources/CI/importResource/normative-port/normative-types-new-port.zip Binary files differnew file mode 100644 index 0000000000..f6903ea8ee --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/normative-port/normative-types-new-port.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/normative-port/port.json b/asdc-tests/src/test/resources/CI/importResource/normative-port/port.json new file mode 100644 index 0000000000..7b62d7ff0a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/normative-port/port.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-port.yml", + "contactId": "jh0003", + "name": "Port", + "description": "Represents a logical entity that associates between Compute and Network normative types.", + "resourceIconPath": "port", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Network Elements" + } + ] + } +], + "tags": [ + "Port" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/notmative-network/network.json b/asdc-tests/src/test/resources/CI/importResource/notmative-network/network.json new file mode 100644 index 0000000000..636499fba4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/notmative-network/network.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-network.yml", + "contactId": "jh0003", + "name": "Network", + "description": "Represents a simple , logical network service.", + "resourceIconPath": "network", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "Network" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/notmative-network/normative-types-new-network.yml b/asdc-tests/src/test/resources/CI/importResource/notmative-network/normative-types-new-network.yml new file mode 100644 index 0000000000..e92e87716f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/notmative-network/normative-types-new-network.yml @@ -0,0 +1,41 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.network.Network: + derived_from: tosca.nodes.Root + properties: + ip_version: + type: integer + required: false + default: 4 + constraints: + - valid_values: [ 4, 6 ] + cidr: + type: string + required: false + start_ip: + type: string + required: false + end_ip: + type: string + required: false + gateway_ip: + type: string + required: false + network_name: + type: string + required: false + network_id: + type: string + required: false + segmentation_id: + type: string + required: false + network_type: + type: string + required: false + physical_network: + type: string + required: false + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/importResource/notmative-network/normative-types-new-network.zip b/asdc-tests/src/test/resources/CI/importResource/notmative-network/normative-types-new-network.zip Binary files differnew file mode 100644 index 0000000000..79c5fb2573 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/notmative-network/normative-types-new-network.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/objectStorage/normative-types-new-objectStorage.yml b/asdc-tests/src/test/resources/CI/importResource/objectStorage/normative-types-new-objectStorage.yml new file mode 100644 index 0000000000..9c338c3400 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/objectStorage/normative-types-new-objectStorage.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.ObjectStorage: + derived_from: tosca.nodes.Root + properties: + name: + type: string + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 0 GB + maxsize: + type: scalar-unit.size + constraints: + - greater_or_equal: 0 GB + capabilities: + storage_endpoint: + type: tosca.capabilities.Endpoint diff --git a/asdc-tests/src/test/resources/CI/importResource/objectStorage/normative-types-new-objectStorage.zip b/asdc-tests/src/test/resources/CI/importResource/objectStorage/normative-types-new-objectStorage.zip Binary files differnew file mode 100644 index 0000000000..b9046c1a66 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/objectStorage/normative-types-new-objectStorage.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/objectStorage/objectStorage.json b/asdc-tests/src/test/resources/CI/importResource/objectStorage/objectStorage.json new file mode 100644 index 0000000000..247b468952 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/objectStorage/objectStorage.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-objectStorage.yml", + "contactId": "jh0003", + "name": "ObjectStorage", + "description": "Represents storage that provides the ability to store data as objects (or BLOBs of data) without consideration for the underlying filesystem or devices.", + "resourceIconPath": "objectStorage", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "ObjectStorage" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/port/normative-types-new-port.yml b/asdc-tests/src/test/resources/CI/importResource/port/normative-types-new-port.yml new file mode 100644 index 0000000000..7cd71360f2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/port/normative-types-new-port.yml @@ -0,0 +1,31 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.cp.Port: + derived_from: tosca.nodes.Root + properties: + ip_address: + type: string + required: false + order: + type: integer + required: true + default: 0 + constraints: + - greater_or_equal: 0 + is_default: + type: boolean + required: false + default: false + ip_range_start: + type: string + required: false + ip_range_end: + type: string + required: false + 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/asdc-tests/src/test/resources/CI/importResource/port/normative-types-new-port.zip b/asdc-tests/src/test/resources/CI/importResource/port/normative-types-new-port.zip Binary files differnew file mode 100644 index 0000000000..e1688a7304 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/port/normative-types-new-port.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/port/port.json b/asdc-tests/src/test/resources/CI/importResource/port/port.json new file mode 100644 index 0000000000..38106903e3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/port/port.json @@ -0,0 +1,21 @@ +{ + "payloadName": "normative-types-new-port.yml", + "contactId": "jh0003", + "name": "Port", + "description": "Represents a logical entity that associates between Compute and Network normative types.", + "resourceIconPath": "port", + "resourceType": "CP", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Network Elements" + } + ] + } +], + "tags": [ + "Port" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/root/normative-types-new-root.yml b/asdc-tests/src/test/resources/CI/importResource/root/normative-types-new-root.yml new file mode 100644 index 0000000000..e9b1de9518 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/root/normative-types-new-root.yml @@ -0,0 +1,23 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.Root: + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature: + type: tosca.capabilities.Node + requirements: + - dependency : + capability: tosca.capabilities.Node + node: tosca.nodes.Root + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + interfaces: + Standard: + type: tosca.interfaces.node.lifecycle.Standard diff --git a/asdc-tests/src/test/resources/CI/importResource/root/normative-types-new-root.zip b/asdc-tests/src/test/resources/CI/importResource/root/normative-types-new-root.zip Binary files differnew file mode 100644 index 0000000000..07583e89f5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/root/normative-types-new-root.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/root/root.json b/asdc-tests/src/test/resources/CI/importResource/root/root.json new file mode 100644 index 0000000000..53f709bdca --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/root/root.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-root.yml", + "contactId": "jh0003", + "name": "Root", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Abstract" + } + ] + } +], + "tags": [ + "Root" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/softwareComponent/normative-types-new-softwareComponent.yml b/asdc-tests/src/test/resources/CI/importResource/softwareComponent/normative-types-new-softwareComponent.yml new file mode 100644 index 0000000000..a154632c74 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/softwareComponent/normative-types-new-softwareComponent.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.SoftwareComponent: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResource/softwareComponent/normative-types-new-softwareComponent.zip b/asdc-tests/src/test/resources/CI/importResource/softwareComponent/normative-types-new-softwareComponent.zip Binary files differnew file mode 100644 index 0000000000..ea61eec01f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/softwareComponent/normative-types-new-softwareComponent.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/softwareComponent/softwareComponent.json b/asdc-tests/src/test/resources/CI/importResource/softwareComponent/softwareComponent.json new file mode 100644 index 0000000000..43012d7adc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/softwareComponent/softwareComponent.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-softwareComponent.yml", + "contactId": "jh0003", + "name": "SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Abstract" + } + ] + } +], + "tags": [ + "SoftwareComponent" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/webApplication/normative-types-new-webApplication.yml b/asdc-tests/src/test/resources/CI/importResource/webApplication/normative-types-new-webApplication.yml new file mode 100644 index 0000000000..5f9a775fe0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/webApplication/normative-types-new-webApplication.yml @@ -0,0 +1,15 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.WebApplication: + derived_from: tosca.nodes.Root + properties: + context_root: + type: string + capabilities: + app_endpoint: + type: tosca.capabilities.Endpoint + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.WebServer + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResource/webApplication/normative-types-new-webApplication.zip b/asdc-tests/src/test/resources/CI/importResource/webApplication/normative-types-new-webApplication.zip Binary files differnew file mode 100644 index 0000000000..516d9d9feb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/webApplication/normative-types-new-webApplication.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/webApplication/webApplication.json b/asdc-tests/src/test/resources/CI/importResource/webApplication/webApplication.json new file mode 100644 index 0000000000..fc25c6966b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/webApplication/webApplication.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-webApplication.yml", + "contactId": "jh0003", + "name": "WebApplication", + "description": "Represents a software application that can be managed and run by a Web Server node. Specific types of web applications such as Java, etc. could be derived from this type.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Abstract" + } + ] + } +], + "tags": [ + "WebApplication" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/webServer/normative-types-new-webServer.yml b/asdc-tests/src/test/resources/CI/importResource/webServer/normative-types-new-webServer.yml new file mode 100644 index 0000000000..7c957b5247 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/webServer/normative-types-new-webServer.yml @@ -0,0 +1,11 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.WebServer: + derived_from: tosca.nodes.SoftwareComponent + capabilities: + # Private, layer 4 endpoints + data_endpoint: tosca.capabilities.Endpoint + admin_endpoint: tosca.capabilities.Endpoint.Admin + host: + type: tosca.capabilities.Container + valid_source_types: [ tosca.nodes.WebApplication ]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResource/webServer/normative-types-new-webServer.zip b/asdc-tests/src/test/resources/CI/importResource/webServer/normative-types-new-webServer.zip Binary files differnew file mode 100644 index 0000000000..a88761fa5f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/webServer/normative-types-new-webServer.zip diff --git a/asdc-tests/src/test/resources/CI/importResource/webServer/webServer.json b/asdc-tests/src/test/resources/CI/importResource/webServer/webServer.json new file mode 100644 index 0000000000..bd74fb18f8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResource/webServer/webServer.json @@ -0,0 +1,20 @@ +{ + "payloadName": "normative-types-new-webServer.yml", + "contactId": "jh0003", + "name": "WebServer", + "description": "Represents an abstract software component or service that is capable of hosting and providing management operations for one or more Web Application nodes.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Abstract" + } + ] + } +], + "tags": [ + "WebServer" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/VSPPackage.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/VSPPackage.csar Binary files differnew file mode 100644 index 0000000000..b4aa77511b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/VSPPackage.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/caseSensitiveTest_1.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/caseSensitiveTest_1.csar Binary files differnew file mode 100644 index 0000000000..4b167cfa69 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/caseSensitiveTest_1.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/caseSensitiveTest_2.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/caseSensitiveTest_2.csar Binary files differnew file mode 100644 index 0000000000..1f7bc5ac8d --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/caseSensitiveTest_2.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/csars.zip b/asdc-tests/src/test/resources/CI/importResourceTests/csars/csars.zip Binary files differnew file mode 100644 index 0000000000..8a7f5de6e3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/csars.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/fiveLinesAsBlock0.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/fiveLinesAsBlock0.csar Binary files differnew file mode 100644 index 0000000000..870a777c66 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/fiveLinesAsBlock0.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion.csar Binary files differnew file mode 100644 index 0000000000..273fab3a0b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion2.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion2.csar Binary files differnew file mode 100644 index 0000000000..aa0027f48e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion2.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion3.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion3.csar Binary files differnew file mode 100644 index 0000000000..ce9a80b240 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion3.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion4.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion4.csar Binary files differnew file mode 100644 index 0000000000..88ccb448e7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion4.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion5.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion5.csar Binary files differnew file mode 100644 index 0000000000..a429110ea1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/invalidCsarVersion5.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile1.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile1.csar Binary files differnew file mode 100644 index 0000000000..3361bfd867 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile1.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile2.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile2.csar Binary files differnew file mode 100644 index 0000000000..200fbd95af --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile2.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile3.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile3.csar Binary files differnew file mode 100644 index 0000000000..5ffdf6c4c4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile3.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile4.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile4.csar Binary files differnew file mode 100644 index 0000000000..30da05f951 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile4.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile5.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile5.csar Binary files differnew file mode 100644 index 0000000000..e5a3fb862b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/longNamesInToscaMetaFile5.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/missingEntryDefintionPair.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/missingEntryDefintionPair.csar Binary files differnew file mode 100644 index 0000000000..63a58bcd27 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/missingEntryDefintionPair.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/missingOneLineInToscaMeta.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/missingOneLineInToscaMeta.csar Binary files differnew file mode 100644 index 0000000000..ac949ce734 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/missingOneLineInToscaMeta.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/mock_vf.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/mock_vf.csar Binary files differnew file mode 100644 index 0000000000..4b37f44c73 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/mock_vf.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/mock_vf2.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/mock_vf2.csar Binary files differnew file mode 100644 index 0000000000..ec1a65ebb9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/mock_vf2.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/moreThanOneMetaFile.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/moreThanOneMetaFile.csar Binary files differnew file mode 100644 index 0000000000..084ada11cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/moreThanOneMetaFile.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/moreThenOneYamlFile.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/moreThenOneYamlFile.csar Binary files differnew file mode 100644 index 0000000000..9615c62e73 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/moreThenOneYamlFile.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/noCSARVersion.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noCSARVersion.csar Binary files differnew file mode 100644 index 0000000000..65a21c12b8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noCSARVersion.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/noCreatedByValue.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noCreatedByValue.csar Binary files differnew file mode 100644 index 0000000000..cb08b19463 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noCreatedByValue.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/noEntryDefinitionsValue.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noEntryDefinitionsValue.csar Binary files differnew file mode 100644 index 0000000000..a3a0e8fd1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noEntryDefinitionsValue.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/noNewLineAfterBLock0.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noNewLineAfterBLock0.csar Binary files differnew file mode 100644 index 0000000000..4b37f44c73 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noNewLineAfterBLock0.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/noTOSCAMetaFileVersionValue.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noTOSCAMetaFileVersionValue.csar Binary files differnew file mode 100644 index 0000000000..c2f4d0442a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/noTOSCAMetaFileVersionValue.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/notContainYamlAndMetaFiles.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/notContainYamlAndMetaFiles.csar Binary files differnew file mode 100644 index 0000000000..74058d5f82 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/notContainYamlAndMetaFiles.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/notContainYamlFile.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/notContainYamlFile.csar Binary files differnew file mode 100644 index 0000000000..31cc2942d5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/notContainYamlFile.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/someValueAfterBlock0.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/someValueAfterBlock0.csar Binary files differnew file mode 100644 index 0000000000..e600a39693 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/someValueAfterBlock0.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaFolderNotExists.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaFolderNotExists.csar Binary files differnew file mode 100644 index 0000000000..17a7e5e39f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaFolderNotExists.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaMetaFileNotExists.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaMetaFileNotExists.csar Binary files differnew file mode 100644 index 0000000000..55e7179505 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaMetaFileNotExists.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaMetaOutsideTheFolder.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaMetaOutsideTheFolder.csar Binary files differnew file mode 100644 index 0000000000..53d6987ac7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/toscaMetaOutsideTheFolder.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/underscoreInsteadOfDash.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/underscoreInsteadOfDash.csar Binary files differnew file mode 100644 index 0000000000..c217dd5006 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/underscoreInsteadOfDash.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/validCsarVersion.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/validCsarVersion.csar Binary files differnew file mode 100644 index 0000000000..60ac6e3dd2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/validCsarVersion.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/valid_vf.csar b/asdc-tests/src/test/resources/CI/importResourceTests/csars/valid_vf.csar Binary files differnew file mode 100644 index 0000000000..01bf159071 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/valid_vf.csar diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/csars/valid_vf_zip.zip b/asdc-tests/src/test/resources/CI/importResourceTests/csars/valid_vf_zip.zip Binary files differnew file mode 100644 index 0000000000..66922ae15e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/csars/valid_vf_zip.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/empty_category.json b/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/empty_category.json new file mode 100644 index 0000000000..7ce1fd5e5f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/empty_category.json @@ -0,0 +1,22 @@ +{ + "payloadName": "normative-types-new-empty_category.yml", + "contactId": "adminid", + "name": "tosca.nodes.empty_category", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "tosca.nodes.empty_category" + ], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/normative-types-new-empty_category.yml b/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/normative-types-new-empty_category.yml new file mode 100644 index 0000000000..0ab5ac9322 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/normative-types-new-empty_category.yml @@ -0,0 +1,16 @@ +tosca.nodes.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/normative-types-new-empty_category.zip b/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/normative-types-new-empty_category.zip Binary files differnew file mode 100644 index 0000000000..537787f955 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_category/normative-types-new-empty_category.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/empty_contact.json b/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/empty_contact.json new file mode 100644 index 0000000000..6e043f5606 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/empty_contact.json @@ -0,0 +1,22 @@ +{ + "payloadName": "normative-types-new-empty_contact.yml", + "contactId": "", + "name": "tosca.nodes.empty_contact", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", +"categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "tosca.nodes.empty_contact" + ], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/normative-types-new-empty_contact.yml b/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/normative-types-new-empty_contact.yml new file mode 100644 index 0000000000..3d9c111871 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/normative-types-new-empty_contact.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_contact: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/normative-types-new-empty_contact.zip b/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/normative-types-new-empty_contact.zip Binary files differnew file mode 100644 index 0000000000..bee0ffef8f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_contact/normative-types-new-empty_contact.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/empty_desc.json b/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/empty_desc.json new file mode 100644 index 0000000000..7aa4c167b4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/empty_desc.json @@ -0,0 +1,22 @@ +{ + "payloadName": "normative-types-new-empty_desc.yml", + "contactId": "adminid", + "name": "tosca.nodes.empty_desc", + "description": "", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "tosca.nodes.empty_desc" + ], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/normative-types-new-empty_desc.yml b/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/normative-types-new-empty_desc.yml new file mode 100644 index 0000000000..0ab5ac9322 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/normative-types-new-empty_desc.yml @@ -0,0 +1,16 @@ +tosca.nodes.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/normative-types-new-empty_desc.zip b/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/normative-types-new-empty_desc.zip Binary files differnew file mode 100644 index 0000000000..c105c0989f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_desc/normative-types-new-empty_desc.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/empty_icon.json b/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/empty_icon.json new file mode 100644 index 0000000000..e1980cee79 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/empty_icon.json @@ -0,0 +1,22 @@ +{ + "payloadName": "normative-types-new-empty_icon.yml", + "contactId": "jh0003", + "name": "tosca.nodes.empty_icon", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "tosca.nodes.empty_icon" + ], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/normative-types-new-empty_icon.yml b/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/normative-types-new-empty_icon.yml new file mode 100644 index 0000000000..0ab5ac9322 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/normative-types-new-empty_icon.yml @@ -0,0 +1,16 @@ +tosca.nodes.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/normative-types-new-empty_icon.zip b/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/normative-types-new-empty_icon.zip Binary files differnew file mode 100644 index 0000000000..a500656ff7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_icon/normative-types-new-empty_icon.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/empty_payloadName.json b/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/empty_payloadName.json new file mode 100644 index 0000000000..2e46c69243 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/empty_payloadName.json @@ -0,0 +1,22 @@ +{ + "payloadName": "", + "contactId": "adminid", + "name": "tosca.nodes.empty_payloadName", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "tosca.nodes.empty_payloadName" + ], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/normative-types-new-empty_payloadName.yml b/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/normative-types-new-empty_payloadName.yml new file mode 100644 index 0000000000..0ab5ac9322 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/normative-types-new-empty_payloadName.yml @@ -0,0 +1,16 @@ +tosca.nodes.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/normative-types-new-empty_payloadName.zip b/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/normative-types-new-empty_payloadName.zip Binary files differnew file mode 100644 index 0000000000..901d2de441 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_payloadName/normative-types-new-empty_payloadName.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/empty_resource_name.json b/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/empty_resource_name.json new file mode 100644 index 0000000000..dff8e13ad5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/empty_resource_name.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-empty_resource_name.yml", + "contactId": "adminid", + "name": "", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["empty_resource_name"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/normative-types-new-empty_resource_name.yml b/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/normative-types-new-empty_resource_name.yml new file mode 100644 index 0000000000..bad0c73a1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/normative-types-new-empty_resource_name.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/normative-types-new-empty_resource_name.zip b/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/normative-types-new-empty_resource_name.zip Binary files differnew file mode 100644 index 0000000000..940a74ab05 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_resource_name/normative-types-new-empty_resource_name.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/empty_tag.json b/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/empty_tag.json new file mode 100644 index 0000000000..5028baa786 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/empty_tag.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-empty_tag.yml", + "contactId": "adminid", + "name": "tosca.nodes.empty_tag", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": [""], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/normative-types-new-empty_tag.yml b/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/normative-types-new-empty_tag.yml new file mode 100644 index 0000000000..bad0c73a1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/normative-types-new-empty_tag.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/normative-types-new-empty_tag.zip b/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/normative-types-new-empty_tag.zip Binary files differnew file mode 100644 index 0000000000..cd75d64a89 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/empty_tag/normative-types-new-empty_tag.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/import _multiple_tags.json b/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/import _multiple_tags.json new file mode 100644 index 0000000000..ec361827b0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/import _multiple_tags.json @@ -0,0 +1,18 @@ +{ + "payloadName": "normative-types-new-import _multiple_tags.yml", + "contactId": "adminid", + "name": "tosca.nodes.import _multiple_tags", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["tosca.nodes.import _multiple_tags", + "import _multiple_tags", + "import _multiple_tags2"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/normative-types-new-import _multiple_tags.yml b/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/normative-types-new-import _multiple_tags.yml new file mode 100644 index 0000000000..0ab5ac9322 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/normative-types-new-import _multiple_tags.yml @@ -0,0 +1,16 @@ +tosca.nodes.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/normative-types-new-import _multiple_tags.zip b/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/normative-types-new-import _multiple_tags.zip Binary files differnew file mode 100644 index 0000000000..1de1fac68c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/import _multiple_tags/normative-types-new-import _multiple_tags.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/importResource4test.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/importResource4test.json new file mode 100644 index 0000000000..c6a4b47903 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/importResource4test.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-importResource4test.yml", + "contactId": "jh0003", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["importResource4test"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/normative-types-new-importResource4test.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/normative-types-new-importResource4test.yml new file mode 100644 index 0000000000..bce6af3db4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/normative-types-new-importResource4test.yml @@ -0,0 +1,30 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.importResource4test: + derived_from: tosca.nodes.Root + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature2: + type: tosca.capabilities.Node + requirements: + - dependency2 : + capability: tosca.capabilities.Node + node: tosca.nodes.importResource4test + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + properties: + root_password: + type: string + required: false + description: the optional root password for the DBMS service + port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/normative-types-new-importResource4test.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/normative-types-new-importResource4test.zip Binary files differnew file mode 100644 index 0000000000..eb69428cf1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4test/normative-types-new-importResource4test.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/importResource4testCP.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/importResource4testCP.json new file mode 100644 index 0000000000..417d8a2854 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/importResource4testCP.json @@ -0,0 +1,17 @@ +{ + "payloadName": "normative-types-new-importResource4testCP.yml", + "contactId": "jh0003", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["importResource4test"], + "resourceType" : "VFC", + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/normative-types-new-importResource4testCP.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/normative-types-new-importResource4testCP.yml new file mode 100644 index 0000000000..fb0cef1068 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/normative-types-new-importResource4testCP.yml @@ -0,0 +1,30 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.CP.importResource4test: + derived_from: tosca.nodes.Root + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature2: + type: tosca.capabilities.Node + requirements: + - dependency2 : + capability: tosca.capabilities.Node + node: tosca.nodes.importResource4test + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + properties: + root_password: + type: string + required: false + description: the optional root password for the DBMS service + port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/normative-types-new-importResource4testCP.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/normative-types-new-importResource4testCP.zip Binary files differnew file mode 100644 index 0000000000..be77395250 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testCP/normative-types-new-importResource4testCP.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/importResource4testMissingNameSpace.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/importResource4testMissingNameSpace.json new file mode 100644 index 0000000000..3a14cfc1c8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/importResource4testMissingNameSpace.json @@ -0,0 +1,17 @@ +{ + "payloadName": "normative-types-new-importResource4testMissingNameSpace.yml", + "contactId": "jh0003", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["importResource4test"], + "resourceType" : "VFC", + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/normative-types-new-importResource4testMissingNameSpace.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/normative-types-new-importResource4testMissingNameSpace.yml new file mode 100644 index 0000000000..693ec75b51 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/normative-types-new-importResource4testMissingNameSpace.yml @@ -0,0 +1,30 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.vfc.importResource4test: + derived_from: tosca.nodes.Root + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature2: + type: tosca.capabilities.Node + requirements: + - dependency2 : + capability: tosca.capabilities.Node + node: tosca.nodes.importResource4test + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + properties: + root_password: + type: string + required: false + description: the optional root password for the DBMS service + port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/normative-types-new-importResource4testMissingNameSpace.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/normative-types-new-importResource4testMissingNameSpace.zip Binary files differnew file mode 100644 index 0000000000..3160c73fe7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testMissingNameSpace/normative-types-new-importResource4testMissingNameSpace.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/importResource4testUnknown.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/importResource4testUnknown.json new file mode 100644 index 0000000000..3059d99eec --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/importResource4testUnknown.json @@ -0,0 +1,17 @@ +{ + "payloadName": "normative-types-new-importResource4testUnknown.yml", + "contactId": "jh0003", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["importResource4test"], + "resourceType" : "VFC", + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/normative-types-new-importResource4testUnknown.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/normative-types-new-importResource4testUnknown.yml new file mode 100644 index 0000000000..115a61a12b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/normative-types-new-importResource4testUnknown.yml @@ -0,0 +1,30 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.Unknown.importResource4test: + derived_from: tosca.nodes.Root + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature2: + type: tosca.capabilities.Node + requirements: + - dependency2 : + capability: tosca.capabilities.Node + node: tosca.nodes.importResource4test + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + properties: + root_password: + type: string + required: false + description: the optional root password for the DBMS service + port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/normative-types-new-importResource4testUnknown.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/normative-types-new-importResource4testUnknown.zip Binary files differnew file mode 100644 index 0000000000..67b81c3d7f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUnknown/normative-types-new-importResource4testUnknown.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/importResource4testUpdateVendorNameAndCategory.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/importResource4testUpdateVendorNameAndCategory.json new file mode 100644 index 0000000000..4e9affe462 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/importResource4testUpdateVendorNameAndCategory.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-importResource4testUpdateVendorNameAndCategory.yml", + "contactId": "jh0003", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Network L2-3", + "subcategories": [{ + "name": "Router" + }] + }], + "tags": ["importResource4test"], + "vendorName": "ATT (Tosaaaaaaaaaaaaa)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/normative-types-new-importResource4testUpdateVendorNameAndCategory.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/normative-types-new-importResource4testUpdateVendorNameAndCategory.yml new file mode 100644 index 0000000000..69d88984ac --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/normative-types-new-importResource4testUpdateVendorNameAndCategory.yml @@ -0,0 +1,12 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.importResource4test: + derived_from: tosca.nodes.Root + description: update update + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/normative-types-new-importResource4testUpdateVendorNameAndCategory.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/normative-types-new-importResource4testUpdateVendorNameAndCategory.zip Binary files differnew file mode 100644 index 0000000000..a092a1c14b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateVendorNameAndCategory/normative-types-new-importResource4testUpdateVendorNameAndCategory.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/importResource4testUpdateWithoutReqCap.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/importResource4testUpdateWithoutReqCap.json new file mode 100644 index 0000000000..f6ab834378 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/importResource4testUpdateWithoutReqCap.json @@ -0,0 +1,17 @@ +{ + "payloadName": "normative-types-new-importResource4testUpdateWithoutReqCap.yml", + "contactId": "cs0004", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.Update", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["importResource4test", + "updatedTag"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.3.33" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/normative-types-new-importResource4testUpdateWithoutReqCap.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/normative-types-new-importResource4testUpdateWithoutReqCap.yml new file mode 100644 index 0000000000..a580e8b7c6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/normative-types-new-importResource4testUpdateWithoutReqCap.yml @@ -0,0 +1,12 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.importResource4test: + derived_from: tosca.nodes.Root + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/normative-types-new-importResource4testUpdateWithoutReqCap.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/normative-types-new-importResource4testUpdateWithoutReqCap.zip Binary files differnew file mode 100644 index 0000000000..3005f9231f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testUpdateWithoutReqCap/normative-types-new-importResource4testUpdateWithoutReqCap.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/importResource4testVF.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/importResource4testVF.json new file mode 100644 index 0000000000..6ebba43604 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/importResource4testVF.json @@ -0,0 +1,17 @@ +{ + "payloadName": "normative-types-new-importResource4testVF.yml", + "contactId": "jh0003", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["importResource4test"], + "resourceType" : "VFC", + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/normative-types-new-importResource4testVF.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/normative-types-new-importResource4testVF.yml new file mode 100644 index 0000000000..2879ab8cc8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/normative-types-new-importResource4testVF.yml @@ -0,0 +1,30 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vF.importResource4test: + derived_from: tosca.nodes.Root + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature2: + type: tosca.capabilities.Node + requirements: + - dependency2 : + capability: tosca.capabilities.Node + node: tosca.nodes.importResource4test + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + properties: + root_password: + type: string + required: false + description: the optional root password for the DBMS service + port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/normative-types-new-importResource4testVF.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/normative-types-new-importResource4testVF.zip Binary files differnew file mode 100644 index 0000000000..46c652fd24 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVF/normative-types-new-importResource4testVF.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/importResource4testVFC.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/importResource4testVFC.json new file mode 100644 index 0000000000..b5e2e329bd --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/importResource4testVFC.json @@ -0,0 +1,17 @@ +{ + "payloadName": "normative-types-new-importResource4testVFC.yml", + "contactId": "jh0003", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["importResource4test"], + "vendorName": "ATT (Tosca)", + "resourceType" : "VFC", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/normative-types-new-importResource4testVFC.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/normative-types-new-importResource4testVFC.yml new file mode 100644 index 0000000000..cdf347e872 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/normative-types-new-importResource4testVFC.yml @@ -0,0 +1,30 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.VFC.importResource4test: + derived_from: tosca.nodes.Root + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature2: + type: tosca.capabilities.Node + requirements: + - dependency2 : + capability: tosca.capabilities.Node + node: tosca.nodes.importResource4test + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + properties: + root_password: + type: string + required: false + description: the optional root password for the DBMS service + port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/normative-types-new-importResource4testVFC.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/normative-types-new-importResource4testVFC.zip Binary files differnew file mode 100644 index 0000000000..0ca8098ff9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVFC/normative-types-new-importResource4testVFC.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/importResource4testVL.json b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/importResource4testVL.json new file mode 100644 index 0000000000..158530a3e5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/importResource4testVL.json @@ -0,0 +1,17 @@ +{ + "payloadName": "normative-types-new-importResource4testVL.yml", + "contactId": "jh0003", + "resourceType" : "VFC", + "name": "importResource4test", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["importResource4test"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/normative-types-new-importResource4testVL.yml b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/normative-types-new-importResource4testVL.yml new file mode 100644 index 0000000000..55888da2bc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/normative-types-new-importResource4testVL.yml @@ -0,0 +1,30 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.Vl.importResource4test: + derived_from: tosca.nodes.Root + description: The TOSCA Node Type all other TOSCA base Node Types derive from + attributes: + tosca_id: + type: string + tosca_name: + type: string + state: + type: string + capabilities: + feature2: + type: tosca.capabilities.Node + requirements: + - dependency2 : + capability: tosca.capabilities.Node + node: tosca.nodes.importResource4test + relationship: tosca.relationships.DependsOn + occurrences: [ 0, UNBOUNDED ] + properties: + root_password: + type: string + required: false + description: the optional root password for the DBMS service + port: + type: integer + required: false + description: the port the DBMS service will listen to for data and requests diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/normative-types-new-importResource4testVL.zip b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/normative-types-new-importResource4testVL.zip Binary files differnew file mode 100644 index 0000000000..9a1a28b1f6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/importResource4testVL/normative-types-new-importResource4testVL.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypes.yml b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypes.yml new file mode 100644 index 0000000000..72fe26e0d1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypes.yml @@ -0,0 +1,141 @@ +tosca.capabilities.Root: + description: The TOSCA root Capability Type all other TOSCA base Capability Types derive from +tosca.capabilities.Node: + derived_from: tosca.capabilities.Root +tosca.capabilities.Container: + derived_from: tosca.capabilities.Root + properties: + num_cpus: + type: integer + required: false + constraints: + - greater_or_equal: 1 + cpu_frequency: + type: scalar-unit.frequency + required: false + constraints: + - greater_or_equal: 0.1 GHz + disk_size: + type: scalar-unit.size + required: false + constraints: + - greater_or_equal: 0 MB + mem_size: + type: scalar-unit.size + required: false + constraints: + - greater_or_equal: 0 MB +tosca.capabilities.Endpoint: + derived_from: tosca.capabilities.Root + properties: + protocol: + type: string + default: tcp + port: + type: PortDef + required: false + secure: + type: boolean + default: false + url_path: + type: string + required: false + port_name: + type: string + required: false + network_name: + type: string + required: false + default: PRIVATE + initiator: + type: string + default: source + constraints: + - valid_values: [ source, target, peer ] + ports: + type: map + required: false + constraints: + - min_length: 1 + entry_schema: + type: PortSpec + attributes: + ip_address: + type: string +tosca.capabilities.Endpoint.Public: + derived_from: tosca.capabilities.Endpoint + properties: + # Change the default network_name to use the first public network found + network_name: 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: + derived_from: tosca.capabilities.Endpoint + # Change Endpoint secure indicator to true from its default of false + properties: + secure: true +tosca.capabilities.Endpoint.Database: + derived_from: tosca.capabilities.Endpoint +tosca.capabilities.OperatingSystem: + derived_from: tosca.capabilities.Root + properties: + architecture: + type: string + required: false + type: + type: string + required: false + distribution: + type: string + required: false + version: + type: version + required: false +tosca.capabilities.Scalable: + derived_from: tosca.capabilities.Root + properties: + min_instances: + type: integer + default: 1 + max_instances: + type: integer + default: 1 + default_instances: + type: integer +tosca.capabilities.network.Bindable: + derived_from: tosca.capabilities.Node + + +tosca.capabilities.Container.Docker: + derived_from: tosca.capabilities.Container + properties: + version: + type: list + required: false + entry_schema: version + publish_all: + type: boolean + default: false + required: false + publish_ports: + type: list + entry_schema: PortSpec + required: false + expose_ports: + type: list + entry_schema: PortSpec + required: false + volumes: + type: list + entry_schema: string + required: false + diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypes.zip b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypes.zip Binary files differnew file mode 100644 index 0000000000..4f945a7d1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypes.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi.zip b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi.zip Binary files differnew file mode 100644 index 0000000000..550cd756f4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi_MissingDerivedFrom.yml b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi_MissingDerivedFrom.yml new file mode 100644 index 0000000000..31fac955e3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi_MissingDerivedFrom.yml @@ -0,0 +1,132 @@ +tosca.capabilities.Root: + description: The TOSCA root Capability Type all other TOSCA base Capability Types derive from +tosca.capabilities.Node: +tosca.capabilities.Container: + properties: + num_cpus: + type: integer + required: false + constraints: + - greater_or_equal: 1 + cpu_frequency: + type: scalar-unit.frequency + required: false + constraints: + - greater_or_equal: 0.1 GHz + disk_size: + type: scalar-unit.size + required: false + constraints: + - greater_or_equal: 0 MB + mem_size: + type: scalar-unit.size + required: false + constraints: + - greater_or_equal: 0 MB +tosca.capabilities.Test.Ci: +tosca.capabilities.Endpoint: + properties: + protocol: + type: string + default: tcp + port: + type: PortDef + required: false + secure: + type: boolean + default: false + url_path: + type: string + required: false + port_name: + type: string + required: false + network_name: + type: string + required: false + default: PRIVATE + initiator: + type: string + default: source + constraints: + - valid_values: [ source, target, peer ] + ports: + type: map + required: false + constraints: + - min_length: 1 + entry_schema: + type: PortSpec + attributes: + ip_address: + type: string +tosca.capabilities.Endpoint.Public: + properties: + # Change the default network_name to use the first public network found + network_name: 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: + # Change Endpoint secure indicator to true from its default of false + properties: + secure: true +tosca.capabilities.Endpoint.Database: +tosca.capabilities.OperatingSystem: + properties: + architecture: + type: string + required: false + type: + type: string + required: false + distribution: + type: string + required: false + version: + type: version + required: false +tosca.capabilities.Scalable: + properties: + min_instances: + type: integer + default: 1 + max_instances: + type: integer + default: 1 + default_instances: + type: integer +tosca.capabilities.network.Bindable: + + +tosca.capabilities.Container.Docker: + properties: + version: + type: list + required: false + entry_schema: version + publish_all: + type: boolean + default: false + required: false + publish_ports: + type: list + entry_schema: PortSpec + required: false + expose_ports: + type: list + entry_schema: PortSpec + required: false + volumes: + type: list + entry_schema: string + required: false + diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi_WithoutRoot.yml b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi_WithoutRoot.yml new file mode 100644 index 0000000000..12c7d5a977 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/import_capabilitiesTypes/capabilityTypesCi_WithoutRoot.yml @@ -0,0 +1,141 @@ +tosca.capabilities.Node: + derived_from: tosca.capabilities.Root +tosca.capabilities.Container: + derived_from: tosca.capabilities.Root + properties: + num_cpus: + type: integer + required: false + constraints: + - greater_or_equal: 1 + cpu_frequency: + type: scalar-unit.frequency + required: false + constraints: + - greater_or_equal: 0.1 GHz + disk_size: + type: scalar-unit.size + required: false + constraints: + - greater_or_equal: 0 MB + mem_size: + type: scalar-unit.size + required: false + constraints: + - greater_or_equal: 0 MB +tosca.capabilities.Test.Ci: + derived_from: tosca.capabilities.Root +tosca.capabilities.Endpoint: + derived_from: tosca.capabilities.Root + properties: + protocol: + type: string + default: tcp + port: + type: PortDef + required: false + secure: + type: boolean + default: false + url_path: + type: string + required: false + port_name: + type: string + required: false + network_name: + type: string + required: false + default: PRIVATE + initiator: + type: string + default: source + constraints: + - valid_values: [ source, target, peer ] + ports: + type: map + required: false + constraints: + - min_length: 1 + entry_schema: + type: PortSpec + attributes: + ip_address: + type: string +tosca.capabilities.Endpoint.Public: + derived_from: tosca.capabilities.Endpoint + properties: + # Change the default network_name to use the first public network found + network_name: 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: + derived_from: tosca.capabilities.Endpoint + # Change Endpoint secure indicator to true from its default of false + properties: + secure: true +tosca.capabilities.Endpoint.Database: + derived_from: tosca.capabilities.Endpoint +tosca.capabilities.OperatingSystem: + derived_from: tosca.capabilities.Root + properties: + architecture: + type: string + required: false + type: + type: string + required: false + distribution: + type: string + required: false + version: + type: version + required: false +tosca.capabilities.Scalable: + derived_from: tosca.capabilities.Root + properties: + min_instances: + type: integer + default: 1 + max_instances: + type: integer + default: 1 + default_instances: + type: integer +tosca.capabilities.network.Bindable: + derived_from: tosca.capabilities.Node + + +tosca.capabilities.Container.Docker: + derived_from: tosca.capabilities.Container + properties: + version: + type: list + required: false + entry_schema: version + publish_all: + type: boolean + default: false + required: false + publish_ports: + type: list + entry_schema: PortSpec + required: false + expose_ports: + type: list + entry_schema: PortSpec + required: false + volumes: + type: list + entry_schema: string + required: false + diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/missing_category.json b/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/missing_category.json new file mode 100644 index 0000000000..23a7d76103 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/missing_category.json @@ -0,0 +1,12 @@ +{ + "payloadName": "normative-types-new-missing_category.yml", + "contactId": "jh0003", + "name": "tosca.nodes.missing_category", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "tags": [ + "tosca.nodes.missing_category" + ], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/normative-types-new-missing_category.yml b/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/normative-types-new-missing_category.yml new file mode 100644 index 0000000000..bad0c73a1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/normative-types-new-missing_category.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/normative-types-new-missing_category.zip b/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/normative-types-new-missing_category.zip Binary files differnew file mode 100644 index 0000000000..51a01c1bb9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_category/normative-types-new-missing_category.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/missing_contact.json b/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/missing_contact.json new file mode 100644 index 0000000000..8f3e5ae2e2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/missing_contact.json @@ -0,0 +1,21 @@ +{ + "payloadName": "normative-types-new-missing_contact.yml", + "name": "tosca.nodes.missing_contact", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "tosca.nodes.missing_contact" + ], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/normative-types-new-missing_contact.yml b/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/normative-types-new-missing_contact.yml new file mode 100644 index 0000000000..3d9c111871 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/normative-types-new-missing_contact.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_contact: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/normative-types-new-missing_contact.zip b/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/normative-types-new-missing_contact.zip Binary files differnew file mode 100644 index 0000000000..21d14a9a73 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_contact/normative-types-new-missing_contact.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/missing_derived_from.json b/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/missing_derived_from.json new file mode 100644 index 0000000000..37a55bf17a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/missing_derived_from.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-missing_derived_from.yml", + "contactId": "jh0003", + "name": "tosca.nodes.missing_derived_from", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["tosca.nodes.missing_derived_from"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/normative-types-new-missing_derived_from.yml b/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/normative-types-new-missing_derived_from.yml new file mode 100644 index 0000000000..82069ecb7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/normative-types-new-missing_derived_from.yml @@ -0,0 +1,15 @@ +tosca.nodes.missing_userId: + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/normative-types-new-missing_derived_from.zip b/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/normative-types-new-missing_derived_from.zip Binary files differnew file mode 100644 index 0000000000..22e3d4da29 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_derived_from/normative-types-new-missing_derived_from.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/missing_desc.json b/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/missing_desc.json new file mode 100644 index 0000000000..bec3896cfd --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/missing_desc.json @@ -0,0 +1,15 @@ +{ + "payloadName": "normative-types-new-missing_desc.yml", + "contactId": "jh0003", + "name": "tosca.nodes.missing_desc", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["tosca.nodes.missing_desc"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/normative-types-new-missing_desc.yml b/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/normative-types-new-missing_desc.yml new file mode 100644 index 0000000000..bad0c73a1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/normative-types-new-missing_desc.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/normative-types-new-missing_desc.zip b/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/normative-types-new-missing_desc.zip Binary files differnew file mode 100644 index 0000000000..bd5174df62 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_desc/normative-types-new-missing_desc.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/missing_icon.json b/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/missing_icon.json new file mode 100644 index 0000000000..9e9b7572bc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/missing_icon.json @@ -0,0 +1,15 @@ +{ + "payloadName": "normative-types-new-missing_icon.yml", + "contactId": "jh0003", + "name": "tosca.nodes.missing_icon", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["tosca.nodes.missing_icon"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/normative-types-new-missing_icon.yml b/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/normative-types-new-missing_icon.yml new file mode 100644 index 0000000000..bad0c73a1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/normative-types-new-missing_icon.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/normative-types-new-missing_icon.zip b/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/normative-types-new-missing_icon.zip Binary files differnew file mode 100644 index 0000000000..45d8e192f1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_icon/normative-types-new-missing_icon.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/missing_payloadName.json b/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/missing_payloadName.json new file mode 100644 index 0000000000..58df0f7400 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/missing_payloadName.json @@ -0,0 +1,15 @@ +{ + "contactId": "jh0003", + "name": "tosca.nodes.missing_payloadName", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["tosca.nodes.missing_payloadName"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/normative-types-new-missing_payloadName.yml b/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/normative-types-new-missing_payloadName.yml new file mode 100644 index 0000000000..bad0c73a1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/normative-types-new-missing_payloadName.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/normative-types-new-missing_payloadName.zip b/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/normative-types-new-missing_payloadName.zip Binary files differnew file mode 100644 index 0000000000..3a72360c25 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_payloadName/normative-types-new-missing_payloadName.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/missing_resource_name.json b/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/missing_resource_name.json new file mode 100644 index 0000000000..dbf7ef82f1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/missing_resource_name.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-missing_resource_name.yml", + "contactId": "jh0003", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "category": "Generic/Infrastructure", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["missing_resource_name"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/normative-types-new-missing_resource_name.yml b/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/normative-types-new-missing_resource_name.yml new file mode 100644 index 0000000000..bad0c73a1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/normative-types-new-missing_resource_name.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/normative-types-new-missing_resource_name.zip b/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/normative-types-new-missing_resource_name.zip Binary files differnew file mode 100644 index 0000000000..24294b9647 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_resource_name/normative-types-new-missing_resource_name.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/missing_tags.json b/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/missing_tags.json new file mode 100644 index 0000000000..36c845f001 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/missing_tags.json @@ -0,0 +1,15 @@ +{ + "payloadName": "normative-types-new-missing_tags.yml", + "contactId": "jh0003", + "name": "tosca.nodes.missing_tags", + "description": "Represents a server-local block storage device (i.e., not shared) offering evenly sized blocks of data from which raw storage volumes can be created.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/normative-types-new-missing_tags.yml b/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/normative-types-new-missing_tags.yml new file mode 100644 index 0000000000..bad0c73a1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/normative-types-new-missing_tags.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.missing_userId: + derived_from: tosca.nodes.Root + properties: + size: + type: scalar-unit.size + constraints: + - greater_or_equal: 1 MB + volume_id: + type: string + required: false + snapshot_id: + type: string + required: false + capabilities: + attachment: + type: tosca.capabilities.Attachment diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/normative-types-new-missing_tags.zip b/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/normative-types-new-missing_tags.zip Binary files differnew file mode 100644 index 0000000000..1d619e8c93 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/missing_tags/normative-types-new-missing_tags.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/myCompute.json b/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/myCompute.json new file mode 100644 index 0000000000..af216b7c21 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/myCompute.json @@ -0,0 +1,24 @@ +{ + "payloadName": "normative-types-new-myCompute.yml", + "contactId": "jh0003", + "name": "tosca.nodes.MyCompute", + "description": "Represents a real or virtual machine or server. Information specified on the Compute + node will be used to find the machine that fits the given requirements in the cloud + available machines. If no sizing information are specified the cloud provider default + machine will be used. It is strongly recommended to specify the required CPUs and memory + at least.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "tosca.nodes.MyCompute" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/normative-types-new-myCompute.yml b/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/normative-types-new-myCompute.yml new file mode 100644 index 0000000000..dff93f621a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/normative-types-new-myCompute.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + tosca.nodes.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/normative-types-new-myCompute.zip b/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/normative-types-new-myCompute.zip Binary files differnew file mode 100644 index 0000000000..a4fb8979fc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/myCompute/normative-types-new-myCompute.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/normative-types-new-portInvalidDefaultValue.yml b/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/normative-types-new-portInvalidDefaultValue.yml new file mode 100644 index 0000000000..eccfd4ddc5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/normative-types-new-portInvalidDefaultValue.yml @@ -0,0 +1,29 @@ +tosca.nodes.network.PortInvalidDefaultValue: + derived_from: tosca.nodes.Root + properties: + ip_address: + type: string + required: false + order: + type: integer + required: true + default: 1.5 + constraints: + - greater_or_equal: 0 + is_default: + type: boolean + required: false + default: false + ip_range_start: + type: string + required: false + ip_range_end: + type: string + required: false + 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/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/normative-types-new-portInvalidDefaultValue.zip b/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/normative-types-new-portInvalidDefaultValue.zip Binary files differnew file mode 100644 index 0000000000..fed020cdd3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/normative-types-new-portInvalidDefaultValue.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/portInvalidDefaultValue.json b/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/portInvalidDefaultValue.json new file mode 100644 index 0000000000..6b6e064a30 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/portInvalidDefaultValue/portInvalidDefaultValue.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-portInvalidDefaultValue.yml", + "contactId": "jh0003", + "name": "tosca.nodes.network.PortInvalidDefaultValue", + "description": "Represents a logical entity that associates between Compute and Network normative types.", + "resourceIconPath": "port", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Network Elements" + }] + }], + "tags": ["tosca.nodes.network.PortInvalidDefaultValue"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/normative-types-new-userCompute.yml b/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/normative-types-new-userCompute.yml new file mode 100644 index 0000000000..de109820a9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/normative-types-new-userCompute.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.Compute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/normative-types-new-userCompute.zip b/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/normative-types-new-userCompute.zip Binary files differnew file mode 100644 index 0000000000..bda162b32f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/normative-types-new-userCompute.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/userCompute.json b/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/userCompute.json new file mode 100644 index 0000000000..ab10c0b523 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/userCompute/userCompute.json @@ -0,0 +1,26 @@ +{ + "payloadName": "normative-types-new-userCompute.yml", + "contactId": "jh0003", + "name": "tosca.nodes.userCompute", + "description": "Represents a real or virtual machine or server. Information specified on the Compute + node will be used to find the machine that fits the given requirements in the cloud + available machines. If no sizing information are specified the cloud provider default + machine will be used. It is strongly recommended to specify the required CPUs and memory + at least.", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "tags": [ + "tosca.nodes.userCompute" + ], + "vendorName": "UserVendor", + "vendorRelease": "1.1.1" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/normative-types-new-userUpdateCompute.yml b/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/normative-types-new-userUpdateCompute.yml new file mode 100644 index 0000000000..5c73365640 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/normative-types-new-userUpdateCompute.yml @@ -0,0 +1,29 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.Compute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/normative-types-new-userUpdateCompute.zip b/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/normative-types-new-userUpdateCompute.zip Binary files differnew file mode 100644 index 0000000000..3ecead7579 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/normative-types-new-userUpdateCompute.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/userUpdateCompute.json b/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/userUpdateCompute.json new file mode 100644 index 0000000000..6e63c434fb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/userUpdateCompute/userUpdateCompute.json @@ -0,0 +1,22 @@ +{ + "payloadName": "normative-types-new-userUpdateCompute.yml", + "contactId": "jh0003", + "name": "tosca.nodes.userCompute", + "description": "Short description", + "resourceIconPath": "defaulticon", + "categories": [ + { + "name": "Generic", + "subcategories": [ + { + "name": "Infrastructure" + } + ] + } +], + "vendorName": "UpdatedVendor", + "vendorRelease": "1.1.2", + "tags": [ + "tosca.nodes.userCompute" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/normative-types-new-validateProporties_happyScenarios.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/normative-types-new-validateProporties_happyScenarios.yml new file mode 100644 index 0000000000..af70663fbe --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/normative-types-new-validateProporties_happyScenarios.yml @@ -0,0 +1,39 @@ +validateProporties_happyScenarios: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test1: + type: boolean + required: false + default: true + validation_test2: + type: boolean + required: false + default: false + validation_test3: + type: integer + required: false + default: 1234 + validation_test4: + type: float + required: false + default: 123.123 + validation_test5: + type: string + required: false + default: cooolString + validation_test6: + type: scalar-unit.size + required: false + default: cooolString + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/normative-types-new-validateProporties_happyScenarios.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/normative-types-new-validateProporties_happyScenarios.zip Binary files differnew file mode 100644 index 0000000000..4104dc3618 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/normative-types-new-validateProporties_happyScenarios.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/validateProporties_happyScenarios.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/validateProporties_happyScenarios.json new file mode 100644 index 0000000000..1235ba57e6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_happyScenarios/validateProporties_happyScenarios.json @@ -0,0 +1,14 @@ +{ + "payloadName": "normative-types-new-validateProporties_happyScenarios.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Infrastructure" + }] + }], + "tags": ["tosca.nodes.SoftwareComponent"] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/normative-types-new-validateProporties_typeBoolean_valueInit.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/normative-types-new-validateProporties_typeBoolean_valueInit.yml new file mode 100644 index 0000000000..14778745ef --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/normative-types-new-validateProporties_typeBoolean_valueInit.yml @@ -0,0 +1,21 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeBoolean_valueInit: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: boolean + required: false + default: 123456 + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/normative-types-new-validateProporties_typeBoolean_valueInit.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/normative-types-new-validateProporties_typeBoolean_valueInit.zip Binary files differnew file mode 100644 index 0000000000..6eb2d7e7af --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/normative-types-new-validateProporties_typeBoolean_valueInit.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/validateProporties_typeBoolean_valueInit.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/validateProporties_typeBoolean_valueInit.json new file mode 100644 index 0000000000..c4f4b37911 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueInit/validateProporties_typeBoolean_valueInit.json @@ -0,0 +1,14 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeBoolean_valueInit.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": ["tosca.nodes.SoftwareComponent"] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/normative-types-new-validateProporties_typeBoolean_valueString.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/normative-types-new-validateProporties_typeBoolean_valueString.yml new file mode 100644 index 0000000000..4d529ad285 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/normative-types-new-validateProporties_typeBoolean_valueString.yml @@ -0,0 +1,21 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeBoolean_valueString: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: boolean + required: false + default: abcd + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/normative-types-new-validateProporties_typeBoolean_valueString.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/normative-types-new-validateProporties_typeBoolean_valueString.zip Binary files differnew file mode 100644 index 0000000000..538ba0e3ef --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/normative-types-new-validateProporties_typeBoolean_valueString.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/validateProporties_typeBoolean_valueString.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/validateProporties_typeBoolean_valueString.json new file mode 100644 index 0000000000..f1ff279a84 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeBoolean_valueString/validateProporties_typeBoolean_valueString.json @@ -0,0 +1,14 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeBoolean_valueString.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": ["tosca.nodes.SoftwareComponent"] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/normative-types-new-validateProporties_typeFloat_valueBoolean.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/normative-types-new-validateProporties_typeFloat_valueBoolean.yml new file mode 100644 index 0000000000..fee8c9b68e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/normative-types-new-validateProporties_typeFloat_valueBoolean.yml @@ -0,0 +1,21 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeFloat_valueBoolean: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: float + required: false + default: true + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/normative-types-new-validateProporties_typeFloat_valueBoolean.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/normative-types-new-validateProporties_typeFloat_valueBoolean.zip Binary files differnew file mode 100644 index 0000000000..a577aeb1e3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/normative-types-new-validateProporties_typeFloat_valueBoolean.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/validateProporties_typeFloat_valueBoolean.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/validateProporties_typeFloat_valueBoolean.json new file mode 100644 index 0000000000..f1769769d4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueBoolean/validateProporties_typeFloat_valueBoolean.json @@ -0,0 +1,14 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeFloat_valueBoolean.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": ["tosca.nodes.SoftwareComponent"] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/normative-types-new-validateProporties_typeFloat_valueString.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/normative-types-new-validateProporties_typeFloat_valueString.yml new file mode 100644 index 0000000000..88e5bb85c3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/normative-types-new-validateProporties_typeFloat_valueString.yml @@ -0,0 +1,21 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeFloat_valueString: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: float + required: false + default: abcd + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/normative-types-new-validateProporties_typeFloat_valueString.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/normative-types-new-validateProporties_typeFloat_valueString.zip Binary files differnew file mode 100644 index 0000000000..a9ec4d791e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/normative-types-new-validateProporties_typeFloat_valueString.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/validateProporties_typeFloat_valueString.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/validateProporties_typeFloat_valueString.json new file mode 100644 index 0000000000..3eab4bb311 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeFloat_valueString/validateProporties_typeFloat_valueString.json @@ -0,0 +1,14 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeFloat_valueString.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": ["tosca.nodes.SoftwareComponent"] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/normative-types-new-validateProporties_typeInit_valueBoolean.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/normative-types-new-validateProporties_typeInit_valueBoolean.yml new file mode 100644 index 0000000000..69bd3ba41e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/normative-types-new-validateProporties_typeInit_valueBoolean.yml @@ -0,0 +1,21 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeInit_valueBoolean: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: integer + required: false + default: true + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/normative-types-new-validateProporties_typeInit_valueBoolean.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/normative-types-new-validateProporties_typeInit_valueBoolean.zip Binary files differnew file mode 100644 index 0000000000..9e76fbee46 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/normative-types-new-validateProporties_typeInit_valueBoolean.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/validateProporties_typeInit_valueBoolean.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/validateProporties_typeInit_valueBoolean.json new file mode 100644 index 0000000000..bb145d2f28 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueBoolean/validateProporties_typeInit_valueBoolean.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeInit_valueBoolean.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": [ + "tosca.nodes.SoftwareComponent" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/normative-types-new-validateProporties_typeInit_valueFloat.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/normative-types-new-validateProporties_typeInit_valueFloat.yml new file mode 100644 index 0000000000..60ae3b6333 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/normative-types-new-validateProporties_typeInit_valueFloat.yml @@ -0,0 +1,21 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeInit_valueFloat: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: integer + required: false + default: 0.123 + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/normative-types-new-validateProporties_typeInit_valueFloat.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/normative-types-new-validateProporties_typeInit_valueFloat.zip Binary files differnew file mode 100644 index 0000000000..91b69dd746 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/normative-types-new-validateProporties_typeInit_valueFloat.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/validateProporties_typeInit_valueFloat.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/validateProporties_typeInit_valueFloat.json new file mode 100644 index 0000000000..2e7f5f232a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueFloat/validateProporties_typeInit_valueFloat.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeInit_valueFloat.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": [ + "tosca.nodes.SoftwareComponent" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/normative-types-new-validateProporties_typeInit_valueString.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/normative-types-new-validateProporties_typeInit_valueString.yml new file mode 100644 index 0000000000..7bd723e915 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/normative-types-new-validateProporties_typeInit_valueString.yml @@ -0,0 +1,21 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeInit_valueString: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: integer + required: false + default: abcd + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/normative-types-new-validateProporties_typeInit_valueString.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/normative-types-new-validateProporties_typeInit_valueString.zip Binary files differnew file mode 100644 index 0000000000..747e215071 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/normative-types-new-validateProporties_typeInit_valueString.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/validateProporties_typeInit_valueString.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/validateProporties_typeInit_valueString.json new file mode 100644 index 0000000000..29e4b29be0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeInit_valueString/validateProporties_typeInit_valueString.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeInit_valueString.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": [ + "tosca.nodes.SoftwareComponent" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/normative-types-new-validateProporties_typeList_valueUrlCredential.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/normative-types-new-validateProporties_typeList_valueUrlCredential.yml new file mode 100644 index 0000000000..217f3405e2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/normative-types-new-validateProporties_typeList_valueUrlCredential.yml @@ -0,0 +1,50 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeList_valueUrlCredential: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: list + required: false + default: + - protocol: protocol1~!#@~$%^*()[];:'"|\/ + token: token1 + - protocol: protocol2~!#@~$%^*()[];:'"|\/ + token: token2 + entry_schema: + type: tosca.datatypes.Credential + attributes: + validation_test_list: + type: list + required: false + default: + - protocol: protocol1~!#@~$%^*()[];:'"|\/ + token: token1 + - protocol: protocol2~!#@~$%^*()[];:'"|\/ + token: token2 + entry_schema: + type: tosca.datatypes.Credential + validation_test_map: + type: map + required: false + default: + key1: + protocol: protocol1~!#@~$%^*()[];:'"|\/ + token: token1 + key2: + protocol: protocol2~!#@~$%^*()[];:'"|\/ + token: token2 + entry_schema: + type: tosca.datatypes.Credential + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/normative-types-new-validateProporties_typeList_valueUrlCredential.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/normative-types-new-validateProporties_typeList_valueUrlCredential.zip Binary files differnew file mode 100644 index 0000000000..10b1ce10ac --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/normative-types-new-validateProporties_typeList_valueUrlCredential.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/validateProporties_typeList_valueUrlCredential.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/validateProporties_typeList_valueUrlCredential.json new file mode 100644 index 0000000000..59d6bbff21 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeList_valueUrlCredential/validateProporties_typeList_valueUrlCredential.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeList_valueUrlCredential.yml", + "contactId": "jh0003", + "name": "resourceListValueCredential", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": ["resourceListValueCredential"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/normative-types-new-validateProporties_typeMap_valueUrlCredential.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/normative-types-new-validateProporties_typeMap_valueUrlCredential.yml new file mode 100644 index 0000000000..2ce14b21a9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/normative-types-new-validateProporties_typeMap_valueUrlCredential.yml @@ -0,0 +1,29 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_typeMap_valueUrlCredential: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: map + required: false + default: + key1: + protocol: protocol1 + token: token1 + key2: + protocol: protocol2 + token: token2 + entry_schema: + type: tosca.datatypes.Credential + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/normative-types-new-validateProporties_typeMap_valueUrlCredential.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/normative-types-new-validateProporties_typeMap_valueUrlCredential.zip Binary files differnew file mode 100644 index 0000000000..9a8f093d95 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/normative-types-new-validateProporties_typeMap_valueUrlCredential.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/validateProporties_typeMap_valueUrlCredential.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/validateProporties_typeMap_valueUrlCredential.json new file mode 100644 index 0000000000..3fb0bec243 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeMap_valueUrlCredential/validateProporties_typeMap_valueUrlCredential.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeMap_valueUrlCredential.yml", + "contactId": "jh0003", + "name": "resourceMapValueCredential", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": ["resourceMapValueCredential"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_special_chars/normative-types-new-validateProporties_typeString_valueString_special_chars.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_special_chars/normative-types-new-validateProporties_typeString_valueString_special_chars.yml new file mode 100644 index 0000000000..cc109d1528 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_special_chars/normative-types-new-validateProporties_typeString_valueString_special_chars.yml @@ -0,0 +1,19 @@ +validateProporties_typeString_valueString_special_chars: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: string + required: false + default: ~!#@~ + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_special_chars/validateProporties_typeString_valueString_special_chars.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_special_chars/validateProporties_typeString_valueString_special_chars.json new file mode 100644 index 0000000000..90f66e800e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_special_chars/validateProporties_typeString_valueString_special_chars.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeString_valueString_special_chars.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": [ + "tosca.nodes.SoftwareComponent" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_trimming/normative-types-new-validateProporties_typeString_valueString_trimming.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_trimming/normative-types-new-validateProporties_typeString_valueString_trimming.yml new file mode 100644 index 0000000000..4ecd161682 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_trimming/normative-types-new-validateProporties_typeString_valueString_trimming.yml @@ -0,0 +1,19 @@ +validateProporties_typeBoolean_valueInit: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + validation_test: + type: boolean + required: false + default: true + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_trimming/validateProporties_typeString_valueString_trimming.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_trimming/validateProporties_typeString_valueString_trimming.json new file mode 100644 index 0000000000..34d9321b7e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeString_valueString_trimming/validateProporties_typeString_valueString_trimming.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeBoolean_valueInit.yml", + "contactId": "jh0003", + "name": "tosca.nodes.SoftwareComponent", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": [ + "tosca.nodes.SoftwareComponent" + ] +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/normative-types-new-validateProporties_typeMap.yml b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/normative-types-new-validateProporties_typeMap.yml new file mode 100644 index 0000000000..feb13b367f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/normative-types-new-validateProporties_typeMap.yml @@ -0,0 +1,32 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.validateProporties_type: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + myprop: + type: tosca.datatypes.network.PortInfoComplex + default: + addressesMap: + key1: + protocol: protocol1 + token: token1 + key2: + protocol: protocol2 + token: token2 + addressesList: + - protocol: protocol1~!#@~$%^*()[];:'"|\/ + token: token1 + - protocol: protocol2~!#@~$%^*()[];:'"|\/ + token: token2 + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.Compute + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/normative-types-new-validateProporties_typeMap.zip b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/normative-types-new-validateProporties_typeMap.zip Binary files differnew file mode 100644 index 0000000000..e8f0470948 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/normative-types-new-validateProporties_typeMap.zip diff --git a/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/validateProporties_typeTestDataType.json b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/validateProporties_typeTestDataType.json new file mode 100644 index 0000000000..b751545f11 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importResourceTests/validateProporties_typeTestDataType/validateProporties_typeTestDataType.json @@ -0,0 +1,16 @@ +{ + "payloadName": "normative-types-new-validateProporties_typeMap.yml", + "contactId": "jh0003", + "name": "resourceMapValueTest", + "description": "Represents a generic software component that can be managed and run by a Compute Node Type.", + "resourceIconPath": "defaulticon", + "categories": [{ + "name": "Generic", + "subcategories": [{ + "name": "Abstract" + }] + }], + "tags": ["resourceMapValueTest"], + "vendorName": "ATT (Tosca)", + "vendorRelease": "1.0.0.wd03" +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importTypesTest/categoryTypesTest.yml b/asdc-tests/src/test/resources/CI/importTypesTest/categoryTypesTest.yml new file mode 100644 index 0000000000..120f33d5f1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importTypesTest/categoryTypesTest.yml @@ -0,0 +1,23 @@ +services: + Mobility: + name: "Mobility1" + icons: ['mobility'] + Network_L1_3: + name: "Network L1-31" + icons: ['network_l_1-3'] +resources: + NetworkLayer23: + name: "Network Layer 2-31" + subcategories: + Router: + name: "Router" + icons: ['router'] + Gateway: + name: "Gateway" + icons: ['gateway'] + WAN_Connectors: + name: "WAN Connectors" + icons: ['connector'] + LAN_Connectors: + name: "LAN Connectors" + icons: ['connector'] diff --git a/asdc-tests/src/test/resources/CI/importTypesTest/categoryTypesTest.zip b/asdc-tests/src/test/resources/CI/importTypesTest/categoryTypesTest.zip Binary files differnew file mode 100644 index 0000000000..68b7aa9114 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importTypesTest/categoryTypesTest.zip diff --git a/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack1/myHeatStack1.yml b/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack1/myHeatStack1.yml new file mode 100644 index 0000000000..484ed4dff6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack1/myHeatStack1.yml @@ -0,0 +1,13 @@ +org.openecomp.groups.MyHeatStack1: + derived_from: tosca.groups.Root + description: Grouped all heat resources which are in the same heat stack + properties: + heat_files: + type: list + description: Heat files which associate to this group/heat stack + required: true + status: SUPPORTED + entry_schema: + type: string + url_credential: + type: tosca.datatypes.Credential
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack1/myHeatStack1.zip b/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack1/myHeatStack1.zip Binary files differnew file mode 100644 index 0000000000..ee57b02826 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack1/myHeatStack1.zip diff --git a/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack2/myHeatStack2.yml b/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack2/myHeatStack2.yml new file mode 100644 index 0000000000..94fbb0451e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack2/myHeatStack2.yml @@ -0,0 +1,14 @@ +org.openecomp.groups.MyHeatStack2: + derived_from: tosca.groups.Root + description: Grouped all heat resources which are in the same heat stack + members: [ tosca.nodes.Compute ] + properties: + heat_files: + type: list + description: Heat files which associate to this group/heat stack + required: true + status: SUPPORTED + entry_schema: + type: string + url_credential: + type: tosca.datatypes.Credential
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack2/myHeatStack2.zip b/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack2/myHeatStack2.zip Binary files differnew file mode 100644 index 0000000000..1d75c7f4d0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/importTypesTest/myHeatStack2/myHeatStack2.zip diff --git a/asdc-tests/src/test/resources/CI/other/mapping.json b/asdc-tests/src/test/resources/CI/other/mapping.json new file mode 100644 index 0000000000..3310d776b9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/other/mapping.json @@ -0,0 +1,182 @@ +{ "order": 1, "template": "auditingevents-*", "settings": {}, "mappings": +{ +"distributiondownloadevent": + { "properties": { + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "RESOURCE_URL": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CONSUMER_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }}, + "_all": { "enabled": true } }, + "auditinggetuebclusterevent": + { "properties": { + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CONSUMER_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }}, + "_all": { "enabled": true } }, + "distributionstatusevent": + { "properties": { + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "RESOURCE_URL": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TOPIC_NAME":{ "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CONSUMER_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }}, + "_all": { "enabled": true } }, +"distributionengineevent": + { "properties": { + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TOPIC_NAME":{ "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ROLE": { "include_in_all": true, "type": "string" }, + "API_KEY": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "D_ENV": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CONSUMER_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }}, + "_all": { "enabled": true } }, + "useraccessevent": { + "properties": { + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "USER": { "include_in_all": true, "type": "string" }}, + "_all": { "enabled": true }}, +"resourceadminevent": + { "properties": { + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CURR_VERSION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CURR_STATE": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "MODIFIER": { "include_in_all": true, "type": "string" }, + "PREV_VERSION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "PREV_STATE": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "RESOURCE_NAME": { "include_in_all": true, "type": "string" }, + "RESOURCE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DPREV_STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DCURR_STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TOSCA_NODE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "COMMENT": { "include_in_all": true, "type": "string" }, + "ARTIFACT_DATA": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "PREV_ARTIFACT_UUID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CURR_ARTIFACT_UUID": { "include_in_all": true, "index": "not_analyzed", "type": "string" } }, + "_all": { "enabled": true }} , +"useradminevent": + { "properties": { + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "USER_AFTER": { "include_in_all": true, "type": "string" }, + "USER_BEFORE": { "include_in_all": true, "type": "string" }, + "MODIFIER": { "include_in_all": true, "type": "string" }}, + "_all": { "enabled": true } }, +"distributionnotificationevent": + {"properties":{ + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CURR_STATE": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CURR_VERSION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "MODIFIER": { "include_in_all": true, "type": "string" }, + "RESOURCE_NAME": { "include_in_all": true, "type": "string" }, + "RESOURCE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TOPIC_NAME":{ "include_in_all": true, "index": "not_analyzed", "type": "string" }}, + "_all": { "enabled": true } }, + "categoryevent": + { "properties":{ + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "MODIFIER": { "include_in_all": true, "type": "string" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CATEGORY_NAME": { "include_in_all": true, "type": "string" }, + "SUB_CATEGORY_NAME": { "include_in_all": true, "type": "string" }, + "GROUPING_NAME": { "include_in_all": true, "type": "string" }, + "RESOURCE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }}, + "_all": { "enabled": true } }, + "authevent": { + "properties": { + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }, + "DESC": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "URL": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "USER": { "include_in_all": true, "type": "string" }, + "AUTH_STATUS": { "include_in_all": true, "index": "not_analyzed","type": "string" } , + "REALM": { "include_in_all": true, "index": "not_analyzed","type": "string" }} , + "_all": { "enabled": true }}, + "consumerevent": + { "properties":{ + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "MODIFIER": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "ECOMP_USER": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }}, + "_all": { "enabled": true } }, + "getuserslistevent": + { "properties":{ + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "MODIFIER": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DETAILS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }}, + "_all": { "enabled": true } }, + "getcategoryhierarchyevent": + { "properties":{ + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "MODIFIER": { "include_in_all": true, "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DETAILS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }}, + "_all": { "enabled": true } }, + "distributiondeployevent": + { "properties": { + "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "CURR_VERSION": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "DESC": { "include_in_all": true, "type": "string" }, + "DID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "MODIFIER": { "include_in_all": true, "type": "string" }, + "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "RESOURCE_NAME": { "include_in_all": true, "type": "string" }, + "RESOURCE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" }, + "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS z", "precision_step": 4, "type": "date" }}, + "_all": { "enabled": true } }}, + "aliases": { "last_3_months": {}}}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/addYangXmlArtifactToResource.xml b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/addYangXmlArtifactToResource.xml new file mode 100644 index 0000000000..0415385bd0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/addYangXmlArtifactToResource.xml @@ -0,0 +1,32 @@ +<?xml version="1.0"?> +<data> + <sports> + <person> + <name>Lionel Andres Messi</name> + <birthday>1987-06-24T00:00:00-00:00</birthday> + </person> + <person> + <name>Cristiano Ronaldo</name> + <birthday>1985-02-05T00:00:00-00:00</birthday> + </person> + <team> + <name>FC Barcelona</name> + <player> + <name>Lionel Andres Messi</name> + <season>Champions League 2014-2015</season> + <number>10</number> + <scores>43</scores> + </player> + </team> + <team> + <name>Real Madrid</name> + <player> + <name>Cristiano Ronaldo</name> + <season>Champions League 2014-2015</season> + <number>7</number> + <scores>48</scores> + </player> + </team> + </sports> + +</data>
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat 0 2.yaml b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat 0 2.yaml new file mode 100644 index 0000000000..6835485ca1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat 0 2.yaml @@ -0,0 +1,787 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_name: + type: string + description: Unique name for this VNF instance + default: This_is_the_SCP_name + vnf_id: + type: string + description: Unique ID for this VNF instance + default: This_is_ths_SCP_id + + flavor_scp_be_id: + type: string + description: flavor type + default: a1.Small + flavor_scp_fe_id: + type: string + description: flavor type + default: a1.Small + flavor_smp_id: + type: string + description: flavor type + default: a1.Small + flavor_db_id: + type: string + description: flavor type + default: a1.Small + image_scp_be_id: + type: string + description: Image use to boot a server + default: asc_base_image_be + image_scp_fe_id: + type: string + description: Image use to boot a server + default: asc_base_image_fe + image_smp_id: + type: string + description: Image use to boot a server + default: asc_base_image_smp + image_db_id: + type: string + description: Image use to boot a server + default: asc_base_image_db + + int_vscp_fe_cluster_net_id: + type: string + description: LAN2 FE Cluster/KA + int_vscp_fe_cluster_cidr: + type: string + description: Private Network2 Address (CIDR notation) + int_vscp_cluster_net_id: + type: string + description: LAN3 Cluster + int_vscp_cluster_cidr: + type: string + description: Private Network3 Address (CIDR notation) + int_vscp_db_network_net_id: + type: string + description: LAN4 DB + int_vscp_db_network_cidr: + type: string + description: Private Network4 Address (CIDR notation) + SIGNET_vrf_A1_direct_net_id: + type: string + description: Network name for SIGTRAN_A + SIGNET_vrf_B1_direct_net_id: + type: string + description: Network name for SIGTRAN_B + Cricket_OCS_protected_net_id: + type: string + description: Network name for CRICKET_OCS + OAM_direct_net_id: + type: string + description: Network name for OAM + be0_Cricket_OCS_protected_ips: + type: string + label: be0 port 5 OAM ip address + description: be0 port 5 OAM ip address + be1_Cricket_OCS_protected_ips: + type: string + label: be1 port 5 OAM ip address + description: be1 port 5 OAM ip address + be2_Cricket_OCS_protected_ips: + type: string + label: be2 port 5 OAM ip address + description: be2 port 5 OAM ip address + be3_Cricket_OCS_protected_ips: + type: string + label: be3 port 5 OAM ip address + description: be3 port 5 OAM ip address + be4_Cricket_OCS_protected_ips: + type: string + label: be4 port 5 OAM ip address + description: be4 port 5 OAM ip address + be0_OAM_direct_ips: + type: string + label: be0 port 7 OAM ip address + description: be0 port 7 OAM ip address + be1_OAM_direct_ips: + type: string + label: be1 port 7 OAM ip address + description: be1 port 7 OAM ip address + be2_OAM_direct_ips: + type: string + label: be2 port 7 OAM ip address + description: be2 port 7 OAM ip address + be3_OAM_direct_ips: + type: string + label: be3 port 7 OAM ip address + description: be3 port 7 OAM ip address + be4_OAM_direct_ips: + type: string + label: be4 port 7 OAM ip address + description: be4 port 7 OAM ip address + fe0_SIGNET_vrf_A1_direct_ips: + type: string + label: fe0 port 0 SIGTRAN ip address + description: fe0 port 0 SIGTRAN ip address + fe0_OAM_direct_ips: + type: string + label: fe0 port 7 OAM ip address + description: fe0 port 7 OAM ip address + fe1_SIGNET_vrf_B1_direct_ips: + type: string + label: fe1 port 1 SIGTRAN ip address + description: fe1 port 1 SIGTRAN ip address + fe1_OAM_direct_ips: + type: string + label: fe1 port 7 OAM ip address + description: fe1 port 7 OAM ip address + smp0_OAM_direct_ips: + type: string + label: smp0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + smp1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: smp1 port 7 OAM ip address + db0_OAM_direct_ips: + type: string + label: db0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + db1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: db1 port 7 OAM ip address + vm_scp_be0_name: + type: string + default: vSCP_BE0 + description: name of VM + vm_scp_be1_name: + type: string + default: vSCP_BE1 + description: name of VM + vm_scp_be2_name: + type: string + default: vSCP_BE2 + description: name of VM + vm_scp_be3_name: + type: string + default: vSCP_BE3 + description: name of VM + vm_scp_be4_name: + type: string + default: vSCP_BE4 + description: name of VM + vm_scp_fe0_name: + type: string + default: vSCP_FE0 + description: name of VM + vm_scp_fe1_name: + type: string + default: vSCP_FE1 + description: name of VM + vm_smp0_name: + type: string + default: vSMP0 + description: name of VM + vm_smp1_name: + type: string + default: vSMP1 + description: name of VM + vm_db0_name: + type: string + default: vDB0 + description: name of VM + vm_db1_name: + type: string + default: vDB1 + description: name of VM + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat 0 2.zip b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat 0 2.zip Binary files differnew file mode 100644 index 0000000000..c8a2726421 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat 0 2.zip diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat_net 0 2.yaml b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat_net 0 2.yaml new file mode 100644 index 0000000000..6835485ca1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/asc_heat_net 0 2.yaml @@ -0,0 +1,787 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_name: + type: string + description: Unique name for this VNF instance + default: This_is_the_SCP_name + vnf_id: + type: string + description: Unique ID for this VNF instance + default: This_is_ths_SCP_id + + flavor_scp_be_id: + type: string + description: flavor type + default: a1.Small + flavor_scp_fe_id: + type: string + description: flavor type + default: a1.Small + flavor_smp_id: + type: string + description: flavor type + default: a1.Small + flavor_db_id: + type: string + description: flavor type + default: a1.Small + image_scp_be_id: + type: string + description: Image use to boot a server + default: asc_base_image_be + image_scp_fe_id: + type: string + description: Image use to boot a server + default: asc_base_image_fe + image_smp_id: + type: string + description: Image use to boot a server + default: asc_base_image_smp + image_db_id: + type: string + description: Image use to boot a server + default: asc_base_image_db + + int_vscp_fe_cluster_net_id: + type: string + description: LAN2 FE Cluster/KA + int_vscp_fe_cluster_cidr: + type: string + description: Private Network2 Address (CIDR notation) + int_vscp_cluster_net_id: + type: string + description: LAN3 Cluster + int_vscp_cluster_cidr: + type: string + description: Private Network3 Address (CIDR notation) + int_vscp_db_network_net_id: + type: string + description: LAN4 DB + int_vscp_db_network_cidr: + type: string + description: Private Network4 Address (CIDR notation) + SIGNET_vrf_A1_direct_net_id: + type: string + description: Network name for SIGTRAN_A + SIGNET_vrf_B1_direct_net_id: + type: string + description: Network name for SIGTRAN_B + Cricket_OCS_protected_net_id: + type: string + description: Network name for CRICKET_OCS + OAM_direct_net_id: + type: string + description: Network name for OAM + be0_Cricket_OCS_protected_ips: + type: string + label: be0 port 5 OAM ip address + description: be0 port 5 OAM ip address + be1_Cricket_OCS_protected_ips: + type: string + label: be1 port 5 OAM ip address + description: be1 port 5 OAM ip address + be2_Cricket_OCS_protected_ips: + type: string + label: be2 port 5 OAM ip address + description: be2 port 5 OAM ip address + be3_Cricket_OCS_protected_ips: + type: string + label: be3 port 5 OAM ip address + description: be3 port 5 OAM ip address + be4_Cricket_OCS_protected_ips: + type: string + label: be4 port 5 OAM ip address + description: be4 port 5 OAM ip address + be0_OAM_direct_ips: + type: string + label: be0 port 7 OAM ip address + description: be0 port 7 OAM ip address + be1_OAM_direct_ips: + type: string + label: be1 port 7 OAM ip address + description: be1 port 7 OAM ip address + be2_OAM_direct_ips: + type: string + label: be2 port 7 OAM ip address + description: be2 port 7 OAM ip address + be3_OAM_direct_ips: + type: string + label: be3 port 7 OAM ip address + description: be3 port 7 OAM ip address + be4_OAM_direct_ips: + type: string + label: be4 port 7 OAM ip address + description: be4 port 7 OAM ip address + fe0_SIGNET_vrf_A1_direct_ips: + type: string + label: fe0 port 0 SIGTRAN ip address + description: fe0 port 0 SIGTRAN ip address + fe0_OAM_direct_ips: + type: string + label: fe0 port 7 OAM ip address + description: fe0 port 7 OAM ip address + fe1_SIGNET_vrf_B1_direct_ips: + type: string + label: fe1 port 1 SIGTRAN ip address + description: fe1 port 1 SIGTRAN ip address + fe1_OAM_direct_ips: + type: string + label: fe1 port 7 OAM ip address + description: fe1 port 7 OAM ip address + smp0_OAM_direct_ips: + type: string + label: smp0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + smp1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: smp1 port 7 OAM ip address + db0_OAM_direct_ips: + type: string + label: db0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + db1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: db1 port 7 OAM ip address + vm_scp_be0_name: + type: string + default: vSCP_BE0 + description: name of VM + vm_scp_be1_name: + type: string + default: vSCP_BE1 + description: name of VM + vm_scp_be2_name: + type: string + default: vSCP_BE2 + description: name of VM + vm_scp_be3_name: + type: string + default: vSCP_BE3 + description: name of VM + vm_scp_be4_name: + type: string + default: vSCP_BE4 + description: name of VM + vm_scp_fe0_name: + type: string + default: vSCP_FE0 + description: name of VM + vm_scp_fe1_name: + type: string + default: vSCP_FE1 + description: name of VM + vm_smp0_name: + type: string + default: vSMP0 + description: name of VM + vm_smp1_name: + type: string + default: vSMP1 + description: name of VM + vm_db0_name: + type: string + default: vDB0 + description: name of VM + vm_db1_name: + type: string + default: vDB1 + description: name of VM + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heatEnvfile.env b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heatEnvfile.env new file mode 100644 index 0000000000..6835485ca1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heatEnvfile.env @@ -0,0 +1,787 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_name: + type: string + description: Unique name for this VNF instance + default: This_is_the_SCP_name + vnf_id: + type: string + description: Unique ID for this VNF instance + default: This_is_ths_SCP_id + + flavor_scp_be_id: + type: string + description: flavor type + default: a1.Small + flavor_scp_fe_id: + type: string + description: flavor type + default: a1.Small + flavor_smp_id: + type: string + description: flavor type + default: a1.Small + flavor_db_id: + type: string + description: flavor type + default: a1.Small + image_scp_be_id: + type: string + description: Image use to boot a server + default: asc_base_image_be + image_scp_fe_id: + type: string + description: Image use to boot a server + default: asc_base_image_fe + image_smp_id: + type: string + description: Image use to boot a server + default: asc_base_image_smp + image_db_id: + type: string + description: Image use to boot a server + default: asc_base_image_db + + int_vscp_fe_cluster_net_id: + type: string + description: LAN2 FE Cluster/KA + int_vscp_fe_cluster_cidr: + type: string + description: Private Network2 Address (CIDR notation) + int_vscp_cluster_net_id: + type: string + description: LAN3 Cluster + int_vscp_cluster_cidr: + type: string + description: Private Network3 Address (CIDR notation) + int_vscp_db_network_net_id: + type: string + description: LAN4 DB + int_vscp_db_network_cidr: + type: string + description: Private Network4 Address (CIDR notation) + SIGNET_vrf_A1_direct_net_id: + type: string + description: Network name for SIGTRAN_A + SIGNET_vrf_B1_direct_net_id: + type: string + description: Network name for SIGTRAN_B + Cricket_OCS_protected_net_id: + type: string + description: Network name for CRICKET_OCS + OAM_direct_net_id: + type: string + description: Network name for OAM + be0_Cricket_OCS_protected_ips: + type: string + label: be0 port 5 OAM ip address + description: be0 port 5 OAM ip address + be1_Cricket_OCS_protected_ips: + type: string + label: be1 port 5 OAM ip address + description: be1 port 5 OAM ip address + be2_Cricket_OCS_protected_ips: + type: string + label: be2 port 5 OAM ip address + description: be2 port 5 OAM ip address + be3_Cricket_OCS_protected_ips: + type: string + label: be3 port 5 OAM ip address + description: be3 port 5 OAM ip address + be4_Cricket_OCS_protected_ips: + type: string + label: be4 port 5 OAM ip address + description: be4 port 5 OAM ip address + be0_OAM_direct_ips: + type: string + label: be0 port 7 OAM ip address + description: be0 port 7 OAM ip address + be1_OAM_direct_ips: + type: string + label: be1 port 7 OAM ip address + description: be1 port 7 OAM ip address + be2_OAM_direct_ips: + type: string + label: be2 port 7 OAM ip address + description: be2 port 7 OAM ip address + be3_OAM_direct_ips: + type: string + label: be3 port 7 OAM ip address + description: be3 port 7 OAM ip address + be4_OAM_direct_ips: + type: string + label: be4 port 7 OAM ip address + description: be4 port 7 OAM ip address + fe0_SIGNET_vrf_A1_direct_ips: + type: string + label: fe0 port 0 SIGTRAN ip address + description: fe0 port 0 SIGTRAN ip address + fe0_OAM_direct_ips: + type: string + label: fe0 port 7 OAM ip address + description: fe0 port 7 OAM ip address + fe1_SIGNET_vrf_B1_direct_ips: + type: string + label: fe1 port 1 SIGTRAN ip address + description: fe1 port 1 SIGTRAN ip address + fe1_OAM_direct_ips: + type: string + label: fe1 port 7 OAM ip address + description: fe1 port 7 OAM ip address + smp0_OAM_direct_ips: + type: string + label: smp0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + smp1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: smp1 port 7 OAM ip address + db0_OAM_direct_ips: + type: string + label: db0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + db1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: db1 port 7 OAM ip address + vm_scp_be0_name: + type: string + default: vSCP_BE0 + description: name of VM + vm_scp_be1_name: + type: string + default: vSCP_BE1 + description: name of VM + vm_scp_be2_name: + type: string + default: vSCP_BE2 + description: name of VM + vm_scp_be3_name: + type: string + default: vSCP_BE3 + description: name of VM + vm_scp_be4_name: + type: string + default: vSCP_BE4 + description: name of VM + vm_scp_fe0_name: + type: string + default: vSCP_FE0 + description: name of VM + vm_scp_fe1_name: + type: string + default: vSCP_FE1 + description: name of VM + vm_smp0_name: + type: string + default: vSMP0 + description: name of VM + vm_smp1_name: + type: string + default: vSMP1 + description: name of VM + vm_db0_name: + type: string + default: vDB0 + description: name of VM + vm_db1_name: + type: string + default: vDB1 + description: name of VM + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heatInvalidFormat.yaml b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heatInvalidFormat.yaml new file mode 100644 index 0000000000..b70d5a4b0a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heatInvalidFormat.yaml @@ -0,0 +1,9 @@ +heat_template_version: 2013-05-23 + +parameters: + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] +
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heat_mini.yaml b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heat_mini.yaml new file mode 100644 index 0000000000..a545569129 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/heat_mini.yaml @@ -0,0 +1,13 @@ +heat_template_version: 2013-05-23 + +parameters: + vnf_name: + type: string + description: Unique name for this VNF instance + default: This_is_the_SCP_name + +resources: + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidJson.json b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidJson.json new file mode 100644 index 0000000000..48a3e89deb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidJson.json @@ -0,0 +1,11 @@ +{ + "glossary": { + "title": "example glossary", + "GlossDiv": { + "title": "S", + "GlossList": { + "GlossEntry": { + "ID": "SGML", + "SortAs": "SGML", + "GlossTerm": "Standard Generalized Markup Language", + "Acronym": "SGML", diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidYamlFormat.yaml b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidYamlFormat.yaml new file mode 100644 index 0000000000..5c51039931 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidYamlFormat.yaml @@ -0,0 +1,787 @@ + heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_name: + type: string + description: Unique name for this VNF instance + default: This_is_the_SCP_name + vnf_id: + type: string + description: Unique ID for this VNF instance + default: This_is_ths_SCP_id + + flavor_scp_be_id: + type: string + description: flavor type + default: a1.Small + flavor_scp_fe_id: + type: string + description: flavor type + default: a1.Small + flavor_smp_id: + type: string + description: flavor type + default: a1.Small + flavor_db_id: + type: string + description: flavor type + default: a1.Small + image_scp_be_id: + type: string + description: Image use to boot a server + default: asc_base_image_be + image_scp_fe_id: + type: string + description: Image use to boot a server + default: asc_base_image_fe + image_smp_id: + type: string + description: Image use to boot a server + default: asc_base_image_smp + image_db_id: + type: string + description: Image use to boot a server + default: asc_base_image_db + + int_vscp_fe_cluster_net_id: + type: string + description: LAN2 FE Cluster/KA + int_vscp_fe_cluster_cidr: + type: string + description: Private Network2 Address (CIDR notation) + int_vscp_cluster_net_id: + type: string + description: LAN3 Cluster + int_vscp_cluster_cidr: + type: string + description: Private Network3 Address (CIDR notation) + int_vscp_db_network_net_id: + type: string + description: LAN4 DB + int_vscp_db_network_cidr: + type: string + description: Private Network4 Address (CIDR notation) + SIGNET_vrf_A1_direct_net_id: + type: string + description: Network name for SIGTRAN_A + SIGNET_vrf_B1_direct_net_id: + type: string + description: Network name for SIGTRAN_B + Cricket_OCS_protected_net_id: + type: string + description: Network name for CRICKET_OCS + OAM_direct_net_id: + type: string + description: Network name for OAM + be0_Cricket_OCS_protected_ips: + type: string + label: be0 port 5 OAM ip address + description: be0 port 5 OAM ip address + be1_Cricket_OCS_protected_ips: + type: string + label: be1 port 5 OAM ip address + description: be1 port 5 OAM ip address + be2_Cricket_OCS_protected_ips: + type: string + label: be2 port 5 OAM ip address + description: be2 port 5 OAM ip address + be3_Cricket_OCS_protected_ips: + type: string + label: be3 port 5 OAM ip address + description: be3 port 5 OAM ip address + be4_Cricket_OCS_protected_ips: + type: string + label: be4 port 5 OAM ip address + description: be4 port 5 OAM ip address + be0_OAM_direct_ips: + type: string + label: be0 port 7 OAM ip address + description: be0 port 7 OAM ip address + be1_OAM_direct_ips: + type: string + label: be1 port 7 OAM ip address + description: be1 port 7 OAM ip address + be2_OAM_direct_ips: + type: string + label: be2 port 7 OAM ip address + description: be2 port 7 OAM ip address + be3_OAM_direct_ips: + type: string + label: be3 port 7 OAM ip address + description: be3 port 7 OAM ip address + be4_OAM_direct_ips: + type: string + label: be4 port 7 OAM ip address + description: be4 port 7 OAM ip address + fe0_SIGNET_vrf_A1_direct_ips: + type: string + label: fe0 port 0 SIGTRAN ip address + description: fe0 port 0 SIGTRAN ip address + fe0_OAM_direct_ips: + type: string + label: fe0 port 7 OAM ip address + description: fe0 port 7 OAM ip address + fe1_SIGNET_vrf_B1_direct_ips: + type: string + label: fe1 port 1 SIGTRAN ip address + description: fe1 port 1 SIGTRAN ip address + fe1_OAM_direct_ips: + type: string + label: fe1 port 7 OAM ip address + description: fe1 port 7 OAM ip address + smp0_OAM_direct_ips: + type: string + label: smp0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + smp1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: smp1 port 7 OAM ip address + db0_OAM_direct_ips: + type: string + label: db0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + db1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: db1 port 7 OAM ip address + vm_scp_be0_name: + type: string + default: vSCP_BE0 + description: name of VM + vm_scp_be1_name: + type: string + default: vSCP_BE1 + description: name of VM + vm_scp_be2_name: + type: string + default: vSCP_BE2 + description: name of VM + vm_scp_be3_name: + type: string + default: vSCP_BE3 + description: name of VM + vm_scp_be4_name: + type: string + default: vSCP_BE4 + description: name of VM + vm_scp_fe0_name: + type: string + default: vSCP_FE0 + description: name of VM + vm_scp_fe1_name: + type: string + default: vSCP_FE1 + description: name of VM + vm_smp0_name: + type: string + default: vSMP0 + description: name of VM + vm_smp1_name: + type: string + default: vSMP1 + description: name of VM + vm_db0_name: + type: string + default: vDB0 + description: name of VM + vm_db1_name: + type: string + default: vDB1 + description: name of VM + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidYangXml.xml b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidYangXml.xml new file mode 100644 index 0000000000..8978e0d5ed --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/invalidYangXml.xml @@ -0,0 +1,35 @@ +<data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> + + <sports xmlns="http://example.com/example-sports"> + <person> + <name>Lionel Andr�s Messi</name> + <birthday>1987-06-24T00:00:00-00:00</birthday> + </person> + <person> + <name>Cristiano Ronaldo</name> + <birthday>1985-02-05T00:00:00-00:00</birthday> + </person> + <team> + <name>FC Barcelona</name> + <player> + <name>Lionel Andr�s Messi</name> + <season>Champions League 2014/2015</season> + <number>10</number> + <scores>43</scores> + </player> + </team> + <team> + <name>Real Madrid</name> + <player> + <name>Cristiano Ronaldo</name> + <season>Champions League 2014/2015</season> + <number>7</number> + <scores>48</scores> + </player> + </team> + </sports> + + + +</data> +</data>
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/jsonArtifact.json b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/jsonArtifact.json new file mode 100644 index 0000000000..d5ca56d195 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/jsonArtifact.json @@ -0,0 +1,22 @@ +{ + "glossary": { + "title": "example glossary", + "GlossDiv": { + "title": "S", + "GlossList": { + "GlossEntry": { + "ID": "SGML", + "SortAs": "SGML", + "GlossTerm": "Standard Generalized Markup Language", + "Acronym": "SGML", + "Abbrev": "ISO 8879:1986", + "GlossDef": { + "para": "A meta-markup language, used to create markup languages such as DocBook.", + "GlossSeeAlso": ["GML", "XML"] + }, + "GlossSee": "markup" + } + } + } + } +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/other.txt b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/other.txt new file mode 100644 index 0000000000..5f8f77ca2c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/HeatDeploymentArtifacts/other.txt @@ -0,0 +1,3 @@ +cmd1 +cmd2 +cmd3
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/bluePrintSampleArtifact.xml b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/bluePrintSampleArtifact.xml new file mode 100644 index 0000000000..10c46b7269 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/bluePrintSampleArtifact.xml @@ -0,0 +1,3 @@ +<test> + dfsfsdfsdf +</test>
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/docSampleArtifact.docx b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/docSampleArtifact.docx Binary files differnew file mode 100644 index 0000000000..c281f532f8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/docSampleArtifact.docx diff --git a/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/emfSampleArtifact.emf b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/emfSampleArtifact.emf new file mode 100644 index 0000000000..9c478f6ce1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/emfSampleArtifact.emf @@ -0,0 +1,2 @@ +This is sample EMF file +We currently not checking the file content.
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/emfSampleArtifact.xml b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/emfSampleArtifact.xml new file mode 100644 index 0000000000..10c46b7269 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/emfSampleArtifact.xml @@ -0,0 +1,3 @@ +<test> + dfsfsdfsdf +</test>
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/eventSampleArtifact.xml b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/eventSampleArtifact.xml new file mode 100644 index 0000000000..10c46b7269 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/eventSampleArtifact.xml @@ -0,0 +1,3 @@ +<test> + dfsfsdfsdf +</test>
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/jsonSampleArtifact.json b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/jsonSampleArtifact.json new file mode 100644 index 0000000000..b749a9e89c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/jsonSampleArtifact.json @@ -0,0 +1,3 @@ +{ + "test": "This is test" +} diff --git a/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/toscaSampleArtifact.yml b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/toscaSampleArtifact.yml new file mode 100644 index 0000000000..10ccf71d51 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/ResourceInstanceArtifacts/toscaSampleArtifact.yml @@ -0,0 +1,5 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +node_types: + org.openecomp.resource.cp.CP: + derived_from: org.openecomp.resource.cp.root
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/addHeatArtifactToServiceAndSertify/asc_heat 0 2.yaml b/asdc-tests/src/test/resources/CI/tests/addHeatArtifactToServiceAndSertify/asc_heat 0 2.yaml new file mode 100644 index 0000000000..6835485ca1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/addHeatArtifactToServiceAndSertify/asc_heat 0 2.yaml @@ -0,0 +1,787 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_name: + type: string + description: Unique name for this VNF instance + default: This_is_the_SCP_name + vnf_id: + type: string + description: Unique ID for this VNF instance + default: This_is_ths_SCP_id + + flavor_scp_be_id: + type: string + description: flavor type + default: a1.Small + flavor_scp_fe_id: + type: string + description: flavor type + default: a1.Small + flavor_smp_id: + type: string + description: flavor type + default: a1.Small + flavor_db_id: + type: string + description: flavor type + default: a1.Small + image_scp_be_id: + type: string + description: Image use to boot a server + default: asc_base_image_be + image_scp_fe_id: + type: string + description: Image use to boot a server + default: asc_base_image_fe + image_smp_id: + type: string + description: Image use to boot a server + default: asc_base_image_smp + image_db_id: + type: string + description: Image use to boot a server + default: asc_base_image_db + + int_vscp_fe_cluster_net_id: + type: string + description: LAN2 FE Cluster/KA + int_vscp_fe_cluster_cidr: + type: string + description: Private Network2 Address (CIDR notation) + int_vscp_cluster_net_id: + type: string + description: LAN3 Cluster + int_vscp_cluster_cidr: + type: string + description: Private Network3 Address (CIDR notation) + int_vscp_db_network_net_id: + type: string + description: LAN4 DB + int_vscp_db_network_cidr: + type: string + description: Private Network4 Address (CIDR notation) + SIGNET_vrf_A1_direct_net_id: + type: string + description: Network name for SIGTRAN_A + SIGNET_vrf_B1_direct_net_id: + type: string + description: Network name for SIGTRAN_B + Cricket_OCS_protected_net_id: + type: string + description: Network name for CRICKET_OCS + OAM_direct_net_id: + type: string + description: Network name for OAM + be0_Cricket_OCS_protected_ips: + type: string + label: be0 port 5 OAM ip address + description: be0 port 5 OAM ip address + be1_Cricket_OCS_protected_ips: + type: string + label: be1 port 5 OAM ip address + description: be1 port 5 OAM ip address + be2_Cricket_OCS_protected_ips: + type: string + label: be2 port 5 OAM ip address + description: be2 port 5 OAM ip address + be3_Cricket_OCS_protected_ips: + type: string + label: be3 port 5 OAM ip address + description: be3 port 5 OAM ip address + be4_Cricket_OCS_protected_ips: + type: string + label: be4 port 5 OAM ip address + description: be4 port 5 OAM ip address + be0_OAM_direct_ips: + type: string + label: be0 port 7 OAM ip address + description: be0 port 7 OAM ip address + be1_OAM_direct_ips: + type: string + label: be1 port 7 OAM ip address + description: be1 port 7 OAM ip address + be2_OAM_direct_ips: + type: string + label: be2 port 7 OAM ip address + description: be2 port 7 OAM ip address + be3_OAM_direct_ips: + type: string + label: be3 port 7 OAM ip address + description: be3 port 7 OAM ip address + be4_OAM_direct_ips: + type: string + label: be4 port 7 OAM ip address + description: be4 port 7 OAM ip address + fe0_SIGNET_vrf_A1_direct_ips: + type: string + label: fe0 port 0 SIGTRAN ip address + description: fe0 port 0 SIGTRAN ip address + fe0_OAM_direct_ips: + type: string + label: fe0 port 7 OAM ip address + description: fe0 port 7 OAM ip address + fe1_SIGNET_vrf_B1_direct_ips: + type: string + label: fe1 port 1 SIGTRAN ip address + description: fe1 port 1 SIGTRAN ip address + fe1_OAM_direct_ips: + type: string + label: fe1 port 7 OAM ip address + description: fe1 port 7 OAM ip address + smp0_OAM_direct_ips: + type: string + label: smp0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + smp1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: smp1 port 7 OAM ip address + db0_OAM_direct_ips: + type: string + label: db0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + db1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: db1 port 7 OAM ip address + vm_scp_be0_name: + type: string + default: vSCP_BE0 + description: name of VM + vm_scp_be1_name: + type: string + default: vSCP_BE1 + description: name of VM + vm_scp_be2_name: + type: string + default: vSCP_BE2 + description: name of VM + vm_scp_be3_name: + type: string + default: vSCP_BE3 + description: name of VM + vm_scp_be4_name: + type: string + default: vSCP_BE4 + description: name of VM + vm_scp_fe0_name: + type: string + default: vSCP_FE0 + description: name of VM + vm_scp_fe1_name: + type: string + default: vSCP_FE1 + description: name of VM + vm_smp0_name: + type: string + default: vSMP0 + description: name of VM + vm_smp1_name: + type: string + default: vSMP1 + description: name of VM + vm_db0_name: + type: string + default: vDB0 + description: name of VM + vm_db1_name: + type: string + default: vDB1 + description: name of VM + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/downloadResourceArtifactSuccess/org.openstack.Rally.zip b/asdc-tests/src/test/resources/CI/tests/downloadResourceArtifactSuccess/org.openstack.Rally.zip Binary files differnew file mode 100644 index 0000000000..0951d5cef8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/downloadResourceArtifactSuccess/org.openstack.Rally.zip diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/mysql.yml new file mode 100644 index 0000000000..f512f8071e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getResourceArtifactFileContentTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getResourceArtifactFileContentTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/scripts/install_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/scripts/install_mysql.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/scripts/install_mysql.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/scripts/start_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/scripts/start_mysql.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactFileContentTest/scripts/start_mysql.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListNoContentTest/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListNoContentTest/mysql.yml new file mode 100644 index 0000000000..180e247ea2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListNoContentTest/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getResourceArtifactListNoContentTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getResourceArtifactListNoContentTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/mysql.yml new file mode 100644 index 0000000000..b8f9bbdc69 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-GetResourceArtifactListTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-GetResourceArtifactListTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/scripts/install_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/scripts/install_mysql.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/scripts/install_mysql.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/scripts/start_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/scripts/start_mysql.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactListTest/scripts/start_mysql.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataNoContentTest/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataNoContentTest/mysql.yml new file mode 100644 index 0000000000..72ff4f37e0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataNoContentTest/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getResourceArtifactMetadataNoContentTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getResourceArtifactMetadataNoContentTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/mysql.yml new file mode 100644 index 0000000000..527e4a0081 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getResourceArtifactMetadataTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getResourceArtifactMetadataTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/scripts/install_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/scripts/install_mysql.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/scripts/install_mysql.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/scripts/start_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/scripts/start_mysql.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactMetadataTest/scripts/start_mysql.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getResourceArtifactPayloadNoContentTest/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactPayloadNoContentTest/mysql.yml new file mode 100644 index 0000000000..7177a65387 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getResourceArtifactPayloadNoContentTest/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getResourceArtifactPayloadNoContentTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getResourceArtifactPayloadNoContentTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/mysql.yml new file mode 100644 index 0000000000..e0a0c6458e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListTest + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListTest: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListTest: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/scripts/install_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/scripts/install_mysql.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/scripts/install_mysql.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/scripts/start_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/scripts/start_mysql.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource1/scripts/start_mysql.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/mysql.yml new file mode 100644 index 0000000000..dc5ff158c8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListTest2 +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListTest2: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListTest2 + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListTest2: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListTest2: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/scripts/install_mysql2.sh b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/scripts/install_mysql2.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/scripts/install_mysql2.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/scripts/start_mysql2.sh b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/scripts/start_mysql2.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/resource2/scripts/start_mysql2.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/topology.txt b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/topology.txt new file mode 100644 index 0000000000..cb3c3e8546 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/topology.txt @@ -0,0 +1 @@ +{"id":"6a4b2f9d-7fe1-482d-af11-97f483dff5b7","delegateId":"9c063349-2259-40fe-97f1-7c40e659e1b0","delegateType":"topologytemplate","dependencies":[{"name":"tosca-normative-types-DBMS","version":"1.0.0.wd03-SNAPSHOT"},{"name":"mysql-getServiceArtifactListTest2","version":"1.1.1-SNAPSHOT"},{"name":"tosca-normative-types-softwareComponent","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-compute","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-root","version":"1.0.0.wd03-SNAPSHOT"},{"name":"mysql-getServiceArtifactListTest","version":"1.1.1-SNAPSHOT"},{"name":"tosca-normative-types-database","version":"1.0.0.wd03-SNAPSHOT"}],"nodeTemplates":[{"key":"Mysql-getServiceArtifactListTest","value":{"type":"alien.nodes.Mysql-getServiceArtifactListTest","name":null,"properties":{"bind_address":"true","storage_path":"/mountedStorage","db_port":"3306","db_name":"wordpress","db_user":"pass","db_password":"pass"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":{"hostedOnCompute":{"type":"tosca.relationships.HostedOn","target":"Compute","requirementName":"host","requirementType":"tosca.nodes.Compute","targetedCapabilityName":"host"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"database_endpoint":{"type":"tosca.capabilities.DatabaseEndpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.MysqlDatabase-getServiceArtifactListTest","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":{"scripts":{"artifactType":"tosca.artifacts.File","artifactRef":"scripts","artifactName":"scripts","artifactRepository":null}}}},{"key":"Compute","value":{"type":"tosca.nodes.Compute","name":null,"properties":{"disk_size":null,"num_cpus":null,"os_distribution":null,"os_arch":null,"mem_size":null,"os_type":null,"os_version":null},"attributes":{"ip_address":null,"tosca_id":null,"tosca_name":null},"relationships":null,"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"network":{"type":"tosca.capabilities.Connectivity","properties":null}},"capabilities":{"host":{"type":"tosca.capabilities.Container","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null},"attach":{"type":"tosca.capabilities.Attachment","properties":null},"scalable":{"type":"tosca.capabilities.Scalable","properties":{"max_intances":{"value":"1","definition":false},"default_instances":{"value":"1","definition":false},"min_intances":{"value":"1","definition":false}}}},"artifacts":null}},{"key":"Mysql-getServiceArtifactListTest2","value":{"type":"alien.nodes.Mysql-getServiceArtifactListTest2","name":null,"properties":{"bind_address":"true","storage_path":"/mountedStorage","db_port":"3306","db_name":"wordpress","db_user":"pass","db_password":"pass"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":{"hostedOnCompute":{"type":"tosca.relationships.HostedOn","target":"Compute","requirementName":"host","requirementType":"tosca.nodes.Compute","targetedCapabilityName":"host"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"database_endpoint":{"type":"tosca.capabilities.DatabaseEndpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.MysqlDatabase-getServiceArtifactListTest2","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":{"scripts":{"artifactType":"tosca.artifacts.File","artifactRef":"scripts","artifactName":"scripts","artifactRepository":null}}}}]}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/topologyTemplate.txt b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/topologyTemplate.txt new file mode 100644 index 0000000000..f0d0849db8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListInvalidVersionNotFoundTest/topologyTemplate.txt @@ -0,0 +1,2 @@ +{"id":"9c063349-2259-40fe-97f1-7c40e659e1b0","name":"Andrey","description":null,"topologyId":"6a4b2f9d-7fe1-482d-af11-97f483dff5b7"} + diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource1/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource1/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource1/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource1/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource1/mysql.yml new file mode 100644 index 0000000000..4ee2c8ca88 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource1/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListNoContentTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListNoContentTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListNoContentTest: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource2/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource2/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource2/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource2/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource2/mysql.yml new file mode 100644 index 0000000000..b564dd0c4e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/resource2/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListNoContentTest2 +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListNoContentTest2: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest2 + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest2: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListNoContentTest2: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/topology.txt b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/topology.txt new file mode 100644 index 0000000000..279351879a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/topology.txt @@ -0,0 +1 @@ +{"id":"3293c9c8-a162-43fc-b8d1-431399f89cb7","delegateId":"25845cce-05c8-4502-b5fe-abfd6bd6f28e","delegateType":"topologytemplate","dependencies":[{"name":"tosca-normative-types-DBMS","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-softwareComponent","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-compute","version":"1.0.0.wd03-SNAPSHOT"},{"name":"mysql-getServiceArtifactListNoContentTest2","version":"1.1.1-SNAPSHOT"},{"name":"tosca-normative-types-root","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-database","version":"1.0.0.wd03-SNAPSHOT"}],"nodeTemplates":[{"key":"Mysql-getServiceArtifactListNoContentTest2","value":{"type":"alien.nodes.Mysql-getServiceArtifactListNoContentTest2","name":null,"properties":{"bind_address":"true","storage_path":"/mountedStorage","db_port":"3306","db_name":"wordpress","db_user":"pass","db_password":"pass"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":null,"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"database_endpoint":{"type":"tosca.capabilities.DatabaseEndpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest2","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":{"scripts":{"artifactType":"tosca.artifacts.File","artifactRef":"scripts","artifactName":"scripts","artifactRepository":null}}}},{"key":"Compute","value":{"type":"tosca.nodes.Compute","name":null,"properties":{"disk_size":null,"num_cpus":null,"os_distribution":null,"os_arch":null,"mem_size":null,"os_type":null,"os_version":null},"attributes":{"ip_address":null,"tosca_id":null,"tosca_name":null},"relationships":{"dependsOnMysql-getServiceArtifactListNoContentTest2":{"type":"tosca.relationships.DependsOn","target":"Mysql-getServiceArtifactListNoContentTest2","requirementName":"dependency","requirementType":"tosca.capabilities.Root","targetedCapabilityName":"root"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"network":{"type":"tosca.capabilities.Connectivity","properties":null}},"capabilities":{"host":{"type":"tosca.capabilities.Container","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null},"attach":{"type":"tosca.capabilities.Attachment","properties":null},"scalable":{"type":"tosca.capabilities.Scalable","properties":{"max_intances":{"value":"1","definition":false},"default_instances":{"value":"1","definition":false},"min_intances":{"value":"1","definition":false}}}},"artifacts":null}}]}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/topologyTemplate.txt b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/topologyTemplate.txt new file mode 100644 index 0000000000..3c342f6cd1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListNoContentTest/topologyTemplate.txt @@ -0,0 +1,2 @@ +{"id":"25845cce-05c8-4502-b5fe-abfd6bd6f28e","name":"ServiceArtListNoContent","description":null,"topologyId":"3293c9c8-a162-43fc-b8d1-431399f89cb7"} + diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/mysql.yml new file mode 100644 index 0000000000..e0a0c6458e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListTest + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListTest: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListTest: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/scripts/install_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/scripts/install_mysql.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/scripts/install_mysql.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/scripts/start_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/scripts/start_mysql.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource1/scripts/start_mysql.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/mysql.yml new file mode 100644 index 0000000000..dc5ff158c8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListTest2 +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListTest2: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListTest2 + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListTest2: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListTest2: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/scripts/install_mysql2.sh b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/scripts/install_mysql2.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/scripts/install_mysql2.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/scripts/start_mysql2.sh b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/scripts/start_mysql2.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/resource2/scripts/start_mysql2.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/topology.txt b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/topology.txt new file mode 100644 index 0000000000..cb3c3e8546 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/topology.txt @@ -0,0 +1 @@ +{"id":"6a4b2f9d-7fe1-482d-af11-97f483dff5b7","delegateId":"9c063349-2259-40fe-97f1-7c40e659e1b0","delegateType":"topologytemplate","dependencies":[{"name":"tosca-normative-types-DBMS","version":"1.0.0.wd03-SNAPSHOT"},{"name":"mysql-getServiceArtifactListTest2","version":"1.1.1-SNAPSHOT"},{"name":"tosca-normative-types-softwareComponent","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-compute","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-root","version":"1.0.0.wd03-SNAPSHOT"},{"name":"mysql-getServiceArtifactListTest","version":"1.1.1-SNAPSHOT"},{"name":"tosca-normative-types-database","version":"1.0.0.wd03-SNAPSHOT"}],"nodeTemplates":[{"key":"Mysql-getServiceArtifactListTest","value":{"type":"alien.nodes.Mysql-getServiceArtifactListTest","name":null,"properties":{"bind_address":"true","storage_path":"/mountedStorage","db_port":"3306","db_name":"wordpress","db_user":"pass","db_password":"pass"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":{"hostedOnCompute":{"type":"tosca.relationships.HostedOn","target":"Compute","requirementName":"host","requirementType":"tosca.nodes.Compute","targetedCapabilityName":"host"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"database_endpoint":{"type":"tosca.capabilities.DatabaseEndpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.MysqlDatabase-getServiceArtifactListTest","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":{"scripts":{"artifactType":"tosca.artifacts.File","artifactRef":"scripts","artifactName":"scripts","artifactRepository":null}}}},{"key":"Compute","value":{"type":"tosca.nodes.Compute","name":null,"properties":{"disk_size":null,"num_cpus":null,"os_distribution":null,"os_arch":null,"mem_size":null,"os_type":null,"os_version":null},"attributes":{"ip_address":null,"tosca_id":null,"tosca_name":null},"relationships":null,"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"network":{"type":"tosca.capabilities.Connectivity","properties":null}},"capabilities":{"host":{"type":"tosca.capabilities.Container","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null},"attach":{"type":"tosca.capabilities.Attachment","properties":null},"scalable":{"type":"tosca.capabilities.Scalable","properties":{"max_intances":{"value":"1","definition":false},"default_instances":{"value":"1","definition":false},"min_intances":{"value":"1","definition":false}}}},"artifacts":null}},{"key":"Mysql-getServiceArtifactListTest2","value":{"type":"alien.nodes.Mysql-getServiceArtifactListTest2","name":null,"properties":{"bind_address":"true","storage_path":"/mountedStorage","db_port":"3306","db_name":"wordpress","db_user":"pass","db_password":"pass"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":{"hostedOnCompute":{"type":"tosca.relationships.HostedOn","target":"Compute","requirementName":"host","requirementType":"tosca.nodes.Compute","targetedCapabilityName":"host"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"database_endpoint":{"type":"tosca.capabilities.DatabaseEndpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.MysqlDatabase-getServiceArtifactListTest2","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":{"scripts":{"artifactType":"tosca.artifacts.File","artifactRef":"scripts","artifactName":"scripts","artifactRepository":null}}}}]}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/topologyTemplate.txt b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/topologyTemplate.txt new file mode 100644 index 0000000000..f0d0849db8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceArtifactListTest/topologyTemplate.txt @@ -0,0 +1,2 @@ +{"id":"9c063349-2259-40fe-97f1-7c40e659e1b0","name":"Andrey","description":null,"topologyId":"6a4b2f9d-7fe1-482d-af11-97f483dff5b7"} + diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/mysql.yml new file mode 100644 index 0000000000..e0a0c6458e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListTest + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListTest: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListTest: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/scripts/install_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/scripts/install_mysql.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/scripts/install_mysql.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/scripts/start_mysql.sh b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/scripts/start_mysql.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource1/scripts/start_mysql.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/mysql.yml new file mode 100644 index 0000000000..dc5ff158c8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListTest2 +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListTest2: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListTest2 + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListTest2: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListTest2: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/scripts/install_mysql2.sh b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/scripts/install_mysql2.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/scripts/install_mysql2.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/scripts/start_mysql2.sh b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/scripts/start_mysql2.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/resource2/scripts/start_mysql2.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/topology.txt b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/topology.txt new file mode 100644 index 0000000000..cb3c3e8546 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/topology.txt @@ -0,0 +1 @@ +{"id":"6a4b2f9d-7fe1-482d-af11-97f483dff5b7","delegateId":"9c063349-2259-40fe-97f1-7c40e659e1b0","delegateType":"topologytemplate","dependencies":[{"name":"tosca-normative-types-DBMS","version":"1.0.0.wd03-SNAPSHOT"},{"name":"mysql-getServiceArtifactListTest2","version":"1.1.1-SNAPSHOT"},{"name":"tosca-normative-types-softwareComponent","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-compute","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-root","version":"1.0.0.wd03-SNAPSHOT"},{"name":"mysql-getServiceArtifactListTest","version":"1.1.1-SNAPSHOT"},{"name":"tosca-normative-types-database","version":"1.0.0.wd03-SNAPSHOT"}],"nodeTemplates":[{"key":"Mysql-getServiceArtifactListTest","value":{"type":"alien.nodes.Mysql-getServiceArtifactListTest","name":null,"properties":{"bind_address":"true","storage_path":"/mountedStorage","db_port":"3306","db_name":"wordpress","db_user":"pass","db_password":"pass"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":{"hostedOnCompute":{"type":"tosca.relationships.HostedOn","target":"Compute","requirementName":"host","requirementType":"tosca.nodes.Compute","targetedCapabilityName":"host"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"database_endpoint":{"type":"tosca.capabilities.DatabaseEndpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.MysqlDatabase-getServiceArtifactListTest","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":{"scripts":{"artifactType":"tosca.artifacts.File","artifactRef":"scripts","artifactName":"scripts","artifactRepository":null}}}},{"key":"Compute","value":{"type":"tosca.nodes.Compute","name":null,"properties":{"disk_size":null,"num_cpus":null,"os_distribution":null,"os_arch":null,"mem_size":null,"os_type":null,"os_version":null},"attributes":{"ip_address":null,"tosca_id":null,"tosca_name":null},"relationships":null,"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"network":{"type":"tosca.capabilities.Connectivity","properties":null}},"capabilities":{"host":{"type":"tosca.capabilities.Container","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null},"attach":{"type":"tosca.capabilities.Attachment","properties":null},"scalable":{"type":"tosca.capabilities.Scalable","properties":{"max_intances":{"value":"1","definition":false},"default_instances":{"value":"1","definition":false},"min_intances":{"value":"1","definition":false}}}},"artifacts":null}},{"key":"Mysql-getServiceArtifactListTest2","value":{"type":"alien.nodes.Mysql-getServiceArtifactListTest2","name":null,"properties":{"bind_address":"true","storage_path":"/mountedStorage","db_port":"3306","db_name":"wordpress","db_user":"pass","db_password":"pass"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":{"hostedOnCompute":{"type":"tosca.relationships.HostedOn","target":"Compute","requirementName":"host","requirementType":"tosca.nodes.Compute","targetedCapabilityName":"host"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"database_endpoint":{"type":"tosca.capabilities.DatabaseEndpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.MysqlDatabase-getServiceArtifactListTest2","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":{"scripts":{"artifactType":"tosca.artifacts.File","artifactRef":"scripts","artifactName":"scripts","artifactRepository":null}}}}]}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/topologyTemplate.txt b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/topologyTemplate.txt new file mode 100644 index 0000000000..f0d0849db8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service1/topologyTemplate.txt @@ -0,0 +1,2 @@ +{"id":"9c063349-2259-40fe-97f1-7c40e659e1b0","name":"Andrey","description":null,"topologyId":"6a4b2f9d-7fe1-482d-af11-97f483dff5b7"} + diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource1/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource1/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource1/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource1/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource1/mysql.yml new file mode 100644 index 0000000000..4ee2c8ca88 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource1/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListNoContentTest +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListNoContentTest: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListNoContentTest: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource2/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource2/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource2/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource2/mysql.yml b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource2/mysql.yml new file mode 100644 index 0000000000..b564dd0c4e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/resource2/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-getServiceArtifactListNoContentTest2 +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-getServiceArtifactListNoContentTest2: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest2 + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest2: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript-getServiceArtifactListNoContentTest2: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/topology.txt b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/topology.txt new file mode 100644 index 0000000000..279351879a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/topology.txt @@ -0,0 +1 @@ +{"id":"3293c9c8-a162-43fc-b8d1-431399f89cb7","delegateId":"25845cce-05c8-4502-b5fe-abfd6bd6f28e","delegateType":"topologytemplate","dependencies":[{"name":"tosca-normative-types-DBMS","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-softwareComponent","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-compute","version":"1.0.0.wd03-SNAPSHOT"},{"name":"mysql-getServiceArtifactListNoContentTest2","version":"1.1.1-SNAPSHOT"},{"name":"tosca-normative-types-root","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-database","version":"1.0.0.wd03-SNAPSHOT"}],"nodeTemplates":[{"key":"Mysql-getServiceArtifactListNoContentTest2","value":{"type":"alien.nodes.Mysql-getServiceArtifactListNoContentTest2","name":null,"properties":{"bind_address":"true","storage_path":"/mountedStorage","db_port":"3306","db_name":"wordpress","db_user":"pass","db_password":"pass"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":null,"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"database_endpoint":{"type":"tosca.capabilities.DatabaseEndpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.MysqlDatabase-getServiceArtifactListNoContentTest2","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":{"scripts":{"artifactType":"tosca.artifacts.File","artifactRef":"scripts","artifactName":"scripts","artifactRepository":null}}}},{"key":"Compute","value":{"type":"tosca.nodes.Compute","name":null,"properties":{"disk_size":null,"num_cpus":null,"os_distribution":null,"os_arch":null,"mem_size":null,"os_type":null,"os_version":null},"attributes":{"ip_address":null,"tosca_id":null,"tosca_name":null},"relationships":{"dependsOnMysql-getServiceArtifactListNoContentTest2":{"type":"tosca.relationships.DependsOn","target":"Mysql-getServiceArtifactListNoContentTest2","requirementName":"dependency","requirementType":"tosca.capabilities.Root","targetedCapabilityName":"root"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"network":{"type":"tosca.capabilities.Connectivity","properties":null}},"capabilities":{"host":{"type":"tosca.capabilities.Container","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null},"attach":{"type":"tosca.capabilities.Attachment","properties":null},"scalable":{"type":"tosca.capabilities.Scalable","properties":{"max_intances":{"value":"1","definition":false},"default_instances":{"value":"1","definition":false},"min_intances":{"value":"1","definition":false}}}},"artifacts":null}}]}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/topologyTemplate.txt b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/topologyTemplate.txt new file mode 100644 index 0000000000..3c342f6cd1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/getServiceListTest/Service2/topologyTemplate.txt @@ -0,0 +1,2 @@ +{"id":"25845cce-05c8-4502-b5fe-abfd6bd6f28e","name":"ServiceArtListNoContent","description":null,"topologyId":"3293c9c8-a162-43fc-b8d1-431399f89cb7"} + diff --git a/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingDefault.yaml b/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingDefault.yaml new file mode 100644 index 0000000000..6aad589bdb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingDefault.yaml @@ -0,0 +1,603 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_missing_default: + type: string + description: Unique name for this VNF instance + label: be4 port 5 OAM ip address + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingDesc.yaml b/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingDesc.yaml new file mode 100644 index 0000000000..d51a20d77f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingDesc.yaml @@ -0,0 +1,603 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_missing_desc: + type: string + default: This_is_the_SCP_name + label: be4 port 5 OAM ip address + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingType.yaml b/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingType.yaml new file mode 100644 index 0000000000..29527495f7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithParamsMissingType.yaml @@ -0,0 +1,603 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_missing_desc: + description: Unique name for this VNF instance + default: This_is_the_SCP_name + label: be4 port 5 OAM ip address + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithValidParams.yaml b/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithValidParams.yaml new file mode 100644 index 0000000000..6835485ca1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/heatArtifactParameters/heatWithValidParams.yaml @@ -0,0 +1,787 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +# availability_zone_smp0: +# type: string +# default: nova +# availability_zone_smp1: +# type: string +# default: nova +# availability_zone_fe0: +# type: string +# default: nova +# availability_zone_fe1: +# type: string +# default: nova +# availability_zone_db0: +# type: string +# default: nova +# availability_zone_db1: +# type: string +# default: nova +# availability_zone_be0: +# type: string +# default: nova +# availability_zone_be1: +# type: string +# default: nova +# availability_zone_be2: +# type: string +# default: nova +# availability_zone_be3: +# type: string +# default: nova +# availability_zone_be4: +# type: string +# default: nova + + vnf_name: + type: string + description: Unique name for this VNF instance + default: This_is_the_SCP_name + vnf_id: + type: string + description: Unique ID for this VNF instance + default: This_is_ths_SCP_id + + flavor_scp_be_id: + type: string + description: flavor type + default: a1.Small + flavor_scp_fe_id: + type: string + description: flavor type + default: a1.Small + flavor_smp_id: + type: string + description: flavor type + default: a1.Small + flavor_db_id: + type: string + description: flavor type + default: a1.Small + image_scp_be_id: + type: string + description: Image use to boot a server + default: asc_base_image_be + image_scp_fe_id: + type: string + description: Image use to boot a server + default: asc_base_image_fe + image_smp_id: + type: string + description: Image use to boot a server + default: asc_base_image_smp + image_db_id: + type: string + description: Image use to boot a server + default: asc_base_image_db + + int_vscp_fe_cluster_net_id: + type: string + description: LAN2 FE Cluster/KA + int_vscp_fe_cluster_cidr: + type: string + description: Private Network2 Address (CIDR notation) + int_vscp_cluster_net_id: + type: string + description: LAN3 Cluster + int_vscp_cluster_cidr: + type: string + description: Private Network3 Address (CIDR notation) + int_vscp_db_network_net_id: + type: string + description: LAN4 DB + int_vscp_db_network_cidr: + type: string + description: Private Network4 Address (CIDR notation) + SIGNET_vrf_A1_direct_net_id: + type: string + description: Network name for SIGTRAN_A + SIGNET_vrf_B1_direct_net_id: + type: string + description: Network name for SIGTRAN_B + Cricket_OCS_protected_net_id: + type: string + description: Network name for CRICKET_OCS + OAM_direct_net_id: + type: string + description: Network name for OAM + be0_Cricket_OCS_protected_ips: + type: string + label: be0 port 5 OAM ip address + description: be0 port 5 OAM ip address + be1_Cricket_OCS_protected_ips: + type: string + label: be1 port 5 OAM ip address + description: be1 port 5 OAM ip address + be2_Cricket_OCS_protected_ips: + type: string + label: be2 port 5 OAM ip address + description: be2 port 5 OAM ip address + be3_Cricket_OCS_protected_ips: + type: string + label: be3 port 5 OAM ip address + description: be3 port 5 OAM ip address + be4_Cricket_OCS_protected_ips: + type: string + label: be4 port 5 OAM ip address + description: be4 port 5 OAM ip address + be0_OAM_direct_ips: + type: string + label: be0 port 7 OAM ip address + description: be0 port 7 OAM ip address + be1_OAM_direct_ips: + type: string + label: be1 port 7 OAM ip address + description: be1 port 7 OAM ip address + be2_OAM_direct_ips: + type: string + label: be2 port 7 OAM ip address + description: be2 port 7 OAM ip address + be3_OAM_direct_ips: + type: string + label: be3 port 7 OAM ip address + description: be3 port 7 OAM ip address + be4_OAM_direct_ips: + type: string + label: be4 port 7 OAM ip address + description: be4 port 7 OAM ip address + fe0_SIGNET_vrf_A1_direct_ips: + type: string + label: fe0 port 0 SIGTRAN ip address + description: fe0 port 0 SIGTRAN ip address + fe0_OAM_direct_ips: + type: string + label: fe0 port 7 OAM ip address + description: fe0 port 7 OAM ip address + fe1_SIGNET_vrf_B1_direct_ips: + type: string + label: fe1 port 1 SIGTRAN ip address + description: fe1 port 1 SIGTRAN ip address + fe1_OAM_direct_ips: + type: string + label: fe1 port 7 OAM ip address + description: fe1 port 7 OAM ip address + smp0_OAM_direct_ips: + type: string + label: smp0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + smp1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: smp1 port 7 OAM ip address + db0_OAM_direct_ips: + type: string + label: db0 port 7 OAM ip address + description: smp0 port 7 OAM ip address + db1_OAM_direct_ips: + type: string + label: smp1 port 7 OAM ip address + description: db1 port 7 OAM ip address + vm_scp_be0_name: + type: string + default: vSCP_BE0 + description: name of VM + vm_scp_be1_name: + type: string + default: vSCP_BE1 + description: name of VM + vm_scp_be2_name: + type: string + default: vSCP_BE2 + description: name of VM + vm_scp_be3_name: + type: string + default: vSCP_BE3 + description: name of VM + vm_scp_be4_name: + type: string + default: vSCP_BE4 + description: name of VM + vm_scp_fe0_name: + type: string + default: vSCP_FE0 + description: name of VM + vm_scp_fe1_name: + type: string + default: vSCP_FE1 + description: name of VM + vm_smp0_name: + type: string + default: vSMP0 + description: name of VM + vm_smp1_name: + type: string + default: vSMP1 + description: name of VM + vm_db0_name: + type: string + default: vDB0 + description: name of VM + vm_db1_name: + type: string + default: vDB1 + description: name of VM + +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/heatEnv/artifact_1.yaml b/asdc-tests/src/test/resources/CI/tests/heatEnv/artifact_1.yaml new file mode 100644 index 0000000000..7d4a85c2b6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/heatEnv/artifact_1.yaml @@ -0,0 +1,144 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: string + description: city name + default: Hulon + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 + private_building: + type: boolean + description: home_number + default: true +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/heatEnv/artifact_2.yaml b/asdc-tests/src/test/resources/CI/tests/heatEnv/artifact_2.yaml new file mode 100644 index 0000000000..2c404f0721 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/heatEnv/artifact_2.yaml @@ -0,0 +1,469 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: +parameters: + city_name: + type: string + description: city name + default: Hulon + address: + type: string + description: address + default: Narkis + home_number: + type: number + description: home_number + default: 14 + private_building: + type: boolean + description: home_number + default: true +resources: + be0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be0_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}] + + be0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}] + + server_scp_be1: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be1_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be1 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be1_port_3 } + - port: { get_resource: be1_port_4 } + - port: { get_resource: be1_port_5 } + - port: { get_resource: be1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be1_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be1_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}] + + be1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}] + + server_scp_be2: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be2_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be2 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be2_port_3 } + - port: { get_resource: be2_port_4 } + - port: { get_resource: be2_port_5 } + - port: { get_resource: be2_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be2_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be2_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be2_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be2_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}] + + be2_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}] + + server_scp_be3: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be3_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be3 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be3_port_3 } + - port: { get_resource: be3_port_4 } + - port: { get_resource: be3_port_5 } + - port: { get_resource: be3_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be3_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be3_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be3_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be3_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}] + + be3_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}] + + server_scp_be4: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be4_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be4 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be4_port_3 } + - port: { get_resource: be4_port_4 } + - port: { get_resource: be4_port_5 } + - port: { get_resource: be4_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be4_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } + + be4_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + be4_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + be4_port_5: + type: OS::Neutron::Port + properties: + network: { get_param: Cricket_OCS_protected_net_id } + fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}] + + be4_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}] + + server_scp_fe0: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe0_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe0 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe0_port_0 } + - port: { get_resource: fe0_port_2 } + - port: { get_resource: fe0_port_3 } + - port: { get_resource: fe0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe0_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe0_port_0: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_A1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}] + + fe0_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe0_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}] + + server_scp_fe1: + type: OS::Nova::Server +# depends on: scp_be_wait_condition + properties: + name: { get_param: vm_scp_fe1_name } + image: { get_param: image_scp_fe_id } +# availability_zone: { get_param: availability_zone_fe1 } + flavor: { get_param: flavor_scp_fe_id } + scheduler_hints: { group: { get_resource: FE_Affinity } } + networks: + - port: { get_resource: fe1_port_1 } + - port: { get_resource: fe1_port_2 } + - port: { get_resource: fe1_port_3 } + - port: { get_resource: fe1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_fe1_name} +# wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] } + + fe1_port_1: + type: OS::Neutron::Port + properties: + network: { get_param: SIGNET_vrf_B1_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}] + + fe1_port_2: + type: OS::Neutron::Port + properties: + network_id: { get_resource: FE_Clustering_KA } + + fe1_port_3: + type: OS::Neutron::Port + properties: + network_id: { get_resource: Clustering_Network } + + fe1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}] + + server_smp0: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp0_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp0 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp0_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}] + + server_smp1: + type: OS::Nova::Server + properties: + name: { get_param: vm_smp1_name } + image: { get_param: image_smp_id } +# availability_zone: { get_param: availability_zone_smp1 } + flavor: { get_param: flavor_smp_id } + scheduler_hints: { group: { get_resource: SMP_Affinity } } + networks: + - port: { get_resource: smp1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_smp1_name} +# wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] } + + smp1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}] + + server_db0: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db0_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db0 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db0_port_4 } + - port: { get_resource: db0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db0_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db0_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db0_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}] + + server_db1: + type: OS::Nova::Server +# depends_on: smp_wait_condition + properties: + name: { get_param: vm_db1_name } + image: { get_param: image_db_id } +# availability_zone: { get_param: availability_zone_db1 } + flavor: { get_param: flavor_db_id } + scheduler_hints: { group: { get_resource: DB_Affinity } } + networks: + - port: { get_resource: db1_port_4 } + - port: { get_resource: db1_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_db1_name} +# wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] } + + db1_port_4: + type: OS::Neutron::Port + properties: + network_id: { get_resource: DB_Network } + + db1_port_7: + type: OS::Neutron::Port + properties: + network: { get_param: OAM_direct_net_id } + fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/heatEnv/yuli.yaml b/asdc-tests/src/test/resources/CI/tests/heatEnv/yuli.yaml new file mode 100644 index 0000000000..7d4a85c2b6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/heatEnv/yuli.yaml @@ -0,0 +1,144 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: string + description: city name + default: Hulon + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 + private_building: + type: boolean + description: home_number + default: true +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/BindingAsset.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/BindingAsset.yml new file mode 100644 index 0000000000..5117247373 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/BindingAsset.yml @@ -0,0 +1,14 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +node_types: + org.openecomp.resource.cp: + derived_from: tosca.nodes.Root + properties: + type: + type: string + required: false + requirements: + - VirtualBinding: + capability: tosca.capabilities.network.Bindable + relationship: tosca.relationships.network.BindsTo + occurrences: [0, UNBOUNDED]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPHasNoReqCap.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPHasNoReqCap.yml new file mode 100644 index 0000000000..8309df24b5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPHasNoReqCap.yml @@ -0,0 +1,9 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +node_types: + org.openecomp.resource.cp.CP: + derived_from: tosca.nodes.Compute + properties: + type: + type: string + required: false
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPHasNoReqCap_DerivedFromMyCompute1.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPHasNoReqCap_DerivedFromMyCompute1.yml new file mode 100644 index 0000000000..478e742bc5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPHasNoReqCap_DerivedFromMyCompute1.yml @@ -0,0 +1,9 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +node_types: + org.openecomp.resource.cp.CP: + derived_from: org.openecomp.resource.MyCompute1 + properties: + type: + type: string + required: false
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPWithAttributes.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPWithAttributes.yml new file mode 100644 index 0000000000..afafe7510b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CPWithAttributes.yml @@ -0,0 +1,59 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +node_types: + org.openecomp.resource.cp.CP: + derived_from: tosca.nodes.Root + properties: + type: + type: string + required: false + ip_address: + type: string + required: false + description: Allow the user to set a static IP. + order: + type: integer + required: false + default: 0 + description: The order of the NIC on the compute instance (e.g. eth2). + is_default: + type: boolean + required: false + default: false + description: “If is_default=true this port will be used for the default gateway route. Only one port that is associated to single compute node can set as is_default=true.” + ip_range_start: + type: string + required: false + description: “Defines the starting IP of a range to be allocated for the VFC instances that are associated with this Port.” + ip_range_end: + type: string + required: false + description: “Defines the ending IP of a range to be allocated for the compute instances that are associated with this Port.” + is_tagged: + type: boolean + required: false + default: false + description: + attributes: + private_address: + type: string + default: "Hello" + value: "HelloWord" + public_address: + default: "DefaultValuePublicAddress" + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - virtualLink: + capability: tosca.capabilities.network.Linkable + relationship: tosca.relationships.network.LinksTo + - virtualbinding: + capability: tosca.capabilities.network.Bindable + relationship: tosca.relationships.network.BindsTo
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveCapTest_1.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveCapTest_1.yml new file mode 100644 index 0000000000..b9e6c4f9b5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveCapTest_1.yml @@ -0,0 +1,34 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + capaBility: + type: tosca.capabilities.OperatingSystem diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveCapTest_2.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveCapTest_2.yml new file mode 100644 index 0000000000..230e4fa924 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveCapTest_2.yml @@ -0,0 +1,34 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute2: + derived_from: org.openecomp.resource.MyCompute1 + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + Capability: + type: tosca.capabilities.OperatingSystem diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveReqTest_1.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveReqTest_1.yml new file mode 100644 index 0000000000..0d097a8f20 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveReqTest_1.yml @@ -0,0 +1,34 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - requirEment: + capability: tosca.capabilities.Endpoint + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveReqTest_2.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveReqTest_2.yml new file mode 100644 index 0000000000..9cc1f2737b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/CaseInsensitiveReqTest_2.yml @@ -0,0 +1,34 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute2: + derived_from: org.openecomp.resource.MyCompute1 + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - Requirement: + capability: tosca.capabilities.Endpoint + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DerivedFromCPWithOwnReq.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DerivedFromCPWithOwnReq.yml new file mode 100644 index 0000000000..3514acfe9f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DerivedFromCPWithOwnReq.yml @@ -0,0 +1,14 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +node_types: + org.openecomp.resource.cp.LAN: + derived_from: org.openecomp.resource.cp.CP + properties: + type: + type: string + required: false + requirements: + - virtualLink: + capability: tosca.capabilities.network.Linkable + relationship: tosca.relationships.network.LinksTo + occurrences: [0, UNBOUNDED]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DerivedFromWebApplication_HasNoReqType.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DerivedFromWebApplication_HasNoReqType.yml new file mode 100644 index 0000000000..7fbf4ec132 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DerivedFromWebApplication_HasNoReqType.yml @@ -0,0 +1,27 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyChildWebApplication: + derived_from: tosca.nodes.WebApplication + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - diff: + capability: + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + deff: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentCapFromRoot.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentCapFromRoot.yml new file mode 100644 index 0000000000..fe79bb3af9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentCapFromRoot.yml @@ -0,0 +1,26 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyAsset: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - test: + capability: tosca.capabilities.Scalable + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqAndCap.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqAndCap.yml new file mode 100644 index 0000000000..798cd5b9cd --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqAndCap.yml @@ -0,0 +1,34 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - DependencY: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + FeaTurE: + type: tosca.capabilities.OperatingSystem
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqCapFromCompute1.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqCapFromCompute1.yml new file mode 100644 index 0000000000..c72d0ee62a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqCapFromCompute1.yml @@ -0,0 +1,22 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute2: + derived_from: org.openecomp.resource.MyCompute1 + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - diff: + capability: tosca.capabilities.Container + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqCapFromCompute2.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqCapFromCompute2.yml new file mode 100644 index 0000000000..7132ca493a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqCapFromCompute2.yml @@ -0,0 +1,25 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute3: + derived_from: org.openecomp.resource.MyCompute1 + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - diff: + capability: tosca.capabilities.Container + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + deff: + type: tosca.capabilities.Container diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqFromCompute.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqFromCompute.yml new file mode 100644 index 0000000000..e9438bae3c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/DifferentReqFromCompute.yml @@ -0,0 +1,32 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Compute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - test: + capability: tosca.capabilities.Scalable + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/FatherHasNoReqCap.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/FatherHasNoReqCap.yml new file mode 100644 index 0000000000..039ab61939 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/FatherHasNoReqCap.yml @@ -0,0 +1,9 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 + +node_types: + org.openecomp.resource.cp.CP: + derived_from: tosca.nodes.Root + properties: + type: + type: string + required: false
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure01.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure01.yml new file mode 100644 index 0000000000..f20a9eb48f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure01.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_boolean: + type: list + description : another description + default: + - false + - true + entry_schema: + description: This is my property + type: booolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure02.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure02.yml new file mode 100644 index 0000000000..f1af89ca6a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure02.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - false + - truee + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure03.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure03.yml new file mode 100644 index 0000000000..974d96ba5b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure03.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - false + - 3 + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure04.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure04.yml new file mode 100644 index 0000000000..52377e4b02 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure04.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - false + - 3.56 + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure05.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure05.yml new file mode 100644 index 0000000000..c66b4347f6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure05.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10000 + - 3.56 + entry_schema: + description: This is my property + type: integer + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure06.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure06.yml new file mode 100644 index 0000000000..79b3c03cdf --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure06.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10000 + - aaaa + entry_schema: + description: This is my property + type: integer + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure07.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure07.yml new file mode 100644 index 0000000000..5556e9ddfb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure07.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10000 + - true + entry_schema: + description: This is my property + type: integer + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure08.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure08.yml new file mode 100644 index 0000000000..a3b21a64a3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure08.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10.50 + - true + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure09.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure09.yml new file mode 100644 index 0000000000..dc28591499 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure09.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10.50 + - asdc + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure10.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure10.yml new file mode 100644 index 0000000000..e465448064 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure10.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10.50 + - 500 + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure11.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure11.yml new file mode 100644 index 0000000000..a428b51974 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure11.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10.50 + - 500.0@ + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure12.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure12.yml new file mode 100644 index 0000000000..d840253120 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure12.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10000 + - 3# + entry_schema: + description: This is my property + type: integer + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure13.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure13.yml new file mode 100644 index 0000000000..4eb59886e4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure13.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - false + - true% + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure14.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure14.yml new file mode 100644 index 0000000000..ad263f3d00 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure14.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - false + - falsee + - true + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure15.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure15.yml new file mode 100644 index 0000000000..93e8caa0a3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure15.yml @@ -0,0 +1,19 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: list + description : another description + default: + - 10.5 + - 10.6x + - 20.5 + - 30.5 + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure16.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure16.yml new file mode 100644 index 0000000000..ed8ea4d70c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/ListPropertyFalure16.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_boolean: + type: koko + description : another description + default: + - false + - true + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure01.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure01.yml new file mode 100644 index 0000000000..c7ff0743f2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure01.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_boolean: + type: map + description : another description + default: + - false + - true + entry_schema: + description: This is my property + type: booolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure02.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure02.yml new file mode 100644 index 0000000000..d9abb87db8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure02.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - false + - truee + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure03.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure03.yml new file mode 100644 index 0000000000..e8f9b6eaa9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure03.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - false + - 3 + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure04.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure04.yml new file mode 100644 index 0000000000..d9dc4f955b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure04.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - false + - 3.56 + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure05.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure05.yml new file mode 100644 index 0000000000..aba6ff1992 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure05.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10000 + - 3.56 + entry_schema: + description: This is my property + type: integer + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure06.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure06.yml new file mode 100644 index 0000000000..f27904d6e6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure06.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10000 + - aaaa + entry_schema: + description: This is my property + type: integer + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure07.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure07.yml new file mode 100644 index 0000000000..ea123f3b1b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure07.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10000 + - true + entry_schema: + description: This is my property + type: integer + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure08.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure08.yml new file mode 100644 index 0000000000..87b51fb2de --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure08.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10.50 + - true + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure09.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure09.yml new file mode 100644 index 0000000000..2fc8ded544 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure09.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10.50 + - asdc + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure10.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure10.yml new file mode 100644 index 0000000000..3ab449d72e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure10.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10.50 + - 500 + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure11.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure11.yml new file mode 100644 index 0000000000..e437de822e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure11.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10.50 + - 500.0@ + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure12.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure12.yml new file mode 100644 index 0000000000..f2fbc7c435 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure12.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10000 + - 3# + entry_schema: + description: This is my property + type: integer + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure13.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure13.yml new file mode 100644 index 0000000000..e375aae197 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure13.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - false + - true% + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure14.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure14.yml new file mode 100644 index 0000000000..e087212f1b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure14.yml @@ -0,0 +1,18 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - false + - falsee + - true + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure15.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure15.yml new file mode 100644 index 0000000000..3923ee18d7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure15.yml @@ -0,0 +1,19 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_property: + type: map + description : another description + default: + - 10.5 + - 10.6x + - 20.5 + - 30.5 + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure16.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure16.yml new file mode 100644 index 0000000000..ed8ea4d70c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MapPropertyFalure16.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_boolean: + type: koko + description : another description + default: + - false + - true + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MyFatherCompute_NoReqCap.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MyFatherCompute_NoReqCap.yml new file mode 100644 index 0000000000..dfc564b458 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/MyFatherCompute_NoReqCap.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyFatherCompute: + derived_from: tosca.nodes.Compute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameCapAsCompute.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameCapAsCompute.yml new file mode 100644 index 0000000000..533333ee09 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameCapAsCompute.yml @@ -0,0 +1,26 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Compute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + capabilities: + host: + type: tosca.capabilities.Container + endpoint : + type: tosca.capabilities.Endpoint.Admin + OS: + type: tosca.capabilities.OperatingSystem + BINDING: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameReqAsCompute.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameReqAsCompute.yml new file mode 100644 index 0000000000..9d8b2d8375 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameReqAsCompute.yml @@ -0,0 +1,23 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Compute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - LOCAL_STORAGE: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, 1]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameReqAsCompute_DerivedFromMyCompute1.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameReqAsCompute_DerivedFromMyCompute1.yml new file mode 100644 index 0000000000..a5413e516f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/SameReqAsCompute_DerivedFromMyCompute1.yml @@ -0,0 +1,23 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute2: + derived_from: org.openecomp.resource.MyCompute1 + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - LOCAL_STORAGE: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, 2]
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/computeCap11.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/computeCap11.yml new file mode 100644 index 0000000000..9cea0b9dc8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/computeCap11.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vfc.vfc3: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [1, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + occurrences: [1, 1] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/computeCap1UNBOUNDED.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/computeCap1UNBOUNDED.yml new file mode 100644 index 0000000000..24efc27711 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/computeCap1UNBOUNDED.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vfc.vfc2: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [1, 1] + capabilities: + host: + type: tosca.capabilities.Container + occurrences: [1, UNBOUNDED] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/derivedFromMyCompute.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/derivedFromMyCompute.yml new file mode 100644 index 0000000000..237bec1f0c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/derivedFromMyCompute.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.DerivedFromMyCompute: + derived_from: org.openecomp.resource.MyCompute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/derivedFromWebAppDerivedReqCap.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/derivedFromWebAppDerivedReqCap.yml new file mode 100644 index 0000000000..0679bff4b1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/derivedFromWebAppDerivedReqCap.yml @@ -0,0 +1,15 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyWebApp: + derived_from: tosca.nodes.WebApplication + properties: + context_root: + type: string + capabilities: + app_endpoint: + type: tosca.capabilities.Endpoint.Admin #derived from WebApplication's tosca.capabilities.Endpoint "app_endpoint" + requirements: + - host: + capability: tosca.capabilities.Container.Docker #derived from WebApplication's tosca.capabilities.Container "host" + node: tosca.nodes.WebServer + relationship: tosca.relationships.HostedOn diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importAttributeSuccessFlow.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importAttributeSuccessFlow.yml new file mode 100644 index 0000000000..0fa9a302f2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importAttributeSuccessFlow.yml @@ -0,0 +1,53 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyComputeTest: + derived_from: tosca.nodes.Root + properties: + myProp: + type: tosca.datatypes.Credential + descritpion: hey Desc + default: + "protocol" : hey1 + "token_type" : hey2 + "token" : hey3 + "keys" : {"keyA" : "val1" , keyB : val2} + "user" : hey4 + attributes: + private_address: + type: string + status: supported + default: myDefault + public_address: + type: string + networks: + type: map + default: {keyA : val1 , keyB : val2} + entry_schema: + type: string + ports: + type: tosca.datatypes.Credential + description: this is my description + default: + "protocol" : hey1 + "token_type" : hey2 + "token" : hey3 + "keys" : {"keyA" : "val1" , keyB : val2} + "user" : hey4 + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importCapabilityNameExistsOnParent.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importCapabilityNameExistsOnParent.yml new file mode 100644 index 0000000000..4d6db6c8c0 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importCapabilityNameExistsOnParent.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Compute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + Binding: #"binding" exists on parent + type: tosca.capabilities.OperatingSystem diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importDuplicateCapability.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importDuplicateCapability.yml new file mode 100644 index 0000000000..fcc3952f94 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importDuplicateCapability.yml @@ -0,0 +1,42 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + - LOCAL_Storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + Scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importDuplicateRequirements.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importDuplicateRequirements.yml new file mode 100644 index 0000000000..7cab3ac590 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importDuplicateRequirements.yml @@ -0,0 +1,40 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + - LOCAL_Storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertyBadDefault.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertyBadDefault.yml new file mode 100644 index 0000000000..a3ff088a35 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertyBadDefault.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.TestResource: + derived_from: tosca.nodes.Root + properties: + my_prop: + type: list + description : another description + default: + - 12 + - true + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertyGoodDefault.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertyGoodDefault.yml new file mode 100644 index 0000000000..2f864a727e --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertyGoodDefault.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_prop: + type: list + description : another description + default: + - false + - true + entry_schema: + description: This is my property + type: string + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertySuccessFlow.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertySuccessFlow.yml new file mode 100644 index 0000000000..fd52df5f9b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importListPropertySuccessFlow.yml @@ -0,0 +1,198 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + my_boolean: + type: list + description : another description + default: + - false + - true + entry_schema: + description: This is my property + type: boolean + my_boolean_array: + type: list + description : another description + default: [ true , false ] + entry_schema: + description: This is my property + type: boolean + duplicate_boolean_values: + type: list + description : another description + default: [ true , false , true ] + entry_schema: + description: This is my property + type: boolean + boolean_null_value: + type: list + description : another description + default: + - true + - + - false + entry_schema: + description: This is my property + type: boolean + my_integers: + type: list + description : another description + default: + - 0 + - 1000 + - -1000 + - 50 + entry_schema: + description: This is my property + type: integer + my_integers_array: + type: list + description : another description + default: [ 10 , -1000, 0 ] + entry_schema: + description: This is my property + type: integer + duplicate_integers_values: + type: list + description : another description + default: [ 10 , 10, -1000, 0 ] + entry_schema: + description: This is my property + type: integer + integer_null_value: + type: list + description : another description + default: + - 1000 + - + - 2000 + entry_schema: + description: This is my property + type: integer + my_string: + type: list + description : another description + default: + - <b>asdc<b> + - $?^@ecomp$!#%()_-~@+*^...;;/w# + - uc + entry_schema: + description: This is my property + type: string + my_string_array: + type: list + description : another description + default: [ <b>AAA</b>, ~$~#bbb%^*_-, qwe , 1.3 , <b>500</b> , true ] + entry_schema: + description: This is my property + type: string + string_null_value: + type: list + description : another description + default: + - <b>asdc<b> + - + - uc + entry_schema: + description: This is my property + type: string + string_space_value: + type: list + description : another description + default: + - <b> asdc<b> + - + - uc + entry_schema: + description: This is my property + type: string + duplicate_string_values: + type: list + description : another description + default: + - asdc + - asdc + - uc + entry_schema: + description: This is my property + type: string + my_float: + type: list + description : another description + default: + - 6 + - 1000.000001 + - -3.0f + entry_schema: + description: This is my property + type: float + my_float_array: + type: list + description : another description + default: [ 0.01 , -5.0 , 2.1f ] + entry_schema: + description: This is my property + type: float + duplicate_float_values: + type: list + description : another description + default: + - 0.0 + - 0.0 + - 4.555555 + entry_schema: + description: This is my property + type: float + float_no_default_values: + type: list + description : another description + default: + entry_schema: + description: This is my property + type: float + float_null_value: + type: list + description : another description + default: + - 6 + - + - -3.0f + entry_schema: + description: This is my property + type: float + float_space_value: + type: list + description : another description + default: + - 6 + - + - -3.0f + entry_schema: + description: This is my property + type: float + integer_no_default_values: + type: list + description : another description + default: + entry_schema: + description: This is my property + type: integer + string_no_default_values: + type: list + description : another description + default: + entry_schema: + description: This is my property + type: string + boolean_no_default_values: + type: list + description : another description + default: + entry_schema: + description: This is my property + type: boolean + capabilities: + link: + type: tosca.capabilities.network.Linkable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importMapPropertySuccessFlow.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importMapPropertySuccessFlow.yml new file mode 100644 index 0000000000..f856603397 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importMapPropertySuccessFlow.yml @@ -0,0 +1,452 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.LinkTest: + derived_from: tosca.nodes.Root + properties: + string_prop01: + type: map + description : another description + default: {keyA : val1 , keyB : val2} + entry_schema: + description: This is my property + type: string + string_prop02: + type: map + description : another description + default: {keyA : "val1" , keyB : "val2"} + entry_schema: + description: This is my property + type: string + string_prop03: + type: map + description : another description + default: {"keyA" : "val1" , keyB : val2} + entry_schema: + description: This is my property + type: string + string_prop04: + type: map + description : another description + default: {"keyA" : 10 , keyB : <b>true</b> } + entry_schema: + description: This is my property + type: string + string_prop05: + type: map + description : another description + default: {"keyA" : , keyB : "Big" } + entry_schema: + description: This is my property + type: string + string_prop06: + type: map + description : another description + default: {"keyA" : aaaA , keyB : null } + entry_schema: + description: This is my property + type: string + string_prop07: + type: map + description : another description + default: {"keyA" : NULL , keyB : Null } + entry_schema: + description: This is my property + type: string + string_prop08: + type: map + description : another description + default: {"keyA" : "" , keyB : "abcd" } + entry_schema: + description: This is my property + type: string + string_prop09: + type: map + description : another description + default: {"keyA" : " " , keyB : "abcd" } + entry_schema: + description: This is my property + type: string + string_prop10: + type: map + description : another description + default: {"keyA" : " aaaa" , keyB : " bbbb" } + entry_schema: + description: This is my property + type: string + string_prop11: + type: map + description : another description + default: {"keyA" : "aaaa " , keyB : "bbbb " } + entry_schema: + description: This is my property + type: string + string_prop12: + type: map + description : another description + default: {"keyA" : " aaaa " , keyB : " bbbb ccccc " } + entry_schema: + description: This is my property + type: string + string_prop13: + type: map + description : another description + default: + keyA : "aaaa" + entry_schema: + description: This is my property + type: string + string_prop14: + type: map + description : another description + default: + keyA : " aaaa " + entry_schema: + description: This is my property + type: string + string_prop15: + type: map + description : another description + default: + keyA : AbcD + entry_schema: + description: This is my property + type: string + string_prop16: + type: map + description : another description + default: + keyA : AbcD + entry_schema: + description: This is my property + type: string + string_prop17: + type: map + description : another description + default: + keyA : AbcD + entry_schema: + description: This is my property + type: string + string_prop18: + type: map + description : another description + default: + keyA : <b>AbcD</b> + entry_schema: + description: This is my property + type: string + string_prop19: + type: map + description : another description + default: + keyA : <b>AbcD + entry_schema: + description: This is my property + type: string + string_prop20: + type: map + description : another description + default: + keyA : aaaa + keya : aaaa + Keya : Aaaa + KEYA : nnnn + entry_schema: + description: This is my property + type: string + string_prop21: + type: map + description : another description + default: + keyA : NULL + keyB : null + keyC : Null + entry_schema: + description: This is my property + type: string + string_prop22: + type: map + description : another description + default: + entry_schema: + description: This is my property + type: string + integer_prop01: + type: map + description : another description + default: {keyA : 1 , keyB : 1000} + entry_schema: + description: This is my property + type: integer + integer_prop02: + type: map + description : another description + default: {keyA : Null , keyB : NULL ,keyC : null } + entry_schema: + description: This is my property + type: integer + integer_prop03: + type: map + description : another description + default: {keyA : , keyB : -600} + entry_schema: + description: This is my property + type: integer + integer_prop03: + type: map + description : another description + default: {keyA : 800 , keyB : -600} + entry_schema: + description: This is my property + type: integer + integer_prop04: + type: map + description : another description + default: {keyA : , keyB : -600} + entry_schema: + description: This is my property + type: integer + integer_prop05: + type: map + description : another description + default: {keyA : 100 , keyB : 0 } + entry_schema: + description: This is my property + type: integer + integer_prop06: + type: map + description : another description + default: {keyA : 100 , keyB : 00} + entry_schema: + description: This is my property + type: integer + integer_prop07: + type: map + description : another description + default: {keyA : 100 , keyB : 100 } + entry_schema: + description: This is my property + type: integer + integer_prop08: + type: map + description : another description + default: + keyA : 100 + keyB : 200 + entry_schema: + description: This is my property + type: integer + integer_prop09: + type: map + description : another description + default: + keyA : 100 + keyB : 200 + entry_schema: + description: This is my property + type: integer + integer_prop10: + type: map + description : another description + default: + keyA : null + keyA : Null + keyB : 1111 + keyB : 2222 + entry_schema: + description: This is my property + type: integer + integer_prop11: + type: map + description : another description + default: + keyA : null + keyB : Null + keyC : NULL + keyD : + entry_schema: + description: This is my property + type: integer + integer_prop12: + type: map + description : another description + default: + entry_schema: + description: This is my property + type: integer + integer_prop13: + type: map + description : another description + default: {keyA : 100 , keyA : 200} + entry_schema: + description: This is my property + type: integer + boolean_prop01: + type: map + description : another description + default: {keyA : true , keyB : false , keyC : false } + entry_schema: + description: This is my property + type: boolean + boolean_prop02: + type: map + description : another description + default: {keyA : TRUE , keyB : FALSE , keyC : False } + entry_schema: + description: This is my property + type: boolean + boolean_prop03: + type: map + description : another description + default: + keyA : null + keyB : Null + keyC : NULL + keyD : + entry_schema: + description: This is my property + type: boolean + boolean_prop04: + type: map + description : another description + default: {keyA : Null , keyB : NULL ,keyC : null ,keyD : } + entry_schema: + description: This is my property + type: boolean + boolean_prop05: + type: map + description : another description + default: {keyA : true , keyB : false , keyC : false } + entry_schema: + description: This is my property + type: boolean + boolean_prop06: + type: map + description : another description + default: + keyA : true + keyB : true + keyC : false + entry_schema: + description: This is my property + type: boolean + boolean_prop07: + type: map + description : another description + default: + entry_schema: + description: This is my property + type: boolean + boolean_prop08: + type: map + description : another description + default: + keyA : false + keyA : true + keyB : true + keyB : false + entry_schema: + description: This is my property + type: boolean + boolean_prop09: + type: map + description : another description + default: {keyA : true,keyA : false,keyB : false,keyB : true} + entry_schema: + description: This is my property + type: boolean + float_prop01: + type: map + description : another description + default: {keyA : 1.20 , keyB : 3.56f , keyC : 33} + entry_schema: + description: This is my property + type: float + float_prop02: + type: map + description : another description + default: {keyA : 0.00, keyB : 0.0 , keyC : 0 } + entry_schema: + description: This is my property + type: float + float_prop03: + type: map + description : another description + default: {keyA : null, keyB : Null , keyC : NULL , keyD : } + entry_schema: + description: This is my property + type: float + float_prop04: + type: map + description : another description + default: {keyA : 1.20 , keyB : 3.56f , keyC : 33 } + entry_schema: + description: This is my property + type: float + float_prop05: + type: map + description : another description + default: + keyA : 33 + keyB : 1.2000 + keyC : 3.607f + keyD : 0 + entry_schema: + description: This is my property + type: float + float_prop06: + type: map + description : another description + default: + keyA : 33 + keyB : 1.2000 + keyC : 3.607f + entry_schema: + description: This is my property + type: float + float_prop07: + type: map + description : another description + default: + keyA : null + keyB : Null + keyC : NULL + keyD : + entry_schema: + description: This is my property + type: float + float_prop08: + type: map + description : another description + default: + entry_schema: + description: This is my property + type: float + float_prop09: + type: map + description : another description + default: + keyA : 3.5 + keyA : 0.01 + keyB : 3.6 + keyB : + entry_schema: + description: This is my property + type: float + float_prop10: + type: map + description : another description + default: {keyA : 0.0002} + entry_schema: + description: This is my property + type: float + float_prop11: + type: map + description : another description + default: {keyA : 0.000 , keyA : 003.56f, keyB : 33} + entry_schema: + description: This is my property + type: float + capabilities: + link: + type: tosca.capabilities.network.Linkable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importRequirementNameExistsOnParent.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importRequirementNameExistsOnParent.yml new file mode 100644 index 0000000000..e4d626fca6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importRequirementNameExistsOnParent.yml @@ -0,0 +1,34 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Compute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - Local_Storage: + capability: tosca.capabilities.Endpoint + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importRequirementNameExistsOnParent_DerivedFromMyCompute1.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importRequirementNameExistsOnParent_DerivedFromMyCompute1.yml new file mode 100644 index 0000000000..7ae9552d6a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/importRequirementNameExistsOnParent_DerivedFromMyCompute1.yml @@ -0,0 +1,34 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute2: + derived_from: org.openecomp.resource.MyCompute1 + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - Local_Storage: + capability: tosca.capabilities.Endpoint + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/missingCapInCapDefinition.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/missingCapInCapDefinition.yml new file mode 100644 index 0000000000..301116c985 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/missingCapInCapDefinition.yml @@ -0,0 +1,37 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +description: Template for vSCP -- connectable to OCS-FW -- temporary model for 1602 demo + +############################ +# The model capture four sub-components (VDUs) and their connectivity to six +# networks. +############################ + +node_types: + +#The node type for vSCP +#used for substitution mapping, or to describe vSCP resource in ASDC studio + org.openecomp.resource.vSCP-03-16: + derived_from: tosca.nodes.Root + requirements: + - sigtran_connection1: + capability: tosca.capabilities.Node + - sigtran_connection2: + capability: tosca.capabilities.Node + - ocs_connection: + capability: tosca.capabilities.Node + - oam_connection: + capability: tosca.capabilities.Node + - firewall: + capability: tosca.capabilities.Node + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: org.openecomp.capabilities.networkInterfaceNotFound
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/missingCapInReqDefinition.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/missingCapInReqDefinition.yml new file mode 100644 index 0000000000..d100dafdf9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/missingCapInReqDefinition.yml @@ -0,0 +1,25 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +description: Template for vSCP -- connectable to OCS-FW -- temporary model for 1602 demo + +############################ +# The model capture four sub-components (VDUs) and their connectivity to six +# networks. +############################ + +node_types: + +#The node type for vSCP +#used for substitution mapping, or to describe vSCP resource in ASDC studio + org.openecomp.resource.vSCP-03-16: + derived_from: tosca.nodes.Root + requirements: + - sigtran_connection1: + capability: org.openecomp.capabilities.networkInterfaceNotFound + - sigtran_connection2: + capability: tosca.capabilities.Node + - ocs_connection: + capability: tosca.capabilities.Node + - oam_connection: + capability: tosca.capabilities.Node + - firewall: + capability: tosca.capabilities.Node
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myChildCompute_NoReqCap.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myChildCompute_NoReqCap.yml new file mode 100644 index 0000000000..cc5b202bc7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myChildCompute_NoReqCap.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyChildCompute: + derived_from: org.openecomp.resource.MyFatherCompute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myChildWebApp_DerivedFromContainer.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myChildWebApp_DerivedFromContainer.yml new file mode 100644 index 0000000000..b7859d4c14 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myChildWebApp_DerivedFromContainer.yml @@ -0,0 +1,15 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyChildWebApp: + derived_from: org.openecomp.resource.MyWebApp + properties: + context_root: + type: string + capabilities: + app_endpoint: + type: tosca.capabilities.Endpoint + requirements: + - host: + capability: tosca.capabilities.Container + node: tosca.nodes.WebServer + relationship: tosca.relationships.HostedOn
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myCompute.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myCompute.yml new file mode 100644 index 0000000000..98bf9b7902 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myCompute.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeDerivedFromNotExists.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeDerivedFromNotExists.yml new file mode 100644 index 0000000000..2b2807395a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeDerivedFromNotExists.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.RootNotExists + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeIncorrectDefenitionVersionValue.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeIncorrectDefenitionVersionValue.yml new file mode 100644 index 0000000000..2fa3ad0c08 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeIncorrectDefenitionVersionValue.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: toscaSimpleYaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeIncorrectNameSpaceFormat.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeIncorrectNameSpaceFormat.yml new file mode 100644 index 0000000000..d1a613fff2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeIncorrectNameSpaceFormat.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource2.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeNoDefenitionVersion.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeNoDefenitionVersion.yml new file mode 100644 index 0000000000..8084d049db --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeNoDefenitionVersion.yml @@ -0,0 +1,34 @@ +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeOccurencySuccess.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeOccurencySuccess.yml new file mode 100644 index 0000000000..40ae610c06 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeOccurencySuccess.yml @@ -0,0 +1,77 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [1, UNBOUNDED] + - local_storage200: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [1, 1] + - local_storage300: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [1, 10] + - local_storage400: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [1, 10000000] + - local_storage500: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [2, 3] + - local_storageNoOccurrences600: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpointNoOccurrence : + type: tosca.capabilities.Endpoint.Admin + endpoint200 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [1, 2] + endpoint300 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [1, 1] + endpoint400 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [1, 10] + endpoint500 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [1, 10000000] + endpoint600 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [1, UNBOUNDED ] + endpoint700 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [2, 4 ] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeParssingFalure.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeParssingFalure.yml new file mode 100644 index 0000000000..b243add14a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeParssingFalure.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requiremens: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilitis: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeReqNameExistsOnDerived.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeReqNameExistsOnDerived.yml new file mode 100644 index 0000000000..43d92d1681 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeReqNameExistsOnDerived.yml @@ -0,0 +1,34 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute1: + derived_from: tosca.nodes.Compute + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - Local_Storage: #"local_storage" exists on parent + capability: tosca.capabilities.Endpoint + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeVF.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeVF.yml new file mode 100644 index 0000000000..90e771dab1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeVF.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.VF.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeWithNodeTypesTwice.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeWithNodeTypesTwice.yml new file mode 100644 index 0000000000..73b201eab4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeWithNodeTypesTwice.yml @@ -0,0 +1,42 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable + + org.openecomp.resource.example.TransactionSubsystem: + derived_from: tosca.nodes.Root + capabilities: + message_receiver: tosca.capabilities.Endpoint + requirements: + - database_endpoint: tosca.capabilities.Endpoint.Database
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeWithTopologyTemplate.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeWithTopologyTemplate.yml new file mode 100644 index 0000000000..c451eb2514 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myComputeWithTopologyTemplate.yml @@ -0,0 +1,44 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +topology_template: + description: Template of an application connecting to a database. + + node_templates: + web_app: + type: tosca.nodes.WebApplication.MyWebApp + requirements: + - host: web_server + - database_endpoint: db +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myFatherWebApp_derviedFromDocker.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myFatherWebApp_derviedFromDocker.yml new file mode 100644 index 0000000000..43a9a174f8 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myFatherWebApp_derviedFromDocker.yml @@ -0,0 +1,16 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyWebApp: + derived_from: tosca.nodes.WebApplication + properties: + context_root: + type: string + capabilities: + app_endpoint: + type: tosca.capabilities.Endpoint + requirements: + - HOSt: + capability: tosca.capabilities.Container.Docker + node: tosca.nodes.WebServer + relationship: tosca.relationships.HostedOn + occurrences: [ 1, 2 ] diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myLinkVL.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myLinkVL.yml new file mode 100644 index 0000000000..7c796d2801 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myLinkVL.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vl.MyLink: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myPortCP.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myPortCP.yml new file mode 100644 index 0000000000..ff255f2394 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/myPortCP.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.cp.MyPort: + derived_from: org.openecomp.resource.cp.Port + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage: + capability: tosca.capabilities.network.Bindable + node: org.openecomp.resource.vl.MyLink + relationship: tosca.relationships.BindTo + occurrences: [0, UNBOUNDED] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/noContent.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/noContent.yml new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/noContent.yml diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure01.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure01.yml new file mode 100644 index 0000000000..f007a0fed2 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure01.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [2, 0] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure02.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure02.yml new file mode 100644 index 0000000000..0487b63cb3 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure02.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [-1, 2] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure03.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure03.yml new file mode 100644 index 0000000000..7afdffa59d --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure03.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [1, -2] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure04.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure04.yml new file mode 100644 index 0000000000..f8a582f401 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure04.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [ , 2] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure05.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure05.yml new file mode 100644 index 0000000000..f1c6a93e1f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure05.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [ 1, ] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure06.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure06.yml new file mode 100644 index 0000000000..b0ef54b0eb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure06.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [ 0 , 0 ] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure07.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure07.yml new file mode 100644 index 0000000000..afd999f575 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure07.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [ @ , 1 ] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure08.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure08.yml new file mode 100644 index 0000000000..60efc99273 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure08.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [ 1.0 , 2.0 ] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure09.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure09.yml new file mode 100644 index 0000000000..d6ec7eabe6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure09.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [ "1" , "2" ] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure10.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure10.yml new file mode 100644 index 0000000000..27de429186 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure10.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [ ] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure11.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure11.yml new file mode 100644 index 0000000000..5bdae3a5f5 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure11.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + occurrences: [ UNBOUNDED , UNBOUNDED ] + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure31.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure31.yml new file mode 100644 index 0000000000..8c3034afce --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure31.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ 2, 1] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure32.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure32.yml new file mode 100644 index 0000000000..4b5eba9110 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure32.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ -1, 2] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure33.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure33.yml new file mode 100644 index 0000000000..9c42e22aa1 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure33.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ 1, -2] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure34.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure34.yml new file mode 100644 index 0000000000..49953b5834 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure34.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ , 2] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure35.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure35.yml new file mode 100644 index 0000000000..8d8985d7f7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure35.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ 1 , ] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure36.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure36.yml new file mode 100644 index 0000000000..12944507f6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure36.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ 0 , 0 ] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure37.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure37.yml new file mode 100644 index 0000000000..618c980e16 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure37.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ 0 , # ] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure38.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure38.yml new file mode 100644 index 0000000000..d0c4575c83 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure38.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ 1.0 , 2.0 ] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure39.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure39.yml new file mode 100644 index 0000000000..024338d380 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure39.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ "1" , "2" ] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure40.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure40.yml new file mode 100644 index 0000000000..a4a32ba772 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure40.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ ] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure41.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure41.yml new file mode 100644 index 0000000000..c3024a3ee4 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/occurencyFalure41.yml @@ -0,0 +1,35 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.MyCompute: + derived_from: tosca.nodes.Root + attributes: + private_address: + type: string + public_address: + type: string + networks: + type: map + entry_schema: + type: tosca.datatypes.network.NetworkInfo + ports: + type: map + entry_schema: + type: tosca.datatypes.network.PortInfo + requirements: + - local_storage100: + capability: tosca.capabilities.Attachment + node: tosca.nodes.BlockStorage + relationship: tosca.relationships.AttachesTo + capabilities: + host: + type: tosca.capabilities.Container + valid_source_types: [tosca.nodes.SoftwareComponent] + endpoint100 : + type: tosca.capabilities.Endpoint.Admin + occurrences: [ UNBOUNDED, UNBOUNDED ] + os: + type: tosca.capabilities.OperatingSystem + scalable: + type: tosca.capabilities.Scalable + binding: + type: tosca.capabilities.network.Bindable
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/softwareComponentReq11.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/softwareComponentReq11.yml new file mode 100644 index 0000000000..b9bda183e6 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/softwareComponentReq11.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vfc.vfc4: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + requirements: + - host: + capability: tosca.capabilities.Container + relationship: tosca.relationships.HostedOn + occurrences: [1, 1] diff --git a/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/softwareComponentReq12.yml b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/softwareComponentReq12.yml new file mode 100644 index 0000000000..9676bcdb6c --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/importToscaResourceByCreateUrl/softwareComponentReq12.yml @@ -0,0 +1,17 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +node_types: + org.openecomp.resource.vfc.vfc1: + derived_from: tosca.nodes.Root + properties: + # domain-specific software component version + component_version: + type: version + required: false + admin_credential: + type: tosca.datatypes.Credential + required: false + requirements: + - host: + capability: tosca.capabilities.Container + relationship: tosca.relationships.HostedOn + occurrences: [1, 2] diff --git a/asdc-tests/src/test/resources/CI/tests/testCsarAPI/topology.txt b/asdc-tests/src/test/resources/CI/tests/testCsarAPI/topology.txt new file mode 100644 index 0000000000..f46af26605 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/testCsarAPI/topology.txt @@ -0,0 +1 @@ +{"id":"c25811fc-e03f-401d-93ca-45d9bd312703","delegateId":"17710a88-f3d8-483d-aded-afee2906a8c1","delegateType":"topologytemplate","dependencies":[{"name":"tosca-normative-types-softwareComponent","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-webServer","version":"1.0.0.wd03-SNAPSHOT"},{"name":"apache-type","version":"2.0.0-SNAPSHOT"},{"name":"tosca-normative-types-compute","version":"1.0.0.wd03-SNAPSHOT"},{"name":"tosca-normative-types-root","version":"1.0.0.wd03-SNAPSHOT"}],"nodeTemplates":[{"key":"Compute_2","value":{"type":"tosca.nodes.Compute","name":null,"properties":{"disk_size":null,"num_cpus":null,"os_distribution":null,"os_arch":null,"mem_size":null,"os_type":null,"os_version":null},"attributes":{"ip_address":null,"tosca_id":null,"tosca_name":null},"relationships":null,"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"network":{"type":"tosca.capabilities.Connectivity","properties":null}},"capabilities":{"host":{"type":"tosca.capabilities.Container","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null},"attach":{"type":"tosca.capabilities.Attachment","properties":null},"scalable":{"type":"tosca.capabilities.Scalable","properties":{"max_intances":{"value":"1","definition":false},"default_instances":{"value":"1","definition":false},"min_intances":{"value":"1","definition":false}}}},"artifacts":null}},{"key":"Apache","value":{"type":"alien.nodes.Apache","name":null,"properties":{"port":"80","document_root":"/var/www","version":"2.4"},"attributes":{"tosca_id":null,"tosca_name":null},"relationships":{"attachToCompute_2":{"type":"tosca.relationships.AttachTo","target":"Compute_2","requirementName":"dependency","requirementType":"tosca.capabilities.Root","targetedCapabilityName":"attach"}},"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"host":{"type":"tosca.nodes.Compute","properties":null}},"capabilities":{"secure_endpoint":{"type":"tosca.capabilities.Endpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"app_endpoint":{"type":"tosca.capabilities.Endpoint","properties":{"port":null,"protocol":{"value":"tcp","definition":false},"url_path":null,"secure":{"value":"false","definition":false}}},"host":{"type":"alien.capabilities.ApacheContainer","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null}},"artifacts":null}},{"key":"Compute","value":{"type":"tosca.nodes.Compute","name":null,"properties":{"disk_size":null,"num_cpus":null,"os_distribution":null,"os_arch":null,"mem_size":null,"os_type":null,"os_version":null},"attributes":{"ip_address":null,"tosca_id":null,"tosca_name":null},"relationships":null,"requirements":{"dependency":{"type":"tosca.capabilities.Root","properties":null},"network":{"type":"tosca.capabilities.Connectivity","properties":null}},"capabilities":{"host":{"type":"tosca.capabilities.Container","properties":{"valid_node_types":null}},"root":{"type":"tosca.capabilities.Root","properties":null},"attach":{"type":"tosca.capabilities.Attachment","properties":null},"scalable":{"type":"tosca.capabilities.Scalable","properties":{"max_intances":{"value":"1","definition":false},"default_instances":{"value":"1","definition":false},"min_intances":{"value":"1","definition":false}}}},"artifacts":null}}]}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/testCsarAPI/topologyTemplate.txt b/asdc-tests/src/test/resources/CI/tests/testCsarAPI/topologyTemplate.txt new file mode 100644 index 0000000000..f3fdf0297b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/testCsarAPI/topologyTemplate.txt @@ -0,0 +1 @@ +{"id":"17710a88-f3d8-483d-aded-afee2906a8c1","name":"MichaelTest2","description":null,"topologyId":"c25811fc-e03f-401d-93ca-45d9bd312703"}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool10_false.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool10_false.yaml new file mode 100644 index 0000000000..b6faadd4f9 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool10_false.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: NO + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool11_false.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool11_false.yaml new file mode 100644 index 0000000000..7fb2923b04 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool11_false.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: 0 + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool12_false.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool12_false.yaml new file mode 100644 index 0000000000..fd451aa3af --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool12_false.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: OFF + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool1_true.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool1_true.yaml new file mode 100644 index 0000000000..a253e4c8d7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool1_true.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: t + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool2_true.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool2_true.yaml new file mode 100644 index 0000000000..ce273b3522 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool2_true.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: true + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool3_true.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool3_true.yaml new file mode 100644 index 0000000000..4680eb6996 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool3_true.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: on + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool4_true.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool4_true.yaml new file mode 100644 index 0000000000..1ed7781831 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool4_true.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: y + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool5_true.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool5_true.yaml new file mode 100644 index 0000000000..c0b42e6288 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool5_true.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: yes + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool6_true.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool6_true.yaml new file mode 100644 index 0000000000..24b862b751 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool6_true.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: 1 + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool7_false.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool7_false.yaml new file mode 100644 index 0000000000..7bad8efd6f --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool7_false.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: F + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool8_false.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool8_false.yaml new file mode 100644 index 0000000000..8b35e2adf7 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool8_false.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: FALSE + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool9_false.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool9_false.yaml new file mode 100644 index 0000000000..2768e0d480 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_bool9_false.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: N + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_number1.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_number1.yaml new file mode 100644 index 0000000000..fc7f84ca81 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_number1.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: number + description: city name + default: 12 + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_number2.yaml b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_number2.yaml new file mode 100644 index 0000000000..28ec3358be --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/tmp/positive_artifact_number2.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: number + description: city name + default: 12.12 + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/uploadComponent/images/mysql.png b/asdc-tests/src/test/resources/CI/tests/uploadComponent/images/mysql.png Binary files differnew file mode 100644 index 0000000000..8e02f49b7b --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/uploadComponent/images/mysql.png diff --git a/asdc-tests/src/test/resources/CI/tests/uploadComponent/mysql.yml b/asdc-tests/src/test/resources/CI/tests/uploadComponent/mysql.yml new file mode 100644 index 0000000000..a2eb4d423a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/uploadComponent/mysql.yml @@ -0,0 +1,85 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0_wd03 +description: MySQL RDBMS installation on a specific mounted volume path. +template_name: mysql-uploadComponent +template_version: 1.1.1-SNAPSHOT +template_author: FastConnect + +imports: + - "tosca-normative-types-root:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-compute:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-database:1.0.0.wd03-SNAPSHOT" + - "tosca-normative-types-DBMS:1.0.0.wd03-SNAPSHOT" + +node_types: + alien.nodes.Mysql-uploadComponent: + derived_from: tosca.nodes.Database + description: > + A node to install MySQL v5.5 database with data + on a specific attached volume. + capabilities: + host: + type: alien.capabilities.MysqlDatabase + properties: + valid_node_types: [ tosca.nodes.WebApplication ] + requirements: + - host: tosca.nodes.Compute + type: tosca.relationships.HostedOn + tags: + icon: /images/mysql.png + properties: + db_port: + type: integer + default: 3306 + description: The port on which the underlying database service will listen to data. + db_name: + type: string + required: true + default: wordpress + description: The logical name of the database. + db_user: + type: string + default: pass + description: The special user account used for database administration. + db_password: + type: string + default: pass + description: The password associated with the user account provided in the ‘db_user’ property. + bind_address: + type: boolean + default: true + required: false + description: If true,the server accepts TCP/IP connections on all server host IPv4 interfaces. + storage_path: + type: string + default: /mountedStorage + constraints: + - valid_values: [ "/mountedStorage", "/var/mysql" ] + interfaces: + Standard: + create: scripts/install_mysql.sh + start: + inputs: + VOLUME_HOME: { get_property: [SELF, storage_path] } + PORT: { get_property: [SELF, db_port] } + DB_NAME: { get_property: [SELF, db_name] } + DB_USER: { get_property: [SELF, db_user] } + DB_PASSWORD: { get_property: [SELF, db_password] } + BIND_ADRESS: { get_property: [SELF, bind_address] } + implementation: scripts/start_mysql.sh + fastconnect.cloudify.extensions: + start_detection: + inputs: + PORT: { get_property: [SELF, db_port] } + implementation: scripts/mysql_start_detection.groovy + artifacts: + - scripts: scripts + type: tosca.artifacts.File + +capability_types: + alien.capabilities.MysqlDatabase: + derived_from: tosca.capabilities.Container + +artifact_types: + tosca.artifacts.GroovyScript: + description: A groovy script (.groovy file) + file_ext: [groovy] diff --git a/asdc-tests/src/test/resources/CI/tests/uploadComponent/scripts/install_mysql.sh b/asdc-tests/src/test/resources/CI/tests/uploadComponent/scripts/install_mysql.sh new file mode 100644 index 0000000000..400bcf40cb --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/uploadComponent/scripts/install_mysql.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +echo "Debian based MYSQL install 5..." +LOCK="/tmp/lockaptget" + +while true; do + if mkdir "${LOCK}" &>/dev/null; then + echo "MySQL take the lock" + break; + fi + echo "Waiting the end of one of our recipes..." + sleep 0.5 +done + +while sudo fuser /var/lib/dpkg/lock >/dev/null 2>&1 ; do + echo "Waiting for other software managers to finish..." + sleep 0.5 +done +sudo rm -f /var/lib/dpkg/lock + +sudo apt-get update || (sleep 15; sudo apt-get update || exit ${1}) +sudo DEBIAN_FRONTEND=noninteractive apt-get -y install mysql-server-5.5 pwgen || exit ${1} +rm -rf "${LOCK}" + +sudo /etc/init.d/mysql stop +sudo rm -rf /var/lib/apt/lists/* +sudo rm -rf /var/lib/mysql/* +echo "MySQL Installation complete."
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/uploadComponent/scripts/start_mysql.sh b/asdc-tests/src/test/resources/CI/tests/uploadComponent/scripts/start_mysql.sh new file mode 100644 index 0000000000..648bd45756 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/uploadComponent/scripts/start_mysql.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +echo "------------------------ ENV ------------------------" +echo "ENV VAR USED VOLUME_HOME : $VOLUME_HOME" +echo "ENV VAR USED PORT : $PORT" +echo "ENV VAR USED DB_NAME : $DB_NAME" +echo "ENV VAR USED DB_USER : $DB_USER" +echo "ENV VAR USED DB_PASSWORD : $DB_PASSWORD" +echo "---------------------------- ------------------------" + +CURRENT_PATH=`dirname "$0"` + +function StartMySQL { + echo "Starting MYSQL..." + sudo /etc/init.d/mysql stop + sudo /usr/bin/mysqld_safe > /dev/null 2>&1 & + RET=1 + while [[ RET -ne 0 ]]; do + echo "=> Waiting for confirmation of MySQL service startup" + sleep 5 + sudo mysql -uroot -e "status" > /dev/null 2>&1 + RET=$? + done +} + +function AllowFileSystemToMySQL { + MYSQL_DATA_DIR=$VOLUME_HOME/data + MYSQL_LOG=$VOLUME_HOME/logs + + echo "Setting data directory to $MYSQL_DATA_DIR an logs to $MYSQL_LOG ..." + if sudo test ! -d $MYSQL_DATA_DIR; then + echo "Creating DATA dir > $MYSQL_DATA_DIR ..." + sudo mkdir -p $MYSQL_DATA_DIR + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_DATA_DIR + fi + if sudo test ! -d $MYSQL_LOG; then + echo "Creating LOG dir > $MYSQL_LOG ..." + sudo mkdir -p $MYSQL_LOG + # mysql as owner and group owner + sudo chown -R mysql:mysql $MYSQL_LOG + fi + + # edit app mysql permission in : /etc/apparmor.d/usr.sbin.mysqld + COUNT_LINE=`sudo cat /etc/apparmor.d/usr.sbin.mysqld | wc -l` + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_DATA_DIR/** rwk," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/ r," /etc/apparmor.d/usr.sbin.mysqld + sudo sed -i "$(($COUNT_LINE)) i $MYSQL_LOG/** rwk," /etc/apparmor.d/usr.sbin.mysqld + + # reload app permission manager service + sudo service apparmor reload +} + +function UpdateMySQLConf { + echo "Updating MySQL conf files [DATA, LOGS]..." + sudo sed -i "s:/var/lib/mysql:$MYSQL_DATA_DIR:g" /etc/mysql/my.cnf + sudo sed -i "s:/var/log/mysql/error.log:$MYSQL_LOG/error.log:g" /etc/mysql/my.cnf + sudo sed -i "s:3306:$PORT:g" /etc/mysql/my.cnf + + if sudo test ! -f /usr/share/mysql/my-default.cnf; then + sudo cp /etc/mysql/my.cnf /usr/share/mysql/my-default.cnf + fi + if sudo test ! -f /etc/mysql/conf.d/mysqld_charset.cnf; then + sudo cp $configs/mysqld_charset.cnf /etc/mysql/conf.d/mysqld_charset.cnf + fi + + if [ "$BIND_ADRESS" == "true" ]; then + sudo sed -i "s/bind-address.*/bind-address = 0.0.0.0/" /etc/mysql/my.cnf + fi +} + +function InitMySQLDb { + # create database DB_NAME + if [ "$DB_NAME" ]; then + echo "INIT DATABASE $DB_NAME" + sudo mysql -u root -e "CREATE DATABASE $DB_NAME"; + fi + + # create user and give rights + if [ "$DB_USER" ]; then + echo "CREATE USER $DB_USER WITH PASSWORD $DB_PASSWORD AND GRAND RIGHTS ON $DB_NAME" + sudo mysql -uroot -e "CREATE USER '${DB_USER}'@'%' IDENTIFIED BY '$DB_PASSWORD'" + sudo mysql -uroot -e "GRANT ALL PRIVILEGES ON ${DB_NAME}.* TO '${DB_USER}'@'%' WITH GRANT OPTION" + sudo mysql -uroot -e "FLUSH PRIVILEGES" + fi +} + +# Create a new database path to the attched volume +if sudo test ! -d $VOLUME_HOME/data; then + echo "=> An empty or uninitialized MySQL volume is detected in $VOLUME_HOME/data" + AllowFileSystemToMySQL + UpdateMySQLConf + echo "=> Init new database path to $MYSQL_DATA_DIR" + sudo mysql_install_db --basedir=/usr --datadir=$MYSQL_DATA_DIR + echo "=> MySQL database initialized !" +else + echo "=> Using an existing volume of MySQL" + AllowFileSystemToMySQL + UpdateMySQLConf +fi + +# Finally start MySQL with new configuration +StartMySQL +InitMySQLDb
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/artifact_unsupported.yaml b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/artifact_unsupported.yaml new file mode 100644 index 0000000000..764b8d4c58 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/artifact_unsupported.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: number123 + description: city name + default: 12.12 + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_bool1.yaml b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_bool1.yaml new file mode 100644 index 0000000000..19119f3d9a --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_bool1.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: K + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_bool2.yaml b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_bool2.yaml new file mode 100644 index 0000000000..f9c09a4fed --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_bool2.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: boolean + description: city name + default: 11 + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_number1.yaml b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_number1.yaml new file mode 100644 index 0000000000..9a489879cc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_number1.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: number + description: city name + default: 1.2Noo + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_number2.yaml b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_number2.yaml new file mode 100644 index 0000000000..4c0e07affc --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_number2.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: number + description: city name + default: 1 2 3 + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_string1.yaml b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_string1.yaml new file mode 100644 index 0000000000..f52ef04712 --- /dev/null +++ b/asdc-tests/src/test/resources/CI/tests/yamlFieldsValidation/negative_artifact_string1.yaml @@ -0,0 +1,140 @@ +heat_template_version: 2013-05-23 +################################# +# +# Changes in v0.2: +# - Unique availability zone for each VM +# - LAN8 and SLAN networks removed according to latest Prod/Type I diagram +# - 2 DB VMs added +# - Images corrected +# - VM start-up order: SMP->DB->BE->FE (no error handling yet) +# - Provisioning scripts placeholders +# +################################# + +description: ASC Template + +parameters: + city_name: + type: string + description: city name + default: שלום + address: + type: string + description: address + default: Alonim + home_number: + type: number + description: home_number + default: 8 +resources: +# scp_be_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_be_wait_handle } +# count: 5 +# timeout: 300 +# scp_be_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# scp_fe_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: scp_fe_wait_handle } +# count: 2 +# timeout: 300 +# scp_fe_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# smp_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: smp_wait_handle } +# count: 2 +# timeout: 300 +# smp_wait_handle: +# type: OS::Heat::WaitConditionHandle +# +# db_wait_condition: +# type: OS::Heat::WaitCondition +# properties: +# handle: { get_resource: db_wait_handle } +# count: 2 +# timeout: 300 +# db_wait_handle: +# type: OS::Heat::WaitConditionHandle + + FE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + BE_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + SMP_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + DB_Affinity: + type: OS::Nova::ServerGroup + properties: + policies: ["anti-affinity"] + + FE_Clustering_KA: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_fe_cluster_net_id } + + FE_Clustering_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: FE_Clustering_KA } + cidr: { get_param: int_vscp_fe_cluster_cidr } + + Clustering_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_cluster_net_id } + + Clustering_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: Clustering_Network } + cidr: { get_param: int_vscp_cluster_cidr } + + DB_Network: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: int_vscp_db_network_net_id } + + DB_Network_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: DB_Network } + cidr: { get_param: int_vscp_db_network_cidr } + + server_scp_be0: + type: OS::Nova::Server +# depends on: db_wait_condition + properties: + name: { get_param: vm_scp_be0_name } + image: { get_param: image_scp_be_id } +# availability_zone: { get_param: availability_zone_be0 } + flavor: { get_param: flavor_scp_be_id } + scheduler_hints: { group: { get_resource: BE_Affinity } } + networks: + - port: { get_resource: be0_port_3 } + - port: { get_resource: be0_port_4 } + - port: { get_resource: be0_port_5 } + - port: { get_resource: be0_port_7 } + metadata: + vnf_id: { get_param: vnf_id } + user_data: + str_replace: + template: | + #!/bin/bash + #todo: provision $vm_name + wc_notify --data-binary '{"status": "SUCCESS"}' + params: + $vm_name: {get_param: vm_scp_be0_name} +# wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] } diff --git a/asdc-tests/src/test/resources/config.json b/asdc-tests/src/test/resources/config.json new file mode 100644 index 0000000000..71c9d35e59 --- /dev/null +++ b/asdc-tests/src/test/resources/config.json @@ -0,0 +1,12 @@ +{ + +catalogBeHost: behost, +catalogFeHost: fehost, +esHost: eshost, +catalogFePort: 8080, +catalogBePort: 8080, +esPort: 9200, +resourceConfigDir: "src/test/resources/CI/tests", +componentsConfigDir: "src/test/resources/CI/components" + +}
\ No newline at end of file diff --git a/asdc-tests/src/test/resources/logback-test.xml b/asdc-tests/src/test/resources/logback-test.xml new file mode 100644 index 0000000000..03ce9d1243 --- /dev/null +++ b/asdc-tests/src/test/resources/logback-test.xml @@ -0,0 +1,13 @@ +<!-- only one line, shut up logback ! --> +<configuration> + <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <Pattern> + %d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n + </Pattern> + </encoder> + </appender> + <root level="off"> + <appender-ref ref="STDOUT" /> + </root> +</configuration>
\ No newline at end of file |