From 33989588efca79fa1a347da0a1f72cbf129e36f0 Mon Sep 17 00:00:00 2001 From: Koichi Edagawa Date: Wed, 9 Nov 2022 17:27:46 +0900 Subject: [PATCH] Add Xtesting for API conformance based on NFV-TST This patch adds Xtesting code which integrates API conformance testing based on ETSI NFV-TST 010 with O-RAN SC testing. Issue-ID: SMO-77 Signed-off-by: Koichi Edagawa Change-Id: I90922a7f76f7aa022ea6d27447b908494d894ac1 --- .../CNFDeployment/CnfLcmMntOperationKeywords.robot | 26 +++++++++ .../IndividualCnfLcmOperationOccurrence.robot | 28 ++++++++++ .../CNFDeployment/environment/configuration.txt | 39 ++++++++++++++ .../CNFDeployment/environment/scaleVariables.txt | 6 +++ .../SOL003/CNFDeployment/environment/variables.txt | 57 ++++++++++++++++++++ .../xtesting/api-tests/SOL003/cnflcm/cnflcm.robot | 13 +++++ .../api-tests/SOL003/cnflcm/cnflcm_keywords.robot | 46 ++++++++++++++++ .../SOL003/cnflcm/environment/configuration.txt | 45 ++++++++++++++++ .../SOL003/cnflcm/environment/scaleVariables.txt | 6 +++ .../SOL003/cnflcm/environment/variables.txt | 59 +++++++++++++++++++++ .../api-tests/SOL003/cnflcm/jsons/inst.json | 16 ++++++ .../SOL005/CNFPrecondition/packageTest.sh | 43 +++++++++++++++ .../CNFPrecondition/package_without_helm.zip | Bin 0 -> 18209 bytes .../SOL005/CNFPrecondition/vnfpackage.zip | Bin 0 -> 20714 bytes tacker/tacker/tests/xtesting/requirements.txt | 7 +++ tacker/tacker/tests/xtesting/testcases.yaml | 30 +++++++++++ 16 files changed, 421 insertions(+) create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/CnfLcmMntOperationKeywords.robot create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/IndividualCnfLcmOperationOccurrence.robot create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/configuration.txt create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/scaleVariables.txt create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/variables.txt create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm.robot create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm_keywords.robot create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/configuration.txt create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/scaleVariables.txt create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/variables.txt create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/jsons/inst.json create mode 100755 tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/packageTest.sh create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/package_without_helm.zip create mode 100644 tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/vnfpackage.zip create mode 100644 tacker/tacker/tests/xtesting/requirements.txt create mode 100644 tacker/tacker/tests/xtesting/testcases.yaml diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/CnfLcmMntOperationKeywords.robot b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/CnfLcmMntOperationKeywords.robot new file mode 100644 index 0000000..70b5246 --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/CnfLcmMntOperationKeywords.robot @@ -0,0 +1,26 @@ +*** Settings *** +Resource environment/configuration.txt +Resource environment/variables.txt +Library MockServerLibrary +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library OperatingSystem +Library BuiltIn +Library JSONLibrary +Library Collections +Library JSONSchemaLibrary schemas/ +Library Process +Library String + +*** Keywords *** +Get All Pods + Log Status information for all the pods. + GET api/v1/pods + ${outputResponse}= Output response + Log ${outputResponse} + Set Global Variable ${response} ${outputResponse} + +Get Specific Pod + Log Status information of a specific Pod. + GET ${PODS_SCHEMA}://${PODS_HOST}:${PODS_PORT}/api/v1/namespaces/${namespaces}/pods/${name} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/IndividualCnfLcmOperationOccurrence.robot b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/IndividualCnfLcmOperationOccurrence.robot new file mode 100644 index 0000000..1e02e42 --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/IndividualCnfLcmOperationOccurrence.robot @@ -0,0 +1,28 @@ +*** Settings *** +Resource environment/configuration.txt +Resource environment/variables.txt +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library JSONLibrary +Library JSONSchemaLibrary schemas/ +Resource CnfLcmMntOperationKeywords.robot + +*** Test Cases *** +Get All Pods + [Documentation] Test ID: 7.3.1.12.7 + ... Test title: Get All Pods + ... Test objective: The objective is to get the data of All Pods + ... Pre-conditions: none + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Get All Pods + +Get Specific Pod + [Documentation] Test ID: 7.3.1.12.8 + ... Test title: Get Specific Pod + ... Test objective: The objective is to get the data of a specific Pod + ... Pre-conditions: none + ... Config ID: Config_prod_VNFM + ... Applicability: none + ... Post-Conditions: none + Get Specific Pod diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/configuration.txt b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/configuration.txt new file mode 100644 index 0000000..c890d4f --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/configuration.txt @@ -0,0 +1,39 @@ +*** Variables *** +${VNFM_HOST} localhost # Hostname of the VNFM +${VNFM_PORT} 8080 # Listening port of the VNFM +${VNFM_SCHEMA} http +${ACCEPT} application/json +${ACCEPT_JSON} application/json +${CONTENT_TYPE} application/json +${AUTHORIZATION_HEADER} Authorization +${AUTHORIZATION_TOKEN} Bearer QWxhZGRpbjpvcGVuIHNlc2FtZQ== +${AUTH_USAGE} 1 +${CONTENT_TYPE_PATCH} application/merge-patch+json + +${PODS_SCHEMA} http +${PODS_HOST} localhost # Hostname of the VNFM +${PODS_PORT} 8080 # Listening port of the VNFM + +${apiRoot} / +${apiName} vnflcm +${apiVersion} v1 + +${CancelMode} GRACEFUL +${VNFM_DUPLICATION} 0 + +${NFVO_HOST} localhost # Hostname of the NFVO +${NFVO_PORT} 8081 # Listening port of the NFVO +${NFVO_SCHEMA} https +${WRONG_AUTHORIZATION} Bearer XXXXXWRONGXXXXX +${SINGLE_FILE_VNFD} 1 # If VNFD is PLAIN TEXT +${ACCEPT_PLAIN} text/plain +${ACCEPT_ZIP} application/zip +${vnfPkgId_processing} 007c111c-38a1-42c0-a666-7475ecb1567c +${ARTIFACT_TYPE} application/octet-stream +${ARTIFACT_ID} artifactId +${WRONG_ACCEPT} application/json +${SYNC_MODE} 0 +${sleep_interval} 20s +${callback_uri} http://localhost +${callback_port} 9091 +${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/scaleVariables.txt b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/scaleVariables.txt new file mode 100644 index 0000000..50d42ad --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/scaleVariables.txt @@ -0,0 +1,6 @@ +*** variables *** +${LccnSubscriptions} +${scaleInfo} +${element} +${aspectId} +${scaleOutResponse} diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/variables.txt b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/variables.txt new file mode 100644 index 0000000..0cf01d7 --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/environment/variables.txt @@ -0,0 +1,57 @@ +*** Variables *** +${instantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${anotherInstantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${notInstantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${notExistingVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${vnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${subscriptionId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${conflicVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f + +${invalid_etag} invalid etag + +${namespaces} default +${name} vdu2 + +${vnfLcmOpOccId} 6fc3539c-e602-4afa-8e13-962fb5a7d81d +${notExistingVnfLcmOpOccId} 6fc3539c-e602-4afa-8e13-962fb5a7d81d +${vnfLcmOpOccIdNotStartingProcessingRollingback} 6fc3539c-e602-4afa-8e13-962fb5a7d81d +${vnfLcmOpOccIdNotFailedTemp} 6fc3539c-e602-4afa-8e13-962fb5a7d81d + +${VnfLcmOperationOccurrenceNotification} {} +${VnfIdentifierCreationNotification} {} +${VnfIdentifierDeletionNotification} {} +${response} {} +${json} {} +${requestedFlavour} test + +${sub_filter} filter +${sub_filter_invalid} filter_invalid + +${fields} criteria,objectInstanceIds + +${vnfInstanceName} Test-VnfInstance +${vnfInstanceDescription} description vnf +${vnfInstanceDescription_Update} Updated description vnf +${vnfPkgId_processing} 007c111c-38a1-42c0-a666-7475ecb1567c + +${changeVnfFlavourRequest} {} +${changeVnfOperateRequest} {} +${requestedState} test +${changeVnfExtConnectivityRequest} {} +${patchBodyRequest} {} +${total_polling_time} 2 min +${polling_interval} 10 sec + +${notification_request} [] +${notification_response} [] + +${sleep_interval} 20s + +${callback_endpoint} /endpoint +${callback_endpoint_fwd} /endpoint/check +${callback_endpoint_error} /endpoint_404 + +${callback_uri} http://localhost +${callback_port} 9091 + +${nextPageUri} someuri diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm.robot b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm.robot new file mode 100644 index 0000000..d7454e0 --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm.robot @@ -0,0 +1,13 @@ +*** Settings *** +Resource environment/configuration.txt +Resource environment/variables.txt +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library JSONLibrary +Library JSONSchemaLibrary schemas/ +Resource cnflcm_keywords.robot + +*** Test Cases *** +Create and Instantiate a new VNFInstance + [Documentation] Test ID: 7.3.1.12.2 + Create a new cnfInstance + POST instantiate individual cnfInstance diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm_keywords.robot b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm_keywords.robot new file mode 100644 index 0000000..c798c88 --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm_keywords.robot @@ -0,0 +1,46 @@ +*** Settings *** +Resource environment/configuration.txt +Resource environment/variables.txt +Resource environment/scaleVariables.txt +Library MockServerLibrary +Library REST ${VNFM_SCHEMA}://${VNFM_HOST}:${VNFM_PORT} ssl_verify=false +Library OperatingSystem +Library BuiltIn +Library JSONLibrary +Library Collections +Library JSONSchemaLibrary schemas/ +Library Process +Library String + +*** Keywords *** +Create a new cnfInstance + Run Process curl -X POST -H 'Content-Type:${ACCEPT_JSON}' --data ${TOKEN_DATA} -i ${TOKEN_API} shell=True alias=result + ${result} Get Process Result result stdout=true + ${lines} = Get Lines Matching Pattern ${result} X-Subject-Token* + ${X-Subject-Token}= Run echo ${lines} | cut -d ' ' -f 2 + Log to Console ${vnfdId} + Run Process curl -g -i -X POST ${vnf_instance_api} -H "Accept: ${ACCEPT}" -H "Content-Type: ${ACCEPT_JSON}" -H "X-Auth-Token: ${X-Subject-Token}" -d '{"vnfdId": "${vnfdId}"}' shell=True alias=result + ${result} Get Process Result result stdout=true + ${line} = Get Line ${result} 7 + ${lines1} Create List ${line} + ${x} = Get From List ${lines1} 0 + ${json}= evaluate json.loads('''${x}''') json + ${Instance_ID} = Get From Dictionary ${json} id + Log to Console ${Instance_ID} + Set Global Variable ${Instance_ID} + + +POST instantiate individual cnfInstance + Log Trying to Instantiate a vnf Instance + Run Process curl -X POST -H 'Content-Type:${ACCEPT_JSON}' --data ${TOKEN_DATA} -i ${TOKEN_API} shell=True alias=result + ${result} Get Process Result result stdout=true + ${lines} = Get Lines Matching Pattern ${result} X-Subject-Token* + ${X-Subject-Token}= Run echo ${lines} | cut -d ' ' -f 2 + Set Headers {"Accept":"${ACCEPT}"} + Set Headers {"Content-pe": "${ACCEPT_JSON}"} + Set Headers {"${AUTHORIZATION_HEADER}":"${X-Subject-Token}"} + ${body}= Get File api-tests/SOL003/cnflcm/jsons/inst.json + Post ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${Instance_ID}/instantiate ${body} + ${outputResponse}= Output response + Set Global Variable ${response} ${outputResponse} + Log to Console ${outputResponse} diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/configuration.txt b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/configuration.txt new file mode 100644 index 0000000..f6e0c54 --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/configuration.txt @@ -0,0 +1,45 @@ +*** Variables *** +${VNFM_HOST} localhost # Hostname of the VNFM +${VNFM_PORT} 9890 # Listening port of the VNFM +${VNFM_SCHEMA} http +${ACCEPT} application/json +${ACCEPT_JSON} application/json +${CONTENT_TYPE} application/json +${AUTHORIZATION_HEADER} X-Auth-Token +${AUTHORIZATION_TOKEN} Bearer QWxhZGRpbjpvcGVuIHNlc2FtZQ== +${AUTH_USAGE} 1 +${CONTENT_TYPE_PATCH} application/merge-patch+json + +${PODS_SCHEMA} http +${PODS_HOST} localhost # Hostname of the VNFM +${PODS_PORT} 8080 # Listening port of the VNFM + +${vnf_instance_api} http://localhost:9890/vnflcm/v1/vnf_instances + +${apiRoot} / +${apiName} vnflcm +${apiVersion} v1 + +${CancelMode} GRACEFUL +${VNFM_DUPLICATION} 0 + +${TOKEN_DATA} '{"auth": {"scope": {"project": {"domain": {"id": "default"}, "name": "nfv"}}, "identity": {"password": {"user": {"domain": {"id": "default"}, "password": "devstack", "name": "nfv_user"}}, "methods": ["password"]}}}' + +${TOKEN_API} http://localhost/identity/v3/auth/tokens + +${NFVO_HOST} localhost # Hostname of the NFVO +${NFVO_PORT} 8081 # Listening port of the NFVO +${NFVO_SCHEMA} https +${WRONG_AUTHORIZATION} Bearer XXXXXWRONGXXXXX +${SINGLE_FILE_VNFD} 1 # If VNFD is PLAIN TEXT +${ACCEPT_PLAIN} text/plain +${ACCEPT_ZIP} application/zip +${vnfPkgId_processing} 007c111c-38a1-42c0-a666-7475ecb1567c +${ARTIFACT_TYPE} application/octet-stream +${ARTIFACT_ID} artifactId +${WRONG_ACCEPT} application/json +${SYNC_MODE} 0 +${sleep_interval} 20s +${callback_uri} http://localhost +${callback_port} 9091 +${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/scaleVariables.txt b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/scaleVariables.txt new file mode 100644 index 0000000..50d42ad --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/scaleVariables.txt @@ -0,0 +1,6 @@ +*** variables *** +${LccnSubscriptions} +${scaleInfo} +${element} +${aspectId} +${scaleOutResponse} diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/variables.txt b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/variables.txt new file mode 100644 index 0000000..1275453 --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/environment/variables.txt @@ -0,0 +1,59 @@ +*** Variables *** +${instantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${anotherInstantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${notInstantiatedVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${notExistingVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${vnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${subscriptionId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f +${conflicVnfInstanceId} 6fc3539c-e602-4afa-8e13-962fb5a7d81f + +${invalid_etag} invalid etag + +${namespaces} namespace +${name} name + +${vnfLcmOpOccId} 6fc3539c-e602-4afa-8e13-962fb5a7d81d +${notExistingVnfLcmOpOccId} 6fc3539c-e602-4afa-8e13-962fb5a7d81d +${vnfLcmOpOccIdNotStartingProcessingRollingback} 6fc3539c-e602-4afa-8e13-962fb5a7d81d +${vnfLcmOpOccIdNotFailedTemp} 6fc3539c-e602-4afa-8e13-962fb5a7d81d + +${VnfLcmOperationOccurrenceNotification} {} +${VnfIdentifierCreationNotification} {} +${VnfIdentifierDeletionNotification} {} +${response} {} +${json} {} +${requestedFlavour} test + +${sub_filter} filter +${sub_filter_invalid} filter_invalid + +${fields} criteria,objectInstanceIds + +${vnfInstanceName} Test-VnfInstance +${vnfInstanceDescription} description vnf +${vnfInstanceDescription_Update} Updated description vnf +${vnfPkgId_processing} 007c111c-38a1-42c0-a666-7475ecb1567c + +${changeVnfFlavourRequest} {} +${changeVnfOperateRequest} {} +${requestedState} test +${changeVnfExtConnectivityRequest} {} +${patchBodyRequest} {} +${total_polling_time} 2 min +${polling_interval} 10 sec + +${notification_request} [] +${notification_response} [] + +${sleep_interval} 20s + +${callback_endpoint} /endpoint +${callback_endpoint_fwd} /endpoint/check +${callback_endpoint_error} /endpoint_404 + +${callback_uri} http://localhost +${callback_port} 9091 + +${nextPageUri} someuri +${vnfPkgId} bf6ce418-af04-472d-89e0-66227115fae9 +${vnfdId} f671f008-908b-47b6-9c76-b9b30b2523f8 diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/jsons/inst.json b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/jsons/inst.json new file mode 100644 index 0000000..0af036e --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/jsons/inst.json @@ -0,0 +1,16 @@ +{ + "flavourId": "simple", + "additionalParams": { + "lcm-kubernetes-def-files": [ + "Files/kubernetes/deployment.yaml" + ], + "namespace": "default" + }, + "vimConnectionInfo": [ + { + "id": "8a3adb69-0784-43c7-833e-aab0b6ab4470", + "vimId": "08260b52-c3f6-47a9-bb1f-cec1f0d3956a", + "vimType": "kubernetes" + } + ] +} diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/packageTest.sh b/tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/packageTest.sh new file mode 100755 index 0000000..46d0f44 --- /dev/null +++ b/tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/packageTest.sh @@ -0,0 +1,43 @@ +#!/bin/sh + +variableFile=$1 +#curl command for token generation +curl -X POST -H 'Content-Type:application/json' --data '{"auth": {"scope": + {"project": {"domain": {"id": "default"}, "name": "nfv"}}, "identity": + {"password": {"user": {"domain": {"id": "default"}, "password": + "devstack", "name": "nfv_user"}}, "methods": ["password"]}}}' \ + -i http://localhost/identity/v3/auth/tokens > outtoken 2>&1 + +dos2unix outtoken 2>/dev/null +token=$(cat ./outtoken | grep "X-Subject-Token" | cut -d ' ' -f 2) + +#curl command for vnf package create +curl -g -i -X POST http://localhost:9890/vnfpkgm/v1/vnf_packages \ + -H "Accept: application/json" -H "Content-Type: application/json" \ + -H "X-Auth-Token: $token" -d '{}' > outtoken 2>&1 +dos2unix outtoken 2>/dev/null + +Packageid=$(cat ./outtoken | grep id | cut -d ' ' -f 2 |sed 's/.$//'|tail -c +2 | head -c -2) + +echo "$Packageid created" +#curl command for vnf package upload +curl -g -i -X PUT http://localhost:9890/vnfpkgm/v1/vnf_packages/$Packageid/package_content \ + -H "Accept: application/zip" -H "Content-Type: application/zip" \ + -H "User-Agent: python-tackerclient" -H "X-Auth-Token: $token" --data-binary "@vnfpackage.zip" + +echo "$Packageid uploaded" + +sleep 1 +curl -g -i -X GET http://localhost:9890/vnfpkgm/v1/vnf_packages/$Packageid \ + -H "Accept: application/json" -H "User-Agent: python-tackerclient" \ + -H "X-Auth-Token: $token" > outtoken 2>&1 +dos2unix outtoken 2>/dev/null + +vnfdid=$(cat ./outtoken | grep vnfdId | cut -d ' ' -f 15 |sed 's/.$//'|tail -c +2 | head -c -2) + +rm -rf outtoken +sed -i '/${vnfPkgId}/d' $variableFile +sed -i '/${vnfdId}/d' $variableFile + +echo "\${vnfPkgId} $Packageid" >> $variableFile # $variableFile environment file path where package ID will be added +echo "\${vnfdId} $vnfdid" >> $variableFile diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/package_without_helm.zip b/tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/package_without_helm.zip new file mode 100644 index 0000000000000000000000000000000000000000..36d497b475d16f969ba215024dbed15d6fb796cd GIT binary patch literal 18209 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 literal 0 HcmV?d00001 diff --git a/tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/vnfpackage.zip b/tacker/tacker/tests/xtesting/api-tests/SOL005/CNFPrecondition/vnfpackage.zip new file mode 100644 index 0000000000000000000000000000000000000000..9c740752c9645f91b57ad4a681ec8a4996a175a2 GIT binary patch literal 20714 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 bcelp>B~L~9?E(OxrF- + /opt/stack/tacker/tacker/tests/xtesting/api-tests/SOL003/cnflcm/cnflcm.robot + - case_name: second + project_name: xtesting + criteria: 100 + blocking: true + clean_flag: false + description: '' + run: + name: robotframework + args: + suites: + - >- + /opt/stack/tacker/tacker/tests/xtesting/api-tests/SOL003/CNFDeployment/IndividualCnfLcmOperationOccurrence.robot + -- 2.16.6