@itentialopensource/adapter-openstack_neutron 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 (175) hide show
  1. package/.eslintignore +5 -0
  2. package/.eslintrc.js +18 -0
  3. package/.jshintrc +3 -0
  4. package/AUTH.md +44 -0
  5. package/BROKER.md +199 -0
  6. package/CALLS.md +2000 -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 +37134 -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/APIVersions/action.json +46 -0
  28. package/entities/APIVersions/schema.json +20 -0
  29. package/entities/AddressGroups/action.json +146 -0
  30. package/entities/AddressGroups/schema.json +69 -0
  31. package/entities/AddressScopes/action.json +106 -0
  32. package/entities/AddressScopes/schema.json +78 -0
  33. package/entities/Agents/action.json +86 -0
  34. package/entities/Agents/schema.json +88 -0
  35. package/entities/AutoAllocatedTopologies/action.json +45 -0
  36. package/entities/AutoAllocatedTopologies/schema.json +31 -0
  37. package/entities/AvailabilityZones/action.json +25 -0
  38. package/entities/AvailabilityZones/schema.json +19 -0
  39. package/entities/BGPPeer/action.json +106 -0
  40. package/entities/BGPPeer/schema.json +34 -0
  41. package/entities/BGPSpeaker/action.json +228 -0
  42. package/entities/BGPSpeaker/schema.json +40 -0
  43. package/entities/BGPVPNs/action.json +106 -0
  44. package/entities/BGPVPNs/schema.json +34 -0
  45. package/entities/DHCPAgentScheduler/action.json +86 -0
  46. package/entities/DHCPAgentScheduler/schema.json +44 -0
  47. package/entities/Extensions/action.json +46 -0
  48. package/entities/Extensions/schema.json +20 -0
  49. package/entities/FWaaSV20CURRENTFwaasFirewallGroupsFirewallPoliciesFirewallRules/action.json +350 -0
  50. package/entities/FWaaSV20CURRENTFwaasFirewallGroupsFirewallPoliciesFirewallRules/schema.json +68 -0
  51. package/entities/FirewallLogs/action.json +106 -0
  52. package/entities/FirewallLogs/schema.json +45 -0
  53. package/entities/FloatingIPPoolsFloatingipPools/action.json +25 -0
  54. package/entities/FloatingIPPoolsFloatingipPools/schema.json +19 -0
  55. package/entities/FloatingIPsFloatingips/action.json +106 -0
  56. package/entities/FloatingIPsFloatingips/schema.json +177 -0
  57. package/entities/FloatingIPsPortForwarding/action.json +106 -0
  58. package/entities/FloatingIPsPortForwarding/schema.json +100 -0
  59. package/entities/L3AgentScheduler/action.json +86 -0
  60. package/entities/L3AgentScheduler/schema.json +44 -0
  61. package/entities/LocalIPAssociationsPortAssociations/action.json +65 -0
  62. package/entities/LocalIPAssociationsPortAssociations/schema.json +76 -0
  63. package/entities/LocalIPsLocalIps/action.json +106 -0
  64. package/entities/LocalIPsLocalIps/schema.json +122 -0
  65. package/entities/LogResource/action.json +106 -0
  66. package/entities/LogResource/schema.json +122 -0
  67. package/entities/LoggableResource/action.json +25 -0
  68. package/entities/LoggableResource/schema.json +19 -0
  69. package/entities/LoggingResources/action.json +106 -0
  70. package/entities/LoggingResources/schema.json +34 -0
  71. package/entities/MeteringLabelsAndRulesMeteringLabelsMeteringLabelRules/action.json +168 -0
  72. package/entities/MeteringLabelsAndRulesMeteringLabelsMeteringLabelRules/schema.json +125 -0
  73. package/entities/NetworkAssociations/action.json +86 -0
  74. package/entities/NetworkAssociations/schema.json +44 -0
  75. package/entities/NetworkIPAvailabilityAndUsageStats/action.json +46 -0
  76. package/entities/NetworkIPAvailabilityAndUsageStats/schema.json +75 -0
  77. package/entities/NetworkSegmentRanges/action.json +106 -0
  78. package/entities/NetworkSegmentRanges/schema.json +133 -0
  79. package/entities/NetworkingFlavorsFrameworkV20CURRENTFlavorServiceProfile/action.json +248 -0
  80. package/entities/NetworkingFlavorsFrameworkV20CURRENTFlavorServiceProfile/schema.json +85 -0
  81. package/entities/Networks/action.json +106 -0
  82. package/entities/Networks/schema.json +199 -0
  83. package/entities/PortAssociations/action.json +106 -0
  84. package/entities/PortAssociations/schema.json +45 -0
  85. package/entities/Ports/action.json +106 -0
  86. package/entities/Ports/schema.json +221 -0
  87. package/entities/QoSBandwidthLimitRules/action.json +106 -0
  88. package/entities/QoSBandwidthLimitRules/schema.json +89 -0
  89. package/entities/QoSDSCPMarkingRules/action.json +106 -0
  90. package/entities/QoSDSCPMarkingRules/schema.json +78 -0
  91. package/entities/QoSMinimumBandwidthRules/action.json +106 -0
  92. package/entities/QoSMinimumBandwidthRules/schema.json +78 -0
  93. package/entities/QoSMinimumPacketRateRules/action.json +106 -0
  94. package/entities/QoSMinimumPacketRateRules/schema.json +78 -0
  95. package/entities/QoSPacketRateLimitRules/action.json +106 -0
  96. package/entities/QoSPacketRateLimitRules/schema.json +89 -0
  97. package/entities/QoSPoliciesQos/action.json +106 -0
  98. package/entities/QoSPoliciesQos/schema.json +133 -0
  99. package/entities/QoSRuleTypes/action.json +46 -0
  100. package/entities/QoSRuleTypes/schema.json +53 -0
  101. package/entities/QualityOfServiceMinimumPacketRateRuleAliasAPI/action.json +65 -0
  102. package/entities/QualityOfServiceMinimumPacketRateRuleAliasAPI/schema.json +32 -0
  103. package/entities/QualityOfServiceRulesAliasAPI/action.json +187 -0
  104. package/entities/QualityOfServiceRulesAliasAPI/schema.json +49 -0
  105. package/entities/QuotasDetailsExtensionQuotaDetails/action.json +25 -0
  106. package/entities/QuotasDetailsExtensionQuotaDetails/schema.json +30 -0
  107. package/entities/QuotasExtensionQuotas/action.json +107 -0
  108. package/entities/QuotasExtensionQuotas/schema.json +34 -0
  109. package/entities/RBACPolicies/action.json +106 -0
  110. package/entities/RBACPolicies/schema.json +111 -0
  111. package/entities/RouterAssociations/action.json +106 -0
  112. package/entities/RouterAssociations/schema.json +45 -0
  113. package/entities/RouterNDPProxyNdpProxies/action.json +106 -0
  114. package/entities/RouterNDPProxyNdpProxies/schema.json +122 -0
  115. package/entities/RoutersConntrackHelperCTTargetRules/action.json +106 -0
  116. package/entities/RoutersConntrackHelperCTTargetRules/schema.json +67 -0
  117. package/entities/RoutersRouters/action.json +186 -0
  118. package/entities/RoutersRouters/schema.json +137 -0
  119. package/entities/SecurityGroupRulesSecurityGroupRules/action.json +86 -0
  120. package/entities/SecurityGroupRulesSecurityGroupRules/schema.json +143 -0
  121. package/entities/SecurityGroupsSecurityGroups/action.json +106 -0
  122. package/entities/SecurityGroupsSecurityGroups/schema.json +122 -0
  123. package/entities/Segments/action.json +106 -0
  124. package/entities/Segments/schema.json +111 -0
  125. package/entities/ServiceProviders/action.json +25 -0
  126. package/entities/ServiceProviders/schema.json +19 -0
  127. package/entities/SubnetPoolPrefixOperationsSubnetpoolPrefixOps/action.json +44 -0
  128. package/entities/SubnetPoolPrefixOperationsSubnetpoolPrefixOps/schema.json +31 -0
  129. package/entities/SubnetPoolsExtensionSubnetpools/action.json +106 -0
  130. package/entities/SubnetPoolsExtensionSubnetpools/schema.json +199 -0
  131. package/entities/Subnets/action.json +106 -0
  132. package/entities/Subnets/schema.json +221 -0
  133. package/entities/TagExtensionTags/action.json +126 -0
  134. package/entities/TagExtensionTags/schema.json +46 -0
  135. package/entities/TapAsAService/action.json +208 -0
  136. package/entities/TapAsAService/schema.json +72 -0
  137. package/entities/TrunkNetworking/action.json +167 -0
  138. package/entities/TrunkNetworking/schema.json +147 -0
  139. package/entities/VPNaaS20VpnVpnservicesIkepoliciesIpsecpoliciesEndpointGroupsIpsecSiteConnections/action.json +514 -0
  140. package/entities/VPNaaS20VpnVpnservicesIkepoliciesIpsecpoliciesEndpointGroupsIpsecSiteConnections/schema.json +98 -0
  141. package/error.json +190 -0
  142. package/package.json +87 -0
  143. package/pronghorn.json +17931 -0
  144. package/propertiesDecorators.json +14 -0
  145. package/propertiesSchema.json +1284 -0
  146. package/refs?service=git-upload-pack +0 -0
  147. package/report/adapterInfo.json +10 -0
  148. package/report/creationReport.json +2575 -0
  149. package/report/neutron-openapi.json +14594 -0
  150. package/report/updateReport1662381141928.json +120 -0
  151. package/sampleProperties.json +198 -0
  152. package/test/integration/adapterTestBasicGet.js +85 -0
  153. package/test/integration/adapterTestConnectivity.js +93 -0
  154. package/test/integration/adapterTestIntegration.js +8868 -0
  155. package/test/unit/adapterBaseTestUnit.js +952 -0
  156. package/test/unit/adapterTestUnit.js +9550 -0
  157. package/utils/adapterInfo.js +206 -0
  158. package/utils/addAuth.js +94 -0
  159. package/utils/artifactize.js +146 -0
  160. package/utils/basicGet.js +50 -0
  161. package/utils/checkMigrate.js +63 -0
  162. package/utils/entitiesToDB.js +179 -0
  163. package/utils/findPath.js +74 -0
  164. package/utils/methodDocumentor.js +225 -0
  165. package/utils/modify.js +154 -0
  166. package/utils/packModificationScript.js +35 -0
  167. package/utils/patches2bundledDeps.js +90 -0
  168. package/utils/pre-commit.sh +32 -0
  169. package/utils/removeHooks.js +20 -0
  170. package/utils/setup.js +33 -0
  171. package/utils/tbScript.js +184 -0
  172. package/utils/tbUtils.js +469 -0
  173. package/utils/testRunner.js +298 -0
  174. package/utils/troubleshootingAdapter.js +190 -0
  175. package/workflows/README.md +3 -0
@@ -0,0 +1,86 @@
1
+ {
2
+ "actions": [
3
+ {
4
+ "name": "listSecurityGroupRules",
5
+ "protocol": "REST",
6
+ "method": "GET",
7
+ "entitypath": "{base_path}/{version}/v2.0/security-group-rules?{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": "createSecurityGroupRule",
26
+ "protocol": "REST",
27
+ "method": "POST",
28
+ "entitypath": "{base_path}/{version}/v2.0/security-group-rules?{query}",
29
+ "requestSchema": "schema.json",
30
+ "responseSchema": "schema.json",
31
+ "timeout": 0,
32
+ "sendEmpty": 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": "showSecurityGroupRule",
46
+ "protocol": "REST",
47
+ "method": "GET",
48
+ "entitypath": "{base_path}/{version}/v2.0/security-group-rules/{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
+ "name": "deleteSecurityGroupRule",
67
+ "protocol": "REST",
68
+ "method": "DELETE",
69
+ "entitypath": "{base_path}/{version}/v2.0/security-group-rules/{pathv1}?{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
+ }
@@ -0,0 +1,143 @@
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": "listSecurityGroupRules",
12
+ "enum": [
13
+ "listSecurityGroupRules",
14
+ "createSecurityGroupRule",
15
+ "showSecurityGroupRule",
16
+ "deleteSecurityGroupRule"
17
+ ],
18
+ "external_name": "ph_request_type"
19
+ },
20
+ "remoteGroupId": {
21
+ "type": "string",
22
+ "description": "Filter the security group rule list result by the ID of the remote group\nthat associates with this security group rule.",
23
+ "parse": false,
24
+ "encode": false,
25
+ "encrypt": {
26
+ "type": "AES",
27
+ "key": ""
28
+ },
29
+ "external_name": "remote_group_id"
30
+ },
31
+ "portRangeMax": {
32
+ "type": "number",
33
+ "description": "Filter the security group rule list result by the maximum port number\nin the range that is matched by the security group rule.",
34
+ "parse": false,
35
+ "encode": false,
36
+ "encrypt": {
37
+ "type": "AES",
38
+ "key": ""
39
+ },
40
+ "external_name": "port_range_max"
41
+ },
42
+ "securityGroupId": {
43
+ "type": "string",
44
+ "description": "Filter the security group rule list result by the ID of the security group\nthat associates with this security group rule.",
45
+ "parse": false,
46
+ "encode": false,
47
+ "encrypt": {
48
+ "type": "AES",
49
+ "key": ""
50
+ },
51
+ "external_name": "security_group_id"
52
+ },
53
+ "tenantId": {
54
+ "type": "string",
55
+ "description": "Filter the list result by the ID of the project that owns the resource.",
56
+ "parse": false,
57
+ "encode": false,
58
+ "encrypt": {
59
+ "type": "AES",
60
+ "key": ""
61
+ },
62
+ "external_name": "tenant_id"
63
+ },
64
+ "projectId": {
65
+ "type": "string",
66
+ "description": "Filter the list result by the ID of the project that owns the resource.",
67
+ "parse": false,
68
+ "encode": false,
69
+ "encrypt": {
70
+ "type": "AES",
71
+ "key": ""
72
+ },
73
+ "external_name": "project_id"
74
+ },
75
+ "portRangeMin": {
76
+ "type": "number",
77
+ "description": "Filter the security group rule list result by the minimum port number\nin the range that is matched by the security group rule.",
78
+ "parse": false,
79
+ "encode": false,
80
+ "encrypt": {
81
+ "type": "AES",
82
+ "key": ""
83
+ },
84
+ "external_name": "port_range_min"
85
+ },
86
+ "remoteIpPrefix": {
87
+ "type": "string",
88
+ "description": "Filter the list result by the remote IP prefix that is matched by\nthis security group rule.",
89
+ "parse": false,
90
+ "encode": false,
91
+ "encrypt": {
92
+ "type": "AES",
93
+ "key": ""
94
+ },
95
+ "external_name": "remote_ip_prefix"
96
+ },
97
+ "revisionNumber": {
98
+ "type": "number",
99
+ "description": "Filter the list result by the revision number of the resource.",
100
+ "parse": false,
101
+ "encode": false,
102
+ "encrypt": {
103
+ "type": "AES",
104
+ "key": ""
105
+ },
106
+ "external_name": "revision_number"
107
+ },
108
+ "sortDir": {
109
+ "type": "string",
110
+ "description": "Sort direction. A valid value is asc (ascending) or desc\n(descending). You can specify multiple pairs of sort key and\nsort direction query parameters.",
111
+ "parse": false,
112
+ "encode": false,
113
+ "encrypt": {
114
+ "type": "AES",
115
+ "key": ""
116
+ },
117
+ "external_name": "sort_dir"
118
+ },
119
+ "sortKey": {
120
+ "type": "string",
121
+ "description": "Sorts by a security group rule attribute. You can specify multiple pairs of\nsort key and sort direction query parameters. The sort keys are limited to:",
122
+ "parse": false,
123
+ "encode": false,
124
+ "encrypt": {
125
+ "type": "AES",
126
+ "key": ""
127
+ },
128
+ "external_name": "sort_key"
129
+ },
130
+ "securityGroupRuleId": {
131
+ "type": "string",
132
+ "description": "The ID of the security group rule.",
133
+ "parse": false,
134
+ "encode": false,
135
+ "encrypt": {
136
+ "type": "AES",
137
+ "key": ""
138
+ },
139
+ "external_name": "security_group_rule_id"
140
+ }
141
+ },
142
+ "definitions": {}
143
+ }
@@ -0,0 +1,106 @@
1
+ {
2
+ "actions": [
3
+ {
4
+ "name": "listSecurityGroups",
5
+ "protocol": "REST",
6
+ "method": "GET",
7
+ "entitypath": "{base_path}/{version}/v2.0/security-groups?{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": "createSecurityGroup",
26
+ "protocol": "REST",
27
+ "method": "POST",
28
+ "entitypath": "{base_path}/{version}/v2.0/security-groups?{query}",
29
+ "requestSchema": "schema.json",
30
+ "responseSchema": "schema.json",
31
+ "timeout": 0,
32
+ "sendEmpty": 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": "showSecurityGroup",
46
+ "protocol": "REST",
47
+ "method": "GET",
48
+ "entitypath": "{base_path}/{version}/v2.0/security-groups/{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
+ "name": "updateSecurityGroup",
67
+ "protocol": "REST",
68
+ "method": "PUT",
69
+ "entitypath": "{base_path}/{version}/v2.0/security-groups/{pathv1}?{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": "deleteSecurityGroup",
87
+ "protocol": "REST",
88
+ "method": "DELETE",
89
+ "entitypath": "{base_path}/{version}/v2.0/security-groups/{pathv1}?{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,122 @@
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": "listSecurityGroups",
12
+ "enum": [
13
+ "listSecurityGroups",
14
+ "createSecurityGroup",
15
+ "showSecurityGroup",
16
+ "updateSecurityGroup",
17
+ "deleteSecurityGroup"
18
+ ],
19
+ "external_name": "ph_request_type"
20
+ },
21
+ "tenantId": {
22
+ "type": "string",
23
+ "description": "Filter the list result by the ID of the project that owns the resource.",
24
+ "parse": false,
25
+ "encode": false,
26
+ "encrypt": {
27
+ "type": "AES",
28
+ "key": ""
29
+ },
30
+ "external_name": "tenant_id"
31
+ },
32
+ "projectId": {
33
+ "type": "string",
34
+ "description": "Filter the list result by the ID of the project that owns the resource.",
35
+ "parse": false,
36
+ "encode": false,
37
+ "encrypt": {
38
+ "type": "AES",
39
+ "key": ""
40
+ },
41
+ "external_name": "project_id"
42
+ },
43
+ "revisionNumber": {
44
+ "type": "number",
45
+ "description": "Filter the list result by the revision number of the resource.",
46
+ "parse": false,
47
+ "encode": false,
48
+ "encrypt": {
49
+ "type": "AES",
50
+ "key": ""
51
+ },
52
+ "external_name": "revision_number"
53
+ },
54
+ "sortDir": {
55
+ "type": "string",
56
+ "description": "Sort direction. A valid value is asc (ascending) or desc\n(descending). You can specify multiple pairs of sort key and\nsort direction query parameters.",
57
+ "parse": false,
58
+ "encode": false,
59
+ "encrypt": {
60
+ "type": "AES",
61
+ "key": ""
62
+ },
63
+ "external_name": "sort_dir"
64
+ },
65
+ "sortKey": {
66
+ "type": "string",
67
+ "description": "Sorts by a security group attribute. You can specify multiple pairs of\nsort key and sort direction query parameters. The sort keys are limited to:",
68
+ "parse": false,
69
+ "encode": false,
70
+ "encrypt": {
71
+ "type": "AES",
72
+ "key": ""
73
+ },
74
+ "external_name": "sort_key"
75
+ },
76
+ "tagsAny": {
77
+ "type": "string",
78
+ "description": "A list of tags to filter the list result by.\nResources that match any tag in this list will be returned.\nTags in query must be separated by comma.",
79
+ "parse": false,
80
+ "encode": false,
81
+ "encrypt": {
82
+ "type": "AES",
83
+ "key": ""
84
+ },
85
+ "external_name": "tags-any"
86
+ },
87
+ "notTags": {
88
+ "type": "string",
89
+ "description": "A list of tags to filter the list result by.\nResources that match all tags in this list will be excluded.\nTags in query must be separated by comma.",
90
+ "parse": false,
91
+ "encode": false,
92
+ "encrypt": {
93
+ "type": "AES",
94
+ "key": ""
95
+ },
96
+ "external_name": "not-tags"
97
+ },
98
+ "notTagsAny": {
99
+ "type": "string",
100
+ "description": "A list of tags to filter the list result by.\nResources that match any tag in this list will be excluded.\nTags in query must be separated by comma.",
101
+ "parse": false,
102
+ "encode": false,
103
+ "encrypt": {
104
+ "type": "AES",
105
+ "key": ""
106
+ },
107
+ "external_name": "not-tags-any"
108
+ },
109
+ "securityGroupId": {
110
+ "type": "string",
111
+ "description": "The ID of the security group.",
112
+ "parse": false,
113
+ "encode": false,
114
+ "encrypt": {
115
+ "type": "AES",
116
+ "key": ""
117
+ },
118
+ "external_name": "security_group_id"
119
+ }
120
+ },
121
+ "definitions": {}
122
+ }
@@ -0,0 +1,106 @@
1
+ {
2
+ "actions": [
3
+ {
4
+ "name": "showSegmentDetails",
5
+ "protocol": "REST",
6
+ "method": "GET",
7
+ "entitypath": "{base_path}/{version}/v2.0/segments/{pathv1}?{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": "updateSegment",
26
+ "protocol": "REST",
27
+ "method": "PUT",
28
+ "entitypath": "{base_path}/{version}/v2.0/segments/{pathv1}?{query}",
29
+ "requestSchema": "schema.json",
30
+ "responseSchema": "schema.json",
31
+ "timeout": 0,
32
+ "sendEmpty": 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": "deleteSegment",
46
+ "protocol": "REST",
47
+ "method": "DELETE",
48
+ "entitypath": "{base_path}/{version}/v2.0/segments/{pathv1}?{query}",
49
+ "requestSchema": "schema.json",
50
+ "responseSchema": "schema.json",
51
+ "timeout": 0,
52
+ "sendEmpty": false,
53
+ "requestDatatype": "JSON",
54
+ "responseDatatype": "JSON",
55
+ "headers": {},
56
+ "responseObjects": [
57
+ {
58
+ "type": "default",
59
+ "key": "",
60
+ "mockFile": ""
61
+ }
62
+ ]
63
+ },
64
+ {
65
+ "name": "listSegments",
66
+ "protocol": "REST",
67
+ "method": "GET",
68
+ "entitypath": "{base_path}/{version}/v2.0/segments?{query}",
69
+ "requestSchema": "schema.json",
70
+ "responseSchema": "schema.json",
71
+ "timeout": 0,
72
+ "sendEmpty": false,
73
+ "sendGetBody": 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": "createSegment",
87
+ "protocol": "REST",
88
+ "method": "POST",
89
+ "entitypath": "{base_path}/{version}/v2.0/segments?{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,111 @@
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": "showSegmentDetails",
12
+ "enum": [
13
+ "showSegmentDetails",
14
+ "updateSegment",
15
+ "deleteSegment",
16
+ "listSegments",
17
+ "createSegment"
18
+ ],
19
+ "external_name": "ph_request_type"
20
+ },
21
+ "segmentId": {
22
+ "type": "string",
23
+ "description": "The UUID of the segment.",
24
+ "parse": false,
25
+ "encode": false,
26
+ "encrypt": {
27
+ "type": "AES",
28
+ "key": ""
29
+ },
30
+ "external_name": "segment_id"
31
+ },
32
+ "networkId": {
33
+ "type": "string",
34
+ "description": "Filter the list result by the ID of the attached network.",
35
+ "parse": false,
36
+ "encode": false,
37
+ "encrypt": {
38
+ "type": "AES",
39
+ "key": ""
40
+ },
41
+ "external_name": "network_id"
42
+ },
43
+ "physicalNetwork": {
44
+ "type": "string",
45
+ "description": "Filter the list result by the physical network where\nthis network/segment is implemented.",
46
+ "parse": false,
47
+ "encode": false,
48
+ "encrypt": {
49
+ "type": "AES",
50
+ "key": ""
51
+ },
52
+ "external_name": "physical_network"
53
+ },
54
+ "networkType": {
55
+ "type": "string",
56
+ "description": "Filter the list result by the type of physical network that this\nnetwork/segment is mapped to. For example, flat, vlan, vxlan,\nor gre. Valid values depend on a networking...(description truncated)",
57
+ "parse": false,
58
+ "encode": false,
59
+ "encrypt": {
60
+ "type": "AES",
61
+ "key": ""
62
+ },
63
+ "external_name": "network_type"
64
+ },
65
+ "revisionNumber": {
66
+ "type": "number",
67
+ "description": "Filter the list result by the revision number of the resource.",
68
+ "parse": false,
69
+ "encode": false,
70
+ "encrypt": {
71
+ "type": "AES",
72
+ "key": ""
73
+ },
74
+ "external_name": "revision_number"
75
+ },
76
+ "segmentationId": {
77
+ "type": "number",
78
+ "description": "Filter the list result by the ID of the isolated segment\non the physical network.",
79
+ "parse": false,
80
+ "encode": false,
81
+ "encrypt": {
82
+ "type": "AES",
83
+ "key": ""
84
+ },
85
+ "external_name": "segmentation_id"
86
+ },
87
+ "sortDir": {
88
+ "type": "string",
89
+ "description": "Sort direction. A valid value is asc (ascending) or desc\n(descending). You can specify multiple pairs of sort key and\nsort direction query parameters.",
90
+ "parse": false,
91
+ "encode": false,
92
+ "encrypt": {
93
+ "type": "AES",
94
+ "key": ""
95
+ },
96
+ "external_name": "sort_dir"
97
+ },
98
+ "sortKey": {
99
+ "type": "string",
100
+ "description": "Sorts by a segment attribute. You can specify multiple pairs of sort key\nand sort direction query parameters. The sort keys are limited to:",
101
+ "parse": false,
102
+ "encode": false,
103
+ "encrypt": {
104
+ "type": "AES",
105
+ "key": ""
106
+ },
107
+ "external_name": "sort_key"
108
+ }
109
+ },
110
+ "definitions": {}
111
+ }