blob: 2310522d1e0914098ccca801883f3d06d889eb38 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
*** Settings ***
Library Collections
Library OperatingSystem
Library RequestsLibrary
Library ONAPLibrary.Utilities
Library ONAPLibrary.Templating WITH NAME Templating
Library ONAPLibrary.SDC WITH NAME SDC
Resource common.robot
***Variables ***
${ASDC_CATALOG_SERVICES_PATH} /sdc2/rest/v1/catalog/services
${ASDC_CATALOG_RESOURCES_PATH} /sdc2/rest/v1/catalog/resources
${ASDC_CATALOG_LIFECYCLE_PATH} /lifecycleState
${ASDC_CATALOG_SERVICE_RESOURCE_INSTANCE_PATH} /resourceInstance
${ASDC_CATALOG_SERVICE_DISTRIBUTION_STATE_PATH} /distribution-state
${ASDC_DISTRIBUTION_STATE_APPROVE_PATH} /approve
${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
*** Keywords ***
Create Catalog Resource Data
[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}
Templating.Create Environment sdc_catalog_resource ${ASSETS_DIR}
${data}= Templating.Apply Template sdc_catalog_resource ${SDC_CATALOG_RESOURCE_TEMPLATE} ${map}
[Return] ${data}
Post ASDC Resource Request Unauthenticated
[Documentation] Makes unauthenticated Post request for ASDC Catalog resource and returns its unique id
[Arguments] ${data}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${ASDC_CATALOG_RESOURCES_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 201
[Return] ${resp.json()['uniqueId']}
# Based on testsuite/robot/resources/sdc_interface.robot's 'Setup SDC Catalog Resource Deployment Artifact Properties' keyword
Add Tosca Artifact To Resource
[Documentation] Add Tosca artifacts to given resource id
[Arguments] ${artifact} ${vf_id}
${blueprint_data} OperatingSystem.Get File ${ASSETS_DIR}${artifact}.yaml
${payloadData}= Base64 Encode ${blueprint_data}
${dict}= Create Dictionary artifactLabel=${artifact} artifactName=${artifact}.yaml artifactType=DCAE_TOSCA artifactGroupType=DEPLOYMENT description=${artifact}.yaml payloadData=${payloadData}
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}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${ASDC_CATALOG_RESOURCES_PATH}/${vf_id}/artifacts ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp}
# Directly copied from testsuite/robot/resources/sdc_interface.robot
Certify ASDC Catalog Resource
[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
Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${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']}
Add Catalog Service For Monitoring Template
[Documentation] Creates an ASDC Catalog Service for Monitoring Template with given name
[Arguments] ${service_name}
${map}= Create Dictionary service_name=${service_name}
Templating.Create Environment sdc_catalog_service ${ASSETS_DIR}
${data}= Templating.Apply Template sdc_catalog_service ${SDC_CATALOG_SERVICE_TEMPLATE} ${map}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${ASDC_CATALOG_SERVICES_PATH} ${data} ${ASDC_DESIGNER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 201
[Return] ${resp.json()['uniqueId']} ${resp.json()['uuid']}
# Based on testsuite/robot/resources/sdc_interface.robot's 'Add SDC Resource Instance' keyword
Add ASDC Resource Instance
[Documentation] Creates an ASDC Resource Instance and returns its id
[Arguments] ${catalog_service_id} ${catalog_resource_id} ${catalog_resource_name} ${xoffset}=${0} ${yoffset}=${0} ${resourceType}=VF
${milli_timestamp}= Generate Timestamp
${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}
Templating.Create Environment sdc_resource_instance ${ASSETS_DIR}
${data}= Templating.Apply Template sdc_resource_instance ${SDC_RESOURCE_INSTANCE_TEMPLATE} ${map}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${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']}
# All the following methods are adjusted from sdc_interface.robot
Checkin ASDC Catalog Service
[Documentation] Checks in an ASDC Catalog Service by its id
[Arguments] ${catalog_service_id}
${map}= Create Dictionary user_remarks=Robot remarks
Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${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()}
Request Certify ASDC Catalog Service
[Documentation] Requests certification of an ASDC Catalog Service by its id
[Arguments] ${catalog_service_id}
${map}= Create Dictionary user_remarks=Robot remarks
Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${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()}
Start Certify ASDC Catalog Service
[Documentation] Start certification of an ASDC Catalog Service by its id
[Arguments] ${catalog_service_id}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${ASDC_CATALOG_SERVICES_PATH}/${catalog_service_id}${ASDC_CATALOG_LIFECYCLE_PATH}/startCertification ${None} ${ASDC_TESTER_USER_ID}
Should Be Equal As Strings ${resp.status_code} 200
[Return] ${resp.json()}
Certify ASDC Catalog Service
[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
Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${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']}
Approve ASDC Catalog Service
[Documentation] Approves an ASDC Catalog Service by its id
[Arguments] ${catalog_service_id}
${map}= Create Dictionary user_remarks=Robot remarks
Templating.Create Environment sdc_user_remarks ${ASSETS_DIR}
${data}= Templating.Apply Template sdc_user_remarks ${SDC_USER_REMARKS_TEMPLATE} ${map}
${resp}= SDC.Run Post Request ${ASDC_BE_ENDPOINT} ${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()}
|