@itentialopensource/adapter-openstack_glance 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/.eslintignore +5 -0
  2. package/.eslintrc.js +18 -0
  3. package/.jshintrc +3 -0
  4. package/AUTH.md +43 -0
  5. package/BROKER.md +199 -0
  6. package/CALLS.md +392 -0
  7. package/CHANGELOG.md +9 -0
  8. package/CODE_OF_CONDUCT.md +43 -0
  9. package/CONTRIBUTING.md +172 -0
  10. package/ENHANCE.md +69 -0
  11. package/LICENSE +201 -0
  12. package/PROPERTIES.md +641 -0
  13. package/README.md +337 -0
  14. package/SUMMARY.md +9 -0
  15. package/SYSTEMINFO.md +11 -0
  16. package/TROUBLESHOOT.md +47 -0
  17. package/adapter.js +5336 -0
  18. package/adapterBase.js +1788 -0
  19. package/entities/.generic/action.json +214 -0
  20. package/entities/.generic/schema.json +28 -0
  21. package/entities/.system/action.json +50 -0
  22. package/entities/.system/mockdatafiles/getToken-default.json +242 -0
  23. package/entities/.system/mockdatafiles/healthcheck-default.json +3 -0
  24. package/entities/.system/schema.json +19 -0
  25. package/entities/.system/schemaTokenReq.json +53 -0
  26. package/entities/.system/schemaTokenResp.json +49 -0
  27. package/entities/CacheManage/action.json +85 -0
  28. package/entities/CacheManage/schema.json +33 -0
  29. package/entities/ImageData/action.json +45 -0
  30. package/entities/ImageData/schema.json +31 -0
  31. package/entities/ImageSchemas/action.json +88 -0
  32. package/entities/ImageSchemas/schema.json +22 -0
  33. package/entities/ImageServiceInfoDiscovery/action.json +88 -0
  34. package/entities/ImageServiceInfoDiscovery/schema.json +22 -0
  35. package/entities/ImageTags/action.json +44 -0
  36. package/entities/ImageTags/schema.json +31 -0
  37. package/entities/Images/action.json +167 -0
  38. package/entities/Images/schema.json +136 -0
  39. package/entities/InteroperableImageImport/action.json +44 -0
  40. package/entities/InteroperableImageImport/schema.json +31 -0
  41. package/entities/Sharing/action.json +106 -0
  42. package/entities/Sharing/schema.json +45 -0
  43. package/entities/Stores/action.json +24 -0
  44. package/entities/Stores/schema.json +41 -0
  45. package/entities/TaskSchemas/action.json +46 -0
  46. package/entities/TaskSchemas/schema.json +20 -0
  47. package/entities/Tasks/action.json +66 -0
  48. package/entities/Tasks/schema.json +54 -0
  49. package/error.json +190 -0
  50. package/package.json +87 -0
  51. package/pronghorn.json +2201 -0
  52. package/propertiesDecorators.json +14 -0
  53. package/propertiesSchema.json +1284 -0
  54. package/refs?service=git-upload-pack +0 -0
  55. package/report/adapterInfo.json +10 -0
  56. package/report/creationReport.json +547 -0
  57. package/report/glance-openapi.json +1367 -0
  58. package/sampleProperties.json +198 -0
  59. package/test/integration/adapterTestBasicGet.js +85 -0
  60. package/test/integration/adapterTestConnectivity.js +93 -0
  61. package/test/integration/adapterTestIntegration.js +1327 -0
  62. package/test/unit/adapterBaseTestUnit.js +952 -0
  63. package/test/unit/adapterTestUnit.js +2220 -0
  64. package/utils/adapterInfo.js +206 -0
  65. package/utils/addAuth.js +94 -0
  66. package/utils/artifactize.js +146 -0
  67. package/utils/basicGet.js +50 -0
  68. package/utils/checkMigrate.js +63 -0
  69. package/utils/entitiesToDB.js +179 -0
  70. package/utils/findPath.js +74 -0
  71. package/utils/methodDocumentor.js +225 -0
  72. package/utils/modify.js +154 -0
  73. package/utils/packModificationScript.js +35 -0
  74. package/utils/patches2bundledDeps.js +90 -0
  75. package/utils/pre-commit.sh +32 -0
  76. package/utils/removeHooks.js +20 -0
  77. package/utils/setup.js +33 -0
  78. package/utils/tbScript.js +184 -0
  79. package/utils/tbUtils.js +469 -0
  80. package/utils/testRunner.js +298 -0
  81. package/utils/troubleshootingAdapter.js +190 -0
  82. package/workflows/README.md +3 -0
@@ -0,0 +1,136 @@
1
+ {
2
+ "$id": "schema.json",
3
+ "type": "object",
4
+ "schema": "http://json-schema.org/draft-07/schema#",
5
+ "translate": true,
6
+ "dynamicfields": true,
7
+ "properties": {
8
+ "ph_request_type": {
9
+ "type": "string",
10
+ "description": "type of request (internal to adapter)",
11
+ "default": "createImage",
12
+ "enum": [
13
+ "createImage",
14
+ "listImages",
15
+ "showImage",
16
+ "updateImage",
17
+ "deleteImage",
18
+ "showTasksAssociatedWithImage",
19
+ "deactivateImage",
20
+ "reactivateImage"
21
+ ],
22
+ "external_name": "ph_request_type"
23
+ },
24
+ "protectedParam": {
25
+ "type": "boolean",
26
+ "description": "Filters the response by the ‘protected’ image property. A valid value is\none of ‘true’, ‘false’ (must be all lowercase). Any other value will\nresult in a 400 response.",
27
+ "parse": false,
28
+ "encode": false,
29
+ "encrypt": {
30
+ "type": "AES",
31
+ "key": ""
32
+ },
33
+ "external_name": "protected"
34
+ },
35
+ "osHidden": {
36
+ "type": "boolean",
37
+ "description": "When true, filters the response to display only “hidden” images. By\ndefault, “hidden” images are not included in the image-list response.\n(Since Image API v2.7)",
38
+ "parse": false,
39
+ "encode": false,
40
+ "encrypt": {
41
+ "type": "AES",
42
+ "key": ""
43
+ },
44
+ "external_name": "os_hidden"
45
+ },
46
+ "memberStatus": {
47
+ "type": "string",
48
+ "description": "Filters the response by a member status. A valid value is accepted,\npending, rejected, or all. Default is accepted.",
49
+ "parse": false,
50
+ "encode": false,
51
+ "encrypt": {
52
+ "type": "AES",
53
+ "key": ""
54
+ },
55
+ "external_name": "member_status"
56
+ },
57
+ "sizeMax": {
58
+ "type": "string",
59
+ "description": "Filters the response by a maximum image size, in\nbytes.",
60
+ "parse": false,
61
+ "encode": false,
62
+ "encrypt": {
63
+ "type": "AES",
64
+ "key": ""
65
+ },
66
+ "external_name": "size_max"
67
+ },
68
+ "sizeMin": {
69
+ "type": "string",
70
+ "description": "Filters the response by a minimum image size, in\nbytes.",
71
+ "parse": false,
72
+ "encode": false,
73
+ "encrypt": {
74
+ "type": "AES",
75
+ "key": ""
76
+ },
77
+ "external_name": "size_min"
78
+ },
79
+ "createdAt": {
80
+ "type": "string",
81
+ "description": "Specify a comparison filter based on the date and time when the resource\nwas created. (See Time Comparison Filters).",
82
+ "parse": false,
83
+ "encode": false,
84
+ "encrypt": {
85
+ "type": "AES",
86
+ "key": ""
87
+ },
88
+ "external_name": "created_at"
89
+ },
90
+ "updatedAt": {
91
+ "type": "string",
92
+ "description": "Specify a comparison filter based on the date and time when the resource\nwas most recently modified. (See Time Comparison Filters).",
93
+ "parse": false,
94
+ "encode": false,
95
+ "encrypt": {
96
+ "type": "AES",
97
+ "key": ""
98
+ },
99
+ "external_name": "updated_at"
100
+ },
101
+ "sortDir": {
102
+ "type": "string",
103
+ "description": "Sorts the response by a set of one or more sort\ndirection and attribute (sort_key) combinations. A valid value\nfor the sort direction is asc (ascending) or desc\n(descendi...(description truncated)",
104
+ "parse": false,
105
+ "encode": false,
106
+ "encrypt": {
107
+ "type": "AES",
108
+ "key": ""
109
+ },
110
+ "external_name": "sort_dir"
111
+ },
112
+ "sortKey": {
113
+ "type": "string",
114
+ "description": "Sorts the response by an attribute, such as\nname, id, or updated_at. Default is created_at.\nThe API uses the natural sorting direction of the sort_key\nimage attribute.",
115
+ "parse": false,
116
+ "encode": false,
117
+ "encrypt": {
118
+ "type": "AES",
119
+ "key": ""
120
+ },
121
+ "external_name": "sort_key"
122
+ },
123
+ "imageId": {
124
+ "type": "string",
125
+ "description": "The UUID of the image.",
126
+ "parse": false,
127
+ "encode": false,
128
+ "encrypt": {
129
+ "type": "AES",
130
+ "key": ""
131
+ },
132
+ "external_name": "image_id"
133
+ }
134
+ },
135
+ "definitions": {}
136
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "actions": [
3
+ {
4
+ "name": "stageBinaryImageData",
5
+ "protocol": "REST",
6
+ "method": "PUT",
7
+ "entitypath": "{base_path}/{version}/v2/images/{pathv1}/stage?{query}",
8
+ "requestSchema": "schema.json",
9
+ "responseSchema": "schema.json",
10
+ "timeout": 0,
11
+ "sendEmpty": false,
12
+ "requestDatatype": "JSON",
13
+ "responseDatatype": "JSON",
14
+ "headers": {},
15
+ "responseObjects": [
16
+ {
17
+ "type": "default",
18
+ "key": "",
19
+ "mockFile": ""
20
+ }
21
+ ]
22
+ },
23
+ {
24
+ "name": "importAnImage",
25
+ "protocol": "REST",
26
+ "method": "POST",
27
+ "entitypath": "{base_path}/{version}/v2/images/{pathv1}/import?{query}",
28
+ "requestSchema": "schema.json",
29
+ "responseSchema": "schema.json",
30
+ "timeout": 0,
31
+ "sendEmpty": false,
32
+ "requestDatatype": "JSON",
33
+ "responseDatatype": "JSON",
34
+ "headers": {},
35
+ "responseObjects": [
36
+ {
37
+ "type": "default",
38
+ "key": "",
39
+ "mockFile": ""
40
+ }
41
+ ]
42
+ }
43
+ ]
44
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "$id": "schema.json",
3
+ "type": "object",
4
+ "schema": "http://json-schema.org/draft-07/schema#",
5
+ "translate": true,
6
+ "dynamicfields": true,
7
+ "properties": {
8
+ "ph_request_type": {
9
+ "type": "string",
10
+ "description": "type of request (internal to adapter)",
11
+ "default": "stageBinaryImageData",
12
+ "enum": [
13
+ "stageBinaryImageData",
14
+ "importAnImage"
15
+ ],
16
+ "external_name": "ph_request_type"
17
+ },
18
+ "imageId": {
19
+ "type": "string",
20
+ "description": "The UUID of the image.",
21
+ "parse": false,
22
+ "encode": false,
23
+ "encrypt": {
24
+ "type": "AES",
25
+ "key": ""
26
+ },
27
+ "external_name": "image_id"
28
+ }
29
+ },
30
+ "definitions": {}
31
+ }
@@ -0,0 +1,106 @@
1
+ {
2
+ "actions": [
3
+ {
4
+ "name": "createImageMember",
5
+ "protocol": "REST",
6
+ "method": "POST",
7
+ "entitypath": "{base_path}/{version}/v2/images/{pathv1}/members?{query}",
8
+ "requestSchema": "schema.json",
9
+ "responseSchema": "schema.json",
10
+ "timeout": 0,
11
+ "sendEmpty": false,
12
+ "requestDatatype": "JSON",
13
+ "responseDatatype": "JSON",
14
+ "headers": {},
15
+ "responseObjects": [
16
+ {
17
+ "type": "default",
18
+ "key": "",
19
+ "mockFile": ""
20
+ }
21
+ ]
22
+ },
23
+ {
24
+ "name": "listImageMembers",
25
+ "protocol": "REST",
26
+ "method": "GET",
27
+ "entitypath": "{base_path}/{version}/v2/images/{pathv1}/members?{query}",
28
+ "requestSchema": "schema.json",
29
+ "responseSchema": "schema.json",
30
+ "timeout": 0,
31
+ "sendEmpty": false,
32
+ "sendGetBody": false,
33
+ "requestDatatype": "JSON",
34
+ "responseDatatype": "JSON",
35
+ "headers": {},
36
+ "responseObjects": [
37
+ {
38
+ "type": "default",
39
+ "key": "",
40
+ "mockFile": ""
41
+ }
42
+ ]
43
+ },
44
+ {
45
+ "name": "showImageMemberDetails",
46
+ "protocol": "REST",
47
+ "method": "GET",
48
+ "entitypath": "{base_path}/{version}/v2/images/{pathv1}/members/{pathv2}?{query}",
49
+ "requestSchema": "schema.json",
50
+ "responseSchema": "schema.json",
51
+ "timeout": 0,
52
+ "sendEmpty": false,
53
+ "sendGetBody": false,
54
+ "requestDatatype": "JSON",
55
+ "responseDatatype": "JSON",
56
+ "headers": {},
57
+ "responseObjects": [
58
+ {
59
+ "type": "default",
60
+ "key": "",
61
+ "mockFile": ""
62
+ }
63
+ ]
64
+ },
65
+ {
66
+ "name": "updateImageMember",
67
+ "protocol": "REST",
68
+ "method": "PUT",
69
+ "entitypath": "{base_path}/{version}/v2/images/{pathv1}/members/{pathv2}?{query}",
70
+ "requestSchema": "schema.json",
71
+ "responseSchema": "schema.json",
72
+ "timeout": 0,
73
+ "sendEmpty": false,
74
+ "requestDatatype": "JSON",
75
+ "responseDatatype": "JSON",
76
+ "headers": {},
77
+ "responseObjects": [
78
+ {
79
+ "type": "default",
80
+ "key": "",
81
+ "mockFile": ""
82
+ }
83
+ ]
84
+ },
85
+ {
86
+ "name": "deleteImageMember",
87
+ "protocol": "REST",
88
+ "method": "DELETE",
89
+ "entitypath": "{base_path}/{version}/v2/images/{pathv1}/members/{pathv2}?{query}",
90
+ "requestSchema": "schema.json",
91
+ "responseSchema": "schema.json",
92
+ "timeout": 0,
93
+ "sendEmpty": false,
94
+ "requestDatatype": "JSON",
95
+ "responseDatatype": "JSON",
96
+ "headers": {},
97
+ "responseObjects": [
98
+ {
99
+ "type": "default",
100
+ "key": "",
101
+ "mockFile": ""
102
+ }
103
+ ]
104
+ }
105
+ ]
106
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$id": "schema.json",
3
+ "type": "object",
4
+ "schema": "http://json-schema.org/draft-07/schema#",
5
+ "translate": true,
6
+ "dynamicfields": true,
7
+ "properties": {
8
+ "ph_request_type": {
9
+ "type": "string",
10
+ "description": "type of request (internal to adapter)",
11
+ "default": "createImageMember",
12
+ "enum": [
13
+ "createImageMember",
14
+ "listImageMembers",
15
+ "showImageMemberDetails",
16
+ "updateImageMember",
17
+ "deleteImageMember"
18
+ ],
19
+ "external_name": "ph_request_type"
20
+ },
21
+ "imageId": {
22
+ "type": "string",
23
+ "description": "The UUID of the image.",
24
+ "parse": false,
25
+ "encode": false,
26
+ "encrypt": {
27
+ "type": "AES",
28
+ "key": ""
29
+ },
30
+ "external_name": "image_id"
31
+ },
32
+ "memberId": {
33
+ "type": "string",
34
+ "description": "The ID of the image member. An image member is usually the project (also\ncalled the “tenant”) with whom the image is shared.",
35
+ "parse": false,
36
+ "encode": false,
37
+ "encrypt": {
38
+ "type": "AES",
39
+ "key": ""
40
+ },
41
+ "external_name": "member_id"
42
+ }
43
+ },
44
+ "definitions": {}
45
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "actions": [
3
+ {
4
+ "name": "deleteImageFromStore",
5
+ "protocol": "REST",
6
+ "method": "DELETE",
7
+ "entitypath": "{base_path}/{version}/v2/stores/{pathv1}/{pathv2}?{query}",
8
+ "requestSchema": "schema.json",
9
+ "responseSchema": "schema.json",
10
+ "timeout": 0,
11
+ "sendEmpty": false,
12
+ "requestDatatype": "JSON",
13
+ "responseDatatype": "JSON",
14
+ "headers": {},
15
+ "responseObjects": [
16
+ {
17
+ "type": "default",
18
+ "key": "",
19
+ "mockFile": ""
20
+ }
21
+ ]
22
+ }
23
+ ]
24
+ }
@@ -0,0 +1,41 @@
1
+ {
2
+ "$id": "schema.json",
3
+ "type": "object",
4
+ "schema": "http://json-schema.org/draft-07/schema#",
5
+ "translate": true,
6
+ "dynamicfields": true,
7
+ "properties": {
8
+ "ph_request_type": {
9
+ "type": "string",
10
+ "description": "type of request (internal to adapter)",
11
+ "default": "deleteImageFromStore",
12
+ "enum": [
13
+ "deleteImageFromStore"
14
+ ],
15
+ "external_name": "ph_request_type"
16
+ },
17
+ "storeId": {
18
+ "type": "string",
19
+ "description": "The ID of the store from which image is to be deleted.",
20
+ "parse": false,
21
+ "encode": false,
22
+ "encrypt": {
23
+ "type": "AES",
24
+ "key": ""
25
+ },
26
+ "external_name": "store_id"
27
+ },
28
+ "imageId": {
29
+ "type": "string",
30
+ "description": "The UUID of the image.",
31
+ "parse": false,
32
+ "encode": false,
33
+ "encrypt": {
34
+ "type": "AES",
35
+ "key": ""
36
+ },
37
+ "external_name": "image_id"
38
+ }
39
+ },
40
+ "definitions": {}
41
+ }
@@ -0,0 +1,46 @@
1
+ {
2
+ "actions": [
3
+ {
4
+ "name": "showTasksSchema",
5
+ "protocol": "REST",
6
+ "method": "GET",
7
+ "entitypath": "{base_path}/{version}/v2/schemas/tasks?{query}",
8
+ "requestSchema": "schema.json",
9
+ "responseSchema": "schema.json",
10
+ "timeout": 0,
11
+ "sendEmpty": false,
12
+ "sendGetBody": false,
13
+ "requestDatatype": "JSON",
14
+ "responseDatatype": "JSON",
15
+ "headers": {},
16
+ "responseObjects": [
17
+ {
18
+ "type": "default",
19
+ "key": "",
20
+ "mockFile": ""
21
+ }
22
+ ]
23
+ },
24
+ {
25
+ "name": "showTaskSchema",
26
+ "protocol": "REST",
27
+ "method": "GET",
28
+ "entitypath": "{base_path}/{version}/v2/schemas/task?{query}",
29
+ "requestSchema": "schema.json",
30
+ "responseSchema": "schema.json",
31
+ "timeout": 0,
32
+ "sendEmpty": false,
33
+ "sendGetBody": false,
34
+ "requestDatatype": "JSON",
35
+ "responseDatatype": "JSON",
36
+ "headers": {},
37
+ "responseObjects": [
38
+ {
39
+ "type": "default",
40
+ "key": "",
41
+ "mockFile": ""
42
+ }
43
+ ]
44
+ }
45
+ ]
46
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "$id": "schema.json",
3
+ "type": "object",
4
+ "schema": "http://json-schema.org/draft-07/schema#",
5
+ "translate": false,
6
+ "dynamicfields": true,
7
+ "properties": {
8
+ "ph_request_type": {
9
+ "type": "string",
10
+ "description": "type of request (internal to adapter)",
11
+ "default": "showTasksSchema",
12
+ "enum": [
13
+ "showTasksSchema",
14
+ "showTaskSchema"
15
+ ],
16
+ "external_name": "ph_request_type"
17
+ }
18
+ },
19
+ "definitions": {}
20
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "actions": [
3
+ {
4
+ "name": "createTask",
5
+ "protocol": "REST",
6
+ "method": "POST",
7
+ "entitypath": "{base_path}/{version}/v2/tasks?{query}",
8
+ "requestSchema": "schema.json",
9
+ "responseSchema": "schema.json",
10
+ "timeout": 0,
11
+ "sendEmpty": false,
12
+ "requestDatatype": "JSON",
13
+ "responseDatatype": "JSON",
14
+ "headers": {},
15
+ "responseObjects": [
16
+ {
17
+ "type": "default",
18
+ "key": "",
19
+ "mockFile": ""
20
+ }
21
+ ]
22
+ },
23
+ {
24
+ "name": "listTasks",
25
+ "protocol": "REST",
26
+ "method": "GET",
27
+ "entitypath": "{base_path}/{version}/v2/tasks?{query}",
28
+ "requestSchema": "schema.json",
29
+ "responseSchema": "schema.json",
30
+ "timeout": 0,
31
+ "sendEmpty": false,
32
+ "sendGetBody": false,
33
+ "requestDatatype": "JSON",
34
+ "responseDatatype": "JSON",
35
+ "headers": {},
36
+ "responseObjects": [
37
+ {
38
+ "type": "default",
39
+ "key": "",
40
+ "mockFile": ""
41
+ }
42
+ ]
43
+ },
44
+ {
45
+ "name": "showTaskDetails",
46
+ "protocol": "REST",
47
+ "method": "GET",
48
+ "entitypath": "{base_path}/{version}/v2/tasks/{pathv1}?{query}",
49
+ "requestSchema": "schema.json",
50
+ "responseSchema": "schema.json",
51
+ "timeout": 0,
52
+ "sendEmpty": false,
53
+ "sendGetBody": false,
54
+ "requestDatatype": "JSON",
55
+ "responseDatatype": "JSON",
56
+ "headers": {},
57
+ "responseObjects": [
58
+ {
59
+ "type": "default",
60
+ "key": "",
61
+ "mockFile": ""
62
+ }
63
+ ]
64
+ }
65
+ ]
66
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "$id": "schema.json",
3
+ "type": "object",
4
+ "schema": "http://json-schema.org/draft-07/schema#",
5
+ "translate": true,
6
+ "dynamicfields": true,
7
+ "properties": {
8
+ "ph_request_type": {
9
+ "type": "string",
10
+ "description": "type of request (internal to adapter)",
11
+ "default": "createTask",
12
+ "enum": [
13
+ "createTask",
14
+ "listTasks",
15
+ "showTaskDetails"
16
+ ],
17
+ "external_name": "ph_request_type"
18
+ },
19
+ "sortDir": {
20
+ "type": "string",
21
+ "description": "Sorts the response by a set of one or more sort direction and attribute\n(sort_key) combinations. A valid value for the sort direction is\nasc (ascending) or desc (descendi...(description truncated)",
22
+ "parse": false,
23
+ "encode": false,
24
+ "encrypt": {
25
+ "type": "AES",
26
+ "key": ""
27
+ },
28
+ "external_name": "sort_dir"
29
+ },
30
+ "sortKey": {
31
+ "type": "string",
32
+ "description": "Sorts the response by one of the following attributes: created_at,\nexpires_at, status, type, updated_at. Default is\ncreated_at.",
33
+ "parse": false,
34
+ "encode": false,
35
+ "encrypt": {
36
+ "type": "AES",
37
+ "key": ""
38
+ },
39
+ "external_name": "sort_key"
40
+ },
41
+ "taskId": {
42
+ "type": "string",
43
+ "description": "The identifier for the task, a UUID.",
44
+ "parse": false,
45
+ "encode": false,
46
+ "encrypt": {
47
+ "type": "AES",
48
+ "key": ""
49
+ },
50
+ "external_name": "task_id"
51
+ }
52
+ },
53
+ "definitions": {}
54
+ }