Library OperatingSystem
Library RequestsLibrary
Library ONAPLibrary.Utilities
-
+Library ONAPLibrary.Templating WITH NAME Templating
Resource common.robot
***Variables ***
${ASDC_CATALOG_SERVICE_DISTRIBUTION_STATE_PATH} /distribution-state
${ASDC_DISTRIBUTION_STATE_APPROVE_PATH} /approve
-${ASDC_CATALOG_RESOURCE_TEMPLATE} ${ASSETS_DIR}component_catalog_resource.template
-${ASDC_CATALOG_SERVICE_TEMPLATE} ${ASSETS_DIR}catalog_service.template
-${ASDC_ARTIFACT_UPLOAD_TEMPLATE} ${ASSETS_DIR}artifact_upload.template
-${ASDC_USER_REMARKS_TEMPLATE} ${ASSETS_DIR}user_remarks.template
-${DCAE_VFCMT_TEMPLATE} ${ASSETS_DIR}create_vfcmt.template
-${DCAE_COMPOSITION_TEMPLATE} ${ASSETS_DIR}dcae_composition.template
-${DCAE_MONITORING_CONFIGURATION_TEMPLATE} ${ASSETS_DIR}dcae_monitoring_configuration.template
-${ASDC_RESOURCE_INSTANCE_TEMPLATE} ${ASSETS_DIR}resource_instance.template
+${SDC_CATALOG_RESOURCE_TEMPLATE} component_catalog_resource.jinja
+${SDC_CATALOG_SERVICE_TEMPLATE} catalog_service.jinja
+${SDC_ARTIFACT_UPLOAD_TEMPLATE} artifact_upload.jinja
+${SDC_USER_REMARKS_TEMPLATE} user_remarks.jinja
+${SDC_RESOURCE_INSTANCE_TEMPLATE} resource_instance.jinja
${ASDC_BE_ENDPOINT} http://localhost:8080
[Documentation] Creates and returns data for ASDC Catalog Resource
[Arguments] ${resource_name} ${vendor_name}
${map}= Create Dictionary resource_name=${resource_name} vendor_name=${vendor_name}
- ${data}= json_templater.Fill JSON Template File ${ASDC_CATALOG_RESOURCE_TEMPLATE} ${map}
+ Templating.Create Environment sdc_catalog_resource ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_catalog_resource ${SDC_CATALOG_RESOURCE_TEMPLATE} ${map}
[Return] ${data}
# Based on testsuite/robot/resources/asdc_interface.robot's 'Post ASDC Resource Request' keyword
[Documentation] Runs an ASDC post request with MD5 Checksum header without authentication and returns the HTTP response
[Arguments] ${data_path} ${data} ${user}=${ASDC_DESIGNER_USER_ID} ${MY_ASDC_BE_ENDPOINT}=${ASDC_BE_ENDPOINT}
Log Creating session ${MY_ASDC_BE_ENDPOINT}
+ # This is needed to ensure that the data is in dict format - otherwise the checksum will not match
+ ${dict_data}= evaluate json.loads('''${data}''') json
${session}= Create Session asdc ${MY_ASDC_BE_ENDPOINT}
${uuid}= Generate UUID4
- ${data_string}= Evaluate json.dumps(${data}) json
+ ${data_string}= Evaluate json.dumps(${dict_data}) json
${md5checksum}= Evaluate md5.new('''${data_string}''').hexdigest() modules=md5
${base64md5checksum}= Evaluate base64.b64encode("${md5checksum}") modules=base64
${headers}= Create Dictionary Accept=application/json Content-Type=application/json USER_ID=${user} X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} Content-MD5=${base64md5checksum}
- ${resp}= Post Request asdc ${data_path} data=${data} headers=${headers}
+ ${resp}= Post Request asdc ${data_path} data=${dict_data} headers=${headers}
Log Received response from asdc: ${resp.text}
[Return] ${resp}
${blueprint_data} OperatingSystem.Get File ${ASSETS_DIR}${artifact}.yaml
${payloadData}= Evaluate base64.b64encode('''${blueprint_data}'''.encode('utf-8')) modules=base64
${dict}= Create Dictionary artifactLabel=${artifact} artifactName=${artifact}.yaml artifactType=DCAE_TOSCA artifactGroupType=DEPLOYMENT description=${artifact}.yaml payloadData=${payloadData}
- ${data}= Fill JSON Template File ${ASDC_ARTIFACT_UPLOAD_TEMPLATE} ${dict}
+ Templating.Create Environment sdc_artifact_upload ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_artifact_upload ${SDC_ARTIFACT_UPLOAD_TEMPLATE} ${dict}
# POST artifactUpload to resource
${resp}= Run ASDC MD5 Post Request Unauthenticated ${ASDC_CATALOG_RESOURCES_PATH}/${vf_id}/artifacts ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Documentation] Certifies an ASDC Catalog Resource by its id and returns the new id
[Arguments] ${catalog_resource_id} ${user_id}=${ASDC_TESTER_USER_ID}
${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
+ Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= Run ASDC Post Request Unauthenticated ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certify ${data} ${user_id}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp.json()['uniqueId']} ${resp.json()['uuid']}
[Documentation] Creates an ASDC Catalog Service for Monitoring Template with given name
[Arguments] ${service_name}
${map}= Create Dictionary service_name=${service_name}
- ${data}= Fill JSON Template File ${ASDC_CATALOG_SERVICE_TEMPLATE} ${map}
+ Templating.Create Environment sdc_catalog_service ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_catalog_service ${SDC_CATALOG_SERVICE_TEMPLATE} ${map}
${resp}= Run ASDC Post Request Unauthenticated ${ASDC_CATALOG_SERVICES_PATH} ${data}
Should Be Equal As Strings ${resp.status_code} 201
[Return] ${resp.json()['uniqueId']} ${resp.json()['uuid']}
${xoffset}= Set Variable ${xoffset+306}
${yoffset}= Set Variable ${yoffset+248}
${map}= Create Dictionary catalog_resource_id=${catalog_resource_id} catalog_resource_name=${catalog_resource_name} milli_timestamp=${milli_timestamp} posX=${xoffset} posY=${yoffset} originType=${resourceType}
- ${data}= Fill JSON Template File ${ASDC_RESOURCE_INSTANCE_TEMPLATE} ${map}
+ Templating.Create Environment sdc_resource_instance ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_resource_instance ${SDC_RESOURCE_INSTANCE_TEMPLATE} ${map}
${resp}= Run ASDC Post Request Unauthenticated ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_SERVICE_RESOURCE_INSTANCE_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 201
[Return] ${resp.json()['uniqueId']} ${resp.json()['name']}
[Documentation] Checks in an ASDC Catalog Service by its id
[Arguments] ${catalog_service_id}
${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
+ Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= Run ASDC Post Request Unauthenticated ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/checkin ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp.json()}
[Documentation] Requests certification of an ASDC Catalog Service by its id
[Arguments] ${catalog_service_id}
${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
+ Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= Run ASDC Post Request Unauthenticated ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certificationRequest ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp.json()}
[Documentation] Certifies an ASDC Catalog Service by its id and returns the new id
[Arguments] ${catalog_service_id}
${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
+ Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= Run ASDC Post Request Unauthenticated ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certify ${data} ${ASDC_TESTER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp.json()['uniqueId']}
[Documentation] Approves an ASDC Catalog Service by its id
[Arguments] ${catalog_service_id}
${map}= Create Dictionary user_remarks=Robot remarks
- ${data}= Fill JSON Template File ${ASDC_USER_REMARKS_TEMPLATE} ${map}
+ Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
+ ${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= Run ASDC Post Request Unauthenticated ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_SERVICE_DISTRIBUTION_STATE_PATH}${ASDC_DISTRIBUTION_STATE_APPROVE_PATH} ${data} ${ASDC_GOVERNOR_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp.json()}
--- /dev/null
+{
+ "artifactLabel":"{{artifactLabel}}",
+ "artifactName": "{{artifactName}}",
+ "artifactType": "{{artifactType}}",
+ "artifactGroupType": "{{artifactGroupType}}",
+ "description": "{{description}}",
+ "payloadData": "{{payloadData}}"
+}
+++ /dev/null
-{
- "artifactLabel":"${artifactLabel}",
- "artifactName": "${artifactName}",
- "artifactType": "${artifactType}",
- "artifactGroupType": "${artifactGroupType}",
- "description": "${description}",
- "payloadData": "${payloadData}"
-}
"icon": "defaulticon",
"componentInstancesProperties": {},
"componentInstancesAttributes": {},
- "name": "${service_name}",
+ "name": "{{service_name}}",
"tags": [
"robot-ete",
- "${service_name}"
+ "{{service_name}}"
],
"capabilities": {},
"requirements": {},
"icon": "defaulticon",
"componentInstancesProperties": {},
"componentInstancesAttributes": {},
- "name": "${resource_name}",
+ "name": "{{resource_name}}",
"tags": [
- "${resource_name}"
+ "{{resource_name}}"
],
"capabilities": {},
"requirements": {},
"deploymentArtifacts": {},
"componentType": "RESOURCE",
- "vendorName": "${vendor_name}",
+ "vendorName": "{{vendor_name}}",
"vendorRelease": "1.0",
"componentInstances": [],
"properties": [],
--- /dev/null
+{
+"name":"{{vfcmtName}}",
+"description":"{{description}}"
+}
+++ /dev/null
-{
-"name":"${vfcmtName}",
-"description":"${description}"
-}
{
- "cid": "${cid}",
+ "cid": "{{cid}}",
"flowType": "TCA Hi Lo",
"inputs": [],
"nodes": [
}
}
],
- "description": "/sdc/v1/catalog/resources/${vf_id}/toscaModel/",
- "id": "${vf_id}",
+ "description": "/sdc/v1/catalog/resources/{{vf_id}}/toscaModel/",
+ "id": "{{vf_id}}",
"name": "tca-docker",
"ndata": {
"label": "tca-docker",
{
"name": "feature",
"type": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
}
}
],
"hierarchy": [
{
- "id": "${vf_id}/tosca.dcae.nodes.dockerApp",
+ "id": "{{vf_id}}/tosca.dcae.nodes.dockerApp",
"name": "tosca.dcae.nodes.dockerApp"
},
{
- "id": "${vf_id}/tosca.dcae.nodes.Root",
+ "id": "{{vf_id}}/tosca.dcae.nodes.Root",
"name": "tosca.dcae.nodes.Root"
},
{
"description": "The TOSCA Node Type all other TOSCA base Node Types derive from",
- "id": "${vf_id}/tosca.nodes.Root",
+ "id": "{{vf_id}}/tosca.nodes.Root",
"name": "tosca.nodes.Root"
}
],
- "id": "${vf_id}/tosca.dcae.nodes.dockerApp.tca-docker",
- "itemId": "${vf_id}/tosca.dcae.nodes.dockerApp.tca-docker",
+ "id": "{{vf_id}}/tosca.dcae.nodes.dockerApp.tca-docker",
+ "itemId": "{{vf_id}}/tosca.dcae.nodes.dockerApp.tca-docker",
"name": "tosca.dcae.nodes.dockerApp.tca-docker",
"requirements": [
{
"capability": {
- "id": "${vf_id}/dcae.capabilities.dmmap.topic",
+ "id": "{{vf_id}}/dcae.capabilities.dmmap.topic",
"name": "dcae.capabilities.dmmap.topic"
},
- "id": "${vf_id}/stream_subscribe_0",
+ "id": "{{vf_id}}/stream_subscribe_0",
"name": "stream_subscribe_0",
"node": {
- "id": "${vf_id}/dcae.capabilities.dmmap.topic",
+ "id": "{{vf_id}}/dcae.capabilities.dmmap.topic",
"name": "dcae.capabilities.dmmap.topic"
},
"relationship": {
},
{
"capability": {
- "id": "${vf_id}/dcae.capabilities.dmmap.topic",
+ "id": "{{vf_id}}/dcae.capabilities.dmmap.topic",
"name": "dcae.capabilities.dmmap.topic"
},
- "id": "${vf_id}/stream_publish_0",
+ "id": "{{vf_id}}/stream_publish_0",
"name": "stream_publish_0",
"node": {
- "id": "${vf_id}/dcae.capabilities.dmmap.topic",
+ "id": "{{vf_id}}/dcae.capabilities.dmmap.topic",
"name": "dcae.capabilities.dmmap.topic"
},
"relationship": {
},
{
"capability": {
- "id": "${vf_id}/dcae.capabilities.dockerHost",
+ "id": "{{vf_id}}/dcae.capabilities.dockerHost",
"name": "dcae.capabilities.dockerHost"
},
- "id": "${vf_id}/host",
+ "id": "{{vf_id}}/host",
"name": "host",
"node": {
- "id": "${vf_id}/dcae.capabilities.dockerHost",
+ "id": "{{vf_id}}/dcae.capabilities.dockerHost",
"name": "dcae.capabilities.dockerHost"
},
"relationship": {
},
{
"capability": {
- "id": "${vf_id}/dcae.capabilities.composition.host",
+ "id": "{{vf_id}}/dcae.capabilities.composition.host",
"name": "dcae.capabilities.composition.host"
},
- "id": "${vf_id}/composition",
+ "id": "{{vf_id}}/composition",
"name": "composition",
"node": {
- "id": "${vf_id}/dcae.capabilities.composition.host",
+ "id": "{{vf_id}}/dcae.capabilities.composition.host",
"name": "dcae.capabilities.composition.host"
}
},
{
"capability": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
},
- "id": "${vf_id}/dependency",
+ "id": "{{vf_id}}/dependency",
"name": "dependency",
"node": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
},
"occurrences": [
}
}
],
- "description": "/sdc/v1/catalog/resources/${vf_id}/toscaModel/",
- "id": "${vf_id}",
+ "description": "/sdc/v1/catalog/resources/{{vf_id}}/toscaModel/",
+ "id": "{{vf_id}}",
"name": "topic0",
"ndata": {
"label": "topic0",
{
"name": "topic",
"type": {
- "id": "${vf_id}/dcae.capabilities.dmmap.topic",
+ "id": "{{vf_id}}/dcae.capabilities.dmmap.topic",
"name": "dcae.capabilities.dmmap.topic"
}
},
{
"name": "feature",
"type": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
}
}
],
"hierarchy": [
{
- "id": "${vf_id}/tosca.dcae.nodes.Root",
+ "id": "{{vf_id}}/tosca.dcae.nodes.Root",
"name": "tosca.dcae.nodes.Root"
},
{
"description": "The TOSCA Node Type all other TOSCA base Node Types derive from",
- "id": "${vf_id}/tosca.nodes.Root",
+ "id": "{{vf_id}}/tosca.nodes.Root",
"name": "tosca.nodes.Root"
}
],
- "id": "${vf_id}/tosca.dcae.nodes.dmaap.topic",
- "itemId": "${vf_id}/tosca.dcae.nodes.dmaap.topic",
+ "id": "{{vf_id}}/tosca.dcae.nodes.dmaap.topic",
+ "itemId": "{{vf_id}}/tosca.dcae.nodes.dmaap.topic",
"name": "tosca.dcae.nodes.dmaap.topic",
"requirements": [
{
"capability": {
- "id": "${vf_id}/dcae.capabilities.composition.host",
+ "id": "{{vf_id}}/dcae.capabilities.composition.host",
"name": "dcae.capabilities.composition.host"
},
- "id": "${vf_id}/composition",
+ "id": "{{vf_id}}/composition",
"name": "composition",
"node": {
- "id": "${vf_id}/dcae.capabilities.composition.host",
+ "id": "{{vf_id}}/dcae.capabilities.composition.host",
"name": "dcae.capabilities.composition.host"
}
},
{
"capability": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
},
- "id": "${vf_id}/dependency",
+ "id": "{{vf_id}}/dependency",
"name": "dependency",
"node": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
},
"occurrences": [
}
}
],
- "description": "/sdc/v1/catalog/resources/${vf_id}/toscaModel/",
- "id": "${vf_id}",
+ "description": "/sdc/v1/catalog/resources/{{vf_id}}/toscaModel/",
+ "id": "{{vf_id}}",
"name": "topic1",
"ndata": {
"label": "topic1",
{
"name": "topic",
"type": {
- "id": "${vf_id}/dcae.capabilities.dmmap.topic",
+ "id": "{{vf_id}}/dcae.capabilities.dmmap.topic",
"name": "dcae.capabilities.dmmap.topic"
}
},
{
"name": "feature",
"type": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
}
}
],
"hierarchy": [
{
- "id": "${vf_id}/tosca.dcae.nodes.Root",
+ "id": "{{vf_id}}/tosca.dcae.nodes.Root",
"name": "tosca.dcae.nodes.Root"
},
{
"description": "The TOSCA Node Type all other TOSCA base Node Types derive from",
- "id": "${vf_id}/tosca.nodes.Root",
+ "id": "{{vf_id}}/tosca.nodes.Root",
"name": "tosca.nodes.Root"
}
],
- "id": "${vf_id}/tosca.dcae.nodes.dmaap.topic",
- "itemId": "${vf_id}/tosca.dcae.nodes.dmaap.topic",
+ "id": "{{vf_id}}/tosca.dcae.nodes.dmaap.topic",
+ "itemId": "{{vf_id}}/tosca.dcae.nodes.dmaap.topic",
"name": "tosca.dcae.nodes.dmaap.topic",
"requirements": [
{
"capability": {
- "id": "${vf_id}/dcae.capabilities.composition.host",
+ "id": "{{vf_id}}/dcae.capabilities.composition.host",
"name": "dcae.capabilities.composition.host"
},
- "id": "${vf_id}/composition",
+ "id": "{{vf_id}}/composition",
"name": "composition",
"node": {
- "id": "${vf_id}/dcae.capabilities.composition.host",
+ "id": "{{vf_id}}/dcae.capabilities.composition.host",
"name": "dcae.capabilities.composition.host"
}
},
{
"capability": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
},
- "id": "${vf_id}/dependency",
+ "id": "{{vf_id}}/dependency",
"name": "dependency",
"node": {
- "id": "${vf_id}/tosca.capabilities.Node",
+ "id": "{{vf_id}}/tosca.capabilities.Node",
"name": "tosca.capabilities.Node"
},
"occurrences": [
{
- "name": "${name}",
+ "name": "{{name}}",
"description": "Created by robot",
- "templateUuid": "${template_uuid}",
- "vfiName": "${vfi_name}",
- "serviceUuid": "${service_uuid}",
+ "templateUuid": "{{template_uuid}}",
+ "vfiName": "{{vfi_name}}",
+ "serviceUuid": "{{service_uuid}}",
"contextType": "SERVICE",
"flowType": "TCA Hi Lo",
"cloneVFCMT": true,
--- /dev/null
+{
+ "uniqueId": "{{catalog_resource_id}}{{milli_timestamp}}",
+ "posX": {{posX}},
+ "posY": {{posY}},
+ "name": "{{catalog_resource_name}}",
+ "componentVersion": "1.0",
+ "originType": "{{originType}}",
+ "icon": "defaulticon",
+ "componentUid": "{{catalog_resource_id}}"
+}
+++ /dev/null
-{
- "uniqueId": "${catalog_resource_id}${milli_timestamp}",
- "posX": ${posX},
- "posY": ${posY},
- "name": "${catalog_resource_name}",
- "componentVersion": "1.0",
- "originType": "${originType}",
- "icon": "defaulticon",
- "componentUid": "${catalog_resource_id}"
-}
--- /dev/null
+{"userRemarks":"{{user_remarks}}"}
\ No newline at end of file
+++ /dev/null
-{"userRemarks":"${user_remarks}"}
\ No newline at end of file
*** Settings ***
Library json
Library ONAPLibrary.Utilities
-
-Resource json_templater.robot
+Library ONAPLibrary.Templating WITH NAME Templating
Resource common.robot
*** Variables ***
${DCAE_PATH} /dcae
${DCAE_CREATE_BLUEPRINT_PATH} /SERVICE/createBluePrint
-${DCAE_VFCMT_TEMPLATE} ${ASSETS_DIR}create_vfcmt.template
-${DCAE_COMPOSITION_TEMPLATE} ${ASSETS_DIR}dcae_composition.template
-${DCAE_MONITORING_CONFIGURATION_TEMPLATE} ${ASSETS_DIR}dcae_monitoring_configuration.template
+${DCAE_VFCMT_TEMPLATE} create_vfcmt.jinja
+${DCAE_COMPOSITION_TEMPLATE} dcae_composition.jinja
+${DCAE_MONITORING_CONFIGURATION_TEMPLATE} dcae_monitoring_configuration.jinja
${DCAE_BE_ENDPOINT} http://localhost:8082
*** Keywords ***
[Documentation] Create VFCMT with the given name and return its uuid
[Arguments] ${vfcmt_name}
${map}= Create Dictionary vfcmtName=${vfcmt_name} description=VFCMT created by robot
- ${data}= Fill JSON Template File ${DCAE_VFCMT_TEMPLATE} ${map}
+ Create Environment create_vfcmt ${ASSETS_DIR}
+ ${data}= Apply Template create_vfcmt ${DCAE_VFCMT_TEMPLATE} ${map}
${resp}= Run DCAE-DS Post Request ${DCAE_PATH}/createVFCMT ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp.json()['uuid']}
Save Composition
[Arguments] ${vfcmt_uuid} ${vf_uuid}
${map}= Create Dictionary cid=${vfcmt_uuid} vf_id=${vf_uuid}
- ${data}= Fill JSON Template File ${DCAE_COMPOSITION_TEMPLATE} ${map}
+ Create Environment dcae_composition ${ASSETS_DIR}
+ ${data}= Apply Template dcae_composition ${DCAE_COMPOSITION_TEMPLATE} ${map}
${resp}= Run DCAE-DS Post Request ${DCAE_PATH}/saveComposition/${vfcmt_uuid} ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
Add Monitoring Configuration To DCAE-DS
[Arguments] ${vfcmt_uuid} ${cs_uuid} ${vfi_name} ${mc_name}
${map}= Create Dictionary template_uuid=${vfcmt_uuid} service_uuid=${cs_uuid} vfi_name=${vfi_name} name=${mc_name}
- ${data}= Fill JSON Template File ${DCAE_MONITORING_CONFIGURATION_TEMPLATE} ${map}
+ Create Environment dcae_monitoring_configuration ${ASSETS_DIR}
+ ${data}= Apply Template dcae_monitoring_configuration ${DCAE_MONITORING_CONFIGURATION_TEMPLATE} ${map}
${resp}= Run DCAE-DS Post Request ${DCAE_PATH}/importMC ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp.json()['vfcmt']['uuid']}
+++ /dev/null
-*** Settings ***
-Documentation This resource is filling out json string templates and returning the json back
-Library RequestsLibrary
-Library ONAPLibrary.TemplatingKeywords
-Library OperatingSystem
-
-*** Keywords ***
-Fill JSON Template
- [Documentation] Runs substitution on template to return a filled in json
- [Arguments] ${json} ${arguments}
- ${returned_string}= Template String ${json} ${arguments}
- ${returned_json}= To Json ${returned_string}
- [Return] ${returned_json}
-
-Fill JSON Template File
- [Documentation] Runs substitution on template to return a filled in json
- [Arguments] ${json_file} ${arguments}
- ${json}= OperatingSystem.Get File ${json_file}
- ${returned_json}= Fill JSON Template ${json} ${arguments}
- [Return] ${returned_json}