4 "name": "08_Declare_Customer_Service_Subscription_Cloud",
5 "_postman_id": "ea6f17c2-1abd-62ff-a260-17fad1bdf6b8",
7 "schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json"
11 "name": "List Customers",
16 "type": "text/javascript",
18 "var customer_found = false;",
19 "if (responseCode.code === 404) {",
20 " tests[postman.getGlobalVariable(\"customer_name\")+\" does not exists\"] = true;",
23 " if (responseCode.code === 200) {",
24 " tests[\"Status code is 200\"] = responseCode.code === 200;",
26 " var jsonData = JSON.parse(responseBody);",
27 " for (var i = 0; i < jsonData.customer.length; i++) { ",
28 " if (jsonData.customer[i][\"global-customer-id\"] === postman.getGlobalVariable(\"customer_name\")) {",
29 " customer_found = true;",
30 " postman.setGlobalVariable(\"auto_customer_id\", \"\"+jsonData.customer[i][\"global-customer-id\"]+\"\");",
33 " if (customer_found === false) {",
34 " tests[postman.getGlobalVariable(\"customer_name\")+\" does not exists\"] = true;",
38 " tests[postman.getGlobalVariable(\"customer_name\")+\" already exists, we skip creation\"] = true;",
39 " postman.setNextRequest(\"List Services from SDC catalog\");",
47 "url": "{{url-aai}}/aai/v14/business/customers",
51 "key": "Authorization",
52 "value": "Basic QUFJOkFBSQ==",
62 "value": "application/json",
66 "key": "Content-Type",
67 "value": "application/json",
71 "key": "X-TransactionId",
72 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
78 "raw": "{\r\n \"global-customer-id\": \"Chouchen22\",\r\n \"subscriber-name\": \"Chouchen22\",\r\n \"subscriber-type\": \"INFRA\"\r\n}"
85 "name": "Declare a Customer",
90 "type": "text/javascript",
92 "tests[\"Status code is 201\"] = responseCode.code === 201;"
98 "url": "{{url-aai}}/aai/v14/business/customers/customer/{{customer_name}}",
102 "key": "Authorization",
103 "value": "Basic QUFJOkFBSQ==",
107 "key": "X-FromAppId",
113 "value": "application/json",
117 "key": "Content-Type",
118 "value": "application/json",
122 "key": "X-TransactionId",
123 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
129 "raw": "{\n \"global-customer-id\": \"{{customer_name}}\",\n \"subscriber-name\": \"{{customer_name}}\",\n \"subscriber-type\": \"INFRA\"\n}"
136 "name": "Check customer creation",
141 "type": "text/javascript",
143 "tests[\"Status code is 200\"] = responseCode.code === 200;",
145 "var jsonData = JSON.parse(responseBody);",
146 "var customer_found = false;",
147 "for (var i = 0; i < jsonData.customer.length; i++) { ",
148 " if (jsonData.customer[i][\"global-customer-id\"] === postman.getGlobalVariable(\"customer_name\")) {",
149 " customer_found = true;",
150 " postman.setGlobalVariable(\"auto_customer_id\", \"\"+jsonData.customer[i][\"global-customer-id\"]+\"\");",
153 "tests[postman.getGlobalVariable(\"customer_name\")+\" found\"] = customer_found === true;"
159 "url": "{{url-aai}}/aai/v14/business/customers",
163 "key": "Authorization",
164 "value": "Basic QUFJOkFBSQ==",
168 "key": "X-FromAppId",
174 "value": "application/json",
178 "key": "Content-Type",
179 "value": "application/json",
183 "key": "X-TransactionId",
184 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
190 "raw": "{\r\n \"global-customer-id\": \"Chouchen22\",\r\n \"subscriber-name\": \"Chouchen22\",\r\n \"subscriber-type\": \"INFRA\"\r\n}"
197 "name": "List Services from SDC catalog",
202 "type": "text/javascript",
204 "tests[\"Status code is 200\"] = responseCode.code === 200;",
206 "var jsonData = JSON.parse(responseBody);",
207 "var service_found = false;",
208 "for (var i = 0; i < jsonData.length; i++) { ",
209 " if (jsonData[i][\"name\"] === postman.getGlobalVariable(\"service\")) {",
210 " service_found = true;",
211 " postman.setGlobalVariable(\"auto_service_invariantUUID\", \"\"+jsonData[i][\"invariantUUID\"]+\"\");",
215 "if (service_found === false) {",
216 " tests[postman.getGlobalVariable(\"service\")+\" does not exists\"] = true;",
217 " postman.setNextRequest(null);",
221 " tests[postman.getGlobalVariable(\"service\")+\" exists, we continue the run\"] = true;",
228 "url": "{{url-sdc}}/sdc/v1/catalog/services",
232 "key": "Content-Type",
233 "value": "application/json",
238 "value": "application/json",
242 "key": "X-TransactionId",
243 "value": "ONAP-Test",
252 "key": "X-FromAppId",
253 "value": "ONAP-Test",
257 "key": "Authorization",
258 "value": "Basic YWFpOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU=",
262 "key": "x-ecomp-instanceid",
263 "value": "ONAP-Test",
269 "raw": "{\"contactId\": \"cs0008\", \"vendorRelease\": \"1.0\", \"requirements\": {}, \"artifacts\": {}, \"capabilities\": {}, \"componentInstancesProperties\": {}, \"deploymentArtifacts\": {}, \"icon\": \"defaulticon\", \"vendorName\": \"test-api-license-model\", \"description\": \"vendor software product\", \"tags\": [\"test-vsp\"], \"groups\": [], \"properties\": [], \"categories\": [{\"subcategories\": [{\"normalizedName\": \"abstract\", \"name\": \"Abstract\", \"uniqueId\": \"resourceNewCategory.generic.abstract\", \"icons\": [\"icon\"]}], \"normalizedName\": \"generic\", \"name\": \"Generic\", \"uniqueId\": \"resourceNewCategory.generic\"}], \"name\": \"test-vsp\", \"toscaArtifacts\": {}, \"csarUUID\": \"F3CD5189C2DF45B4B1CFA6D6E45FD613\", \"resourceType\": \"VF\", \"csarVersion\": \"1.0\", \"componentType\": \"RESOURCE\", \"componentInstancesAttributes\": {}, \"attributes\": [], \"componentInstances\": []}"
276 "name": "Check Subscription in AAI",
281 "type": "text/javascript",
283 "var service_found = false;",
284 "if (responseCode.code === 404) {",
285 " tests[postman.getGlobalVariable(\"service\")+\" does not exists in AAI\"] = true;",
288 " if (responseCode.code === 200) {",
289 " tests[\"Status code is 200\"] = responseCode.code === 200;",
291 " var jsonData = JSON.parse(responseBody);",
292 " for (var i = 0; i < jsonData.service.length; i++) { ",
293 " if (jsonData.service[i][\"service-description\"] === postman.getGlobalVariable(\"service\")) {",
294 " service_found = true;",
298 " if (service_found === false) {",
299 " tests[postman.getGlobalVariable(\"service\")+\" does not exists in AAI\"] = true;",
303 " tests[postman.getGlobalVariable(\"service\")+\" already exists in AAI, we skip creation\"] = true;",
304 " postman.setNextRequest(\"check cloud-region exists\");",
312 "url": "{{url-aai}}/aai/v14/service-design-and-creation/services",
317 "value": "application/json",
321 "key": "Content-Type",
322 "value": "application/json",
326 "key": "X-FromAppId",
331 "key": "X-TransactionId",
332 "value": "get_aai_subscr",
336 "key": "Authorization",
337 "value": "Basic QUFJOkFBSQ==",
350 "name": "Declare subscription in AAI",
352 "url": "{{url-aai}}/aai/v14/service-design-and-creation/services/service/{{auto_service_invariantUUID}}",
356 "key": "Authorization",
357 "value": "Basic QUFJOkFBSQ==",
361 "key": "X-FromAppId",
367 "value": "application/json",
371 "key": "X-TransactionId",
372 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
376 "key": "Content-Type",
377 "value": "application/json",
383 "raw": "{\r\n\"service-id\": \"{{auto_service_invariantUUID}}\",\r\n\"service-description\": \"{{service}}\"\r\n}"
390 "name": "Check Subscription creation in AAI",
395 "type": "text/javascript",
397 "tests[\"Status code is 200\"] = responseCode.code === 200;",
399 "var jsonData = JSON.parse(responseBody);",
400 "var service_found = false;",
401 "for (var i = 0; i < jsonData.service.length; i++) { ",
402 " if (jsonData.service[i][\"service-description\"] === postman.getGlobalVariable(\"service\")) {",
403 " service_found = true;",
404 " postman.setGlobalVariable(\"auto_service_resource_version\", \"\"+jsonData.service[i][\"resource-version\"]+\"\");",
407 "tests[postman.getGlobalVariable(\"service\")+\" found\"] = service_found === true;"
413 "url": "{{url-aai}}/aai/v14/service-design-and-creation/services",
418 "value": "application/json",
422 "key": "Content-Type",
423 "value": "application/json",
427 "key": "X-FromAppId",
432 "key": "X-TransactionId",
433 "value": "get_aai_subscr",
437 "key": "Authorization",
438 "value": "Basic QUFJOkFBSQ==",
451 "name": "check cloud-region exists",
456 "type": "text/javascript",
458 "var region_found = false;",
459 "if (responseCode.code === 404) {",
460 " tests[postman.getGlobalVariable(\"cloud_region_id\")+\" does not exists in AAI\"] = true;",
463 " if (responseCode.code === 200) {",
464 " tests[\"Status code is 200\"] = responseCode.code === 200;",
466 "var jsonData = JSON.parse(responseBody);",
467 "for (var i = 0; i < jsonData[\"cloud-region\"].length; i++) { ",
468 " if (jsonData[\"cloud-region\"][i][\"cloud-region-id\"] === postman.getGlobalVariable(\"cloud_region_id\")) {",
469 " region_found = true;",
473 "if (region_found === false) {",
474 " tests[postman.getGlobalVariable(\"cloud_region_id\")+\" does not exists\"] = true;",
477 " tests[postman.getGlobalVariable(\"cloud_region_id\")+\" already exists, we skip creation\"] = true;",
478 " postman.setNextRequest(\"check tenant in cloud region\");",
486 "url": "{{url-aai}}/aai/v14/cloud-infrastructure/cloud-regions",
490 "key": "Authorization",
491 "value": "Basic QUFJOkFBSQ==",
495 "key": "X-FromAppId",
501 "value": "application/json",
505 "key": "X-TransactionId",
506 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
516 "name": "create CloudOwner/RegionOne cloud-region",
521 "type": "text/javascript",
523 "tests[\"Status code is 201\"] = responseCode.code === 201;"
529 "url": "{{url-aai}}/aai/v14/cloud-infrastructure/cloud-regions/cloud-region/{{cloud_owner_name}}/{{cloud_region_id}}",
533 "key": "Authorization",
534 "value": "Basic QUFJOkFBSQ==",
538 "key": "X-FromAppId",
544 "value": "application/json",
548 "key": "X-TransactionId",
549 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
553 "key": "Content-Type",
554 "value": "application/json",
560 "raw": "{\r\n \"cloud-owner\": \"{{cloud_owner_name}}\",\r\n \"cloud-region-id\": \"{{cloud_region_id}}\",\r\n \"cloud-type\": \"openstack\",\r\n \"owner-defined-type\": \"\",\r\n \"cloud-region-version\": \"\",\r\n \"cloud-zone\": \"\",\r\n \"complex-name\": \"\",\r\n \"identity-url\": \"\",\r\n \"sriov-automation\": false,\r\n \"cloud-extra-info\": \"\"\r\n}"
567 "name": "Check Cloud-region creation",
572 "type": "text/javascript",
574 "tests[\"Status code is 200\"] = responseCode.code === 200;",
576 "var jsonData = JSON.parse(responseBody);",
577 "var region_found = false;",
578 "for (var i = 0; i < jsonData[\"cloud-region\"].length; i++) { ",
579 " if (jsonData[\"cloud-region\"][i][\"cloud-region-id\"] === postman.getGlobalVariable(\"cloud_region_id\")) {",
580 " region_found = true;",
583 "tests[postman.getGlobalVariable(\"cloud_region_id\")+\" found\"] = region_found === true;",
590 "url": "{{url-aai}}/aai/v14/cloud-infrastructure/cloud-regions",
594 "key": "Authorization",
595 "value": "Basic QUFJOkFBSQ==",
599 "key": "X-FromAppId",
605 "value": "application/json",
609 "key": "X-TransactionId",
610 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
620 "name": "check tenant in cloud region",
625 "type": "text/javascript",
627 "var tenant_found = false;",
628 "if (responseCode.code === 404) {",
629 " tests[postman.getGlobalVariable(\"tenant_name\")+\" does not exists in AAI\"] = true;",
632 " if (responseCode.code === 200) {",
633 " tests[\"Status code is 200\"] = responseCode.code === 200;",
635 "var jsonData = JSON.parse(responseBody);",
637 "if(jsonData.hasOwnProperty('tenant'))",
639 " for (var i = 0; i < jsonData.tenant.length; i++) ",
641 " if (jsonData.tenant[i]['tenant-id'] === postman.getGlobalVariable(\"tenant_id\")) ",
643 " tenant_found = true;",
646 " if (tenant_found === true) ",
648 " tests[postman.getGlobalVariable(\"tenant_name\")+\" already exists, we skip creation\"] = true;",
649 " postman.setNextRequest(\"check customer-service-tenant relations\");",
652 "if (tenant_found === false)",
654 " tests[postman.getGlobalVariable(\"tenant_name\")+\" does not exists\"] = true;",
663 "url": "{{url-aai}}/aai/v14/cloud-infrastructure/cloud-regions/cloud-region/{{cloud_owner_name}}/{{cloud_region_id}}/tenants",
667 "key": "Authorization",
668 "value": "Basic QUFJOkFBSQ==",
672 "key": "X-FromAppId",
678 "value": "application/json",
682 "key": "X-TransactionId",
683 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
687 "key": "Content-Type",
688 "value": "application/json",
698 "name": "add tenant to region",
703 "type": "text/javascript",
705 "tests[\"Status code is 201\"] = responseCode.code === 201;"
711 "url": "{{url-aai}}/aai/v14/cloud-infrastructure/cloud-regions/cloud-region/{{cloud_owner_name}}/{{cloud_region_id}}/tenants/tenant/{{tenant_id}}",
715 "key": "Authorization",
716 "value": "Basic QUFJOkFBSQ==",
720 "key": "X-FromAppId",
726 "value": "application/json",
730 "key": "X-TransactionId",
731 "value": "get_aai_subscr",
735 "key": "Content-Type",
736 "value": "application/json",
742 "raw": "{\n \"tenant-id\": \"{{tenant_id}}\",\n \"tenant-name\": \"{{tenant_name}}\"\n}"
749 "name": "check tenant creation",
754 "type": "text/javascript",
756 "tests[\"Status code is 200\"] = responseCode.code === 200;",
758 "var jsonData = JSON.parse(responseBody);",
759 "var tenant_found = false;",
760 "for (var i = 0; i < jsonData[\"tenant\"].length; i++) { ",
761 " if (jsonData[\"tenant\"][i][\"tenant-id\"] === postman.getGlobalVariable(\"tenant_id\")) {",
762 " tenant_found = true;",
765 "tests[postman.getGlobalVariable(\"tenant_name\")+\" found\"] = tenant_found === true;",
772 "url": "{{url-aai}}/aai/v14/cloud-infrastructure/cloud-regions/cloud-region/{{cloud_owner_name}}/{{cloud_region_id}}/tenants",
776 "key": "Authorization",
777 "value": "Basic QUFJOkFBSQ==",
781 "key": "X-FromAppId",
787 "value": "application/json",
791 "key": "X-TransactionId",
792 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
796 "key": "Content-Type",
797 "value": "application/json",
807 "name": "check customer-service-tenant relations",
812 "type": "text/javascript",
814 "var relation_found = false;",
815 "if (responseCode.code === 404) {",
816 " tests[postman.getGlobalVariable(\"tenant_name\")+\" / \"+postman.getGlobalVariable(\"service\")+ \" relation does not exists\"] = true;",
819 " if (responseCode.code === 200) {",
820 " tests[\"Status code is 200\"] = responseCode.code === 200;",
823 "var jsonData = JSON.parse(responseBody);",
824 "for (var i = 0; i < jsonData[\"service-subscription\"].length; i++) { ",
825 " if (jsonData[\"service-subscription\"][i][\"service-type\"] === postman.getGlobalVariable(\"service\")) {",
826 " relation_found = true;",
830 "if (relation_found === false) {",
831 " tests[postman.getGlobalVariable(\"tenant_name\")+\" / \"+postman.getGlobalVariable(\"service\")+ \" relation does not exists\"] = true;",
835 " tests[postman.getGlobalVariable(\"tenant_name\")+\" / \"+postman.getGlobalVariable(\"service\")+ \" already exists, we skip relation creation\"] = true;",
836 " postman.setNextRequest(\"check customer-service-tenant relation creation\");",
845 "raw": "{{url-aai}}/aai/v14/business/customers/customer/{{customer_name}}/service-subscriptions?depth=all",
856 "service-subscriptions"
871 "key": "Authorization",
872 "value": "Basic QUFJOkFBSQ==",
876 "key": "X-FromAppId",
882 "value": "application/json",
886 "key": "Content-Type",
887 "value": "application/json",
891 "key": "X-TransactionId",
892 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
898 "raw": "{\r\n \"global-customer-id\": \"Sina\",\r\n \"subscriber-name\": \"Sina\",\r\n \"subscriber-type\": \"INFRA\"\r\n}"
905 "name": "Add customer-service-tenant relations init",
910 "type": "text/javascript",
912 "tests[\"Status code is 201\"] = responseCode.code === 201;"
919 "raw": "{{url-aai}}/aai/v14/business/customers/customer/{{customer_name}}/service-subscriptions/service-subscription/{{service}}?resource-version={{auto_service_resource_version}}",
930 "service-subscriptions",
931 "service-subscription",
936 "key": "resource-version",
937 "value": "{{auto_service_resource_version}}",
947 "key": "Authorization",
948 "value": "Basic QUFJOkFBSQ==",
952 "key": "X-FromAppId",
958 "value": "application/json",
962 "key": "Content-Type",
963 "value": "application/json",
967 "key": "X-TransactionId",
968 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
974 "raw": "{\r\n\t\"service-type\": \"{{service}}\",\r\n\t\"relationship-list\": {\r\n\t\t\"relationship\": [{\r\n\t\t\t\"related-to\": \"tenant\",\r\n\t\t\t\"related-link\": \"https://aai.api.simpledemo.onap.org:8443/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/{{cloud_owner_name}}/{{cloud_region_id}}/tenants/tenant/{{tenant_id}}\",\r\n\t\t\t\"relationship-data\": [{\r\n\t\t\t\t\t\"relationship-key\": \"cloud-region.cloud-owner\",\r\n\t\t\t\t\t\"relationship-value\": \"{{cloud_owner_name}}\"\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\t\"relationship-key\": \"cloud-region.cloud-region-id\",\r\n\t\t\t\t\t\"relationship-value\": \"{{cloud_region_id}}\"\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\t\"relationship-key\": \"tenant.tenant-id\",\r\n\t\t\t\t\t\"relationship-value\": \"{{tenant_id}}\"\r\n\t\t\t\t}\r\n\t\t\t],\r\n\t\t\t\"related-to-property\": [{\r\n\t\t\t\t\"property-key\": \"tenant.tenant-name\",\r\n\t\t\t\t\"property-value\": \"{{tenant_name}}\"\r\n\t\t\t}]\r\n\t\t}]\r\n\t}\r\n}"
981 "name": "check customer-service-tenant relation creation",
986 "type": "text/javascript",
988 "tests[\"Status code is 200\"] = responseCode.code === 200;",
990 "var jsonData = JSON.parse(responseBody);",
991 "var service_found = false;",
992 "for (var i = 0; i < jsonData[\"service-subscription\"].length; i++) { ",
993 " if (jsonData[\"service-subscription\"][i][\"service-type\"] === postman.getGlobalVariable(\"service\")) {",
994 " service_found = true;",
997 "tests[postman.getGlobalVariable(\"service\")+\" found\"] = service_found === true;",
1005 "raw": "{{url-aai}}/aai/v14/business/customers/customer/{{customer_name}}/service-subscriptions?depth=all",
1015 "{{customer_name}}",
1016 "service-subscriptions"
1031 "key": "Authorization",
1032 "value": "Basic QUFJOkFBSQ==",
1036 "key": "X-FromAppId",
1042 "value": "application/json",
1046 "key": "Content-Type",
1047 "value": "application/json",
1051 "key": "X-TransactionId",
1052 "value": "808b54e3-e563-4144-a1b9-e24e2ed93d4f",
1058 "raw": "{\r\n \"global-customer-id\": \"Sina\",\r\n \"subscriber-name\": \"Sina\",\r\n \"subscriber-type\": \"INFRA\"\r\n}"