@itentialopensource/adapter-oracle_cloud 0.3.3 → 0.4.0

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.
@@ -4,14 +4,16 @@
4
4
  "name": "getToken",
5
5
  "protocol": "REST",
6
6
  "method": "POST",
7
- "entitypath": "{base_path}/{version}/login",
7
+ "entitypath": "{base_path}/{version}/oauth2/v1/token",
8
8
  "requestSchema": "schemaTokenReq.json",
9
9
  "responseSchema": "schemaTokenResp.json",
10
10
  "timeout": 0,
11
11
  "sendEmpty": false,
12
- "requestDatatype": "",
13
- "responseDatatype": "",
14
- "headers": {},
12
+ "requestDatatype": "URLENCODE",
13
+ "responseDatatype": "JSON",
14
+ "headers": {
15
+ "Authorization": "Basic {b64}{username}:{password}{/b64}"
16
+ },
15
17
  "sso": {
16
18
  "protocol": "",
17
19
  "host": "",
@@ -1,3 +1,3 @@
1
1
  {
2
- "token": "garbagetoken"
2
+ "access_token": "garbagetoken"
3
3
  }
@@ -36,6 +36,50 @@
36
36
  },
37
37
  "external_name": "password"
38
38
  },
39
+ "client_id": {
40
+ "type": "string",
41
+ "description": "client id to log in with",
42
+ "parse": false,
43
+ "encode": false,
44
+ "encrypt": {
45
+ "type": "AES",
46
+ "key": ""
47
+ },
48
+ "external_name": "client_id"
49
+ },
50
+ "client_secret": {
51
+ "type": "string",
52
+ "description": "client secret to log in with",
53
+ "parse": false,
54
+ "encode": false,
55
+ "encrypt": {
56
+ "type": "AES",
57
+ "key": ""
58
+ },
59
+ "external_name": "client_secret"
60
+ },
61
+ "scope": {
62
+ "type": "string",
63
+ "description": "scope",
64
+ "parse": false,
65
+ "encode": false,
66
+ "encrypt": {
67
+ "type": "AES",
68
+ "key": ""
69
+ },
70
+ "external_name": "scope"
71
+ },
72
+ "grant_type": {
73
+ "type": "string",
74
+ "description": "grant type to log in with",
75
+ "parse": false,
76
+ "encode": false,
77
+ "encrypt": {
78
+ "type": "AES",
79
+ "key": ""
80
+ },
81
+ "external_name": "grant_type"
82
+ },
39
83
  "token": {
40
84
  "type": "string",
41
85
  "description": "token returned by system",
@@ -46,7 +46,7 @@
46
46
  "type": "AES",
47
47
  "key": ""
48
48
  },
49
- "external_name": "token"
49
+ "external_name": "access_token"
50
50
  }
51
51
  },
52
52
  "definitions": {}
package/metadata.json CHANGED
@@ -42,20 +42,41 @@
42
42
  "isDeprecated": false
43
43
  },
44
44
  "brokerSince": "",
45
+ "authMethods": [
46
+ {
47
+ "type": "OAuth",
48
+ "primary": true
49
+ },
50
+ {
51
+ "type": "Basic Auth",
52
+ "primary": false
53
+ }
54
+ ],
45
55
  "documentation": {
46
56
  "storeLink": "",
47
57
  "npmLink": "https://www.npmjs.com/package/@itentialopensource/adapter-oracle_cloud",
48
- "repoLink": "https://gitlab.com/itentialopensource/adapters/cloud/adapter-oracle_cloud",
58
+ "repoLink": "https://gitlab.com/itentialopensource/adapters/adapter-oracle_cloud",
49
59
  "docLink": "https://docs.itential.com/opensource/docs/oracle-cloud",
50
60
  "demoLinks": [],
51
- "trainingLinks": [],
61
+ "trainingLinks": [
62
+ {
63
+ "title": "Itential Academy",
64
+ "link": "https://www.itential.com/itential-academy/"
65
+ }
66
+ ],
52
67
  "faqLink": "https://docs.itential.com/opensource/docs/troubleshooting-an-adapter",
53
68
  "contributeLink": "https://gitlab.com/itentialopensource/adapters/contributing-guide",
54
69
  "issueLink": "https://itential.atlassian.net/servicedesk/customer/portals",
55
70
  "webLink": "",
56
71
  "vendorLink": "https://www.oracle.com/",
57
- "productLink": "",
58
- "apiLinks": []
72
+ "productLink": "https://www.oracle.com/cloud/",
73
+ "apiLinks": [
74
+ {
75
+ "link": "https://docs.oracle.com/en/cloud/paas/content-cloud/rest-api-documents/rest-endpoints.html",
76
+ "title": "Oracle Cloud Content Management REST API",
77
+ "public": true
78
+ }
79
+ ]
59
80
  },
60
81
  "assets": [],
61
82
  "relatedItems": {
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@itentialopensource/adapter-oracle_cloud",
3
- "version": "0.3.3",
3
+ "version": "0.4.0",
4
4
  "description": "This adapter integrates with system described as: restApiForDocuments.",
5
5
  "main": "adapter.js",
6
6
  "wizardVersion": "2.44.7",
7
- "engineVersion": "1.67.12",
7
+ "engineVersion": "1.67.20",
8
8
  "adapterType": "http",
9
9
  "scripts": {
10
10
  "artifactize": "npm i && node utils/packModificationScript.js",
@@ -15,7 +15,6 @@
15
15
  "test:baseunit": "mocha test/unit/adapterBaseTestUnit.js --LOG=error",
16
16
  "test:unit": "mocha test/unit/adapterTestUnit.js --LOG=error",
17
17
  "test:integration": "mocha test/integration/adapterTestIntegration.js --LOG=error",
18
- "test:cover": "nyc --reporter html --reporter text mocha --reporter dot test/*",
19
18
  "test": "npm run test:baseunit && npm run test:unit && npm run test:integration",
20
19
  "adapter:install": "npm i && node utils/tbScript.js install",
21
20
  "adapter:checkMigrate": "node utils/checkMigrate.js",
@@ -43,17 +42,17 @@
43
42
  ],
44
43
  "license": "Apache-2.0",
45
44
  "engines": {
46
- "node": ">= 8.0.0",
45
+ "node": ">= 14.0.0",
47
46
  "npm": ">= 6.0.0"
48
47
  },
49
48
  "repository": {
50
49
  "type": "git",
51
- "url": "git@gitlab.com:itentialopensource/adapters/cloud/adapter-oracle_cloud.git"
50
+ "url": "git@gitlab.com:itentialopensource/adapters/adapter-oracle_cloud.git"
52
51
  },
53
52
  "author": "Itential",
54
- "homepage": "https://gitlab.com/itentialopensource/adapters/cloud/adapter-oracle_cloud#readme",
53
+ "homepage": "https://gitlab.com/itentialopensource/adapters/adapter-oracle_cloud#readme",
55
54
  "dependencies": {
56
- "@itentialopensource/adapter-utils": "^5.3.10",
55
+ "@itentialopensource/adapter-utils": "^5.5.0",
57
56
  "acorn": "^8.10.0",
58
57
  "ajv": "^8.12.0",
59
58
  "axios": "^1.6.8",
@@ -64,7 +63,6 @@
64
63
  "mocha": "^10.3.0",
65
64
  "mocha-param": "^2.0.1",
66
65
  "mongodb": "^4.16.0",
67
- "nyc": "^15.1.0",
68
66
  "ping": "^0.4.4",
69
67
  "prompts": "^2.4.2",
70
68
  "readline-sync": "^1.4.10",
@@ -945,6 +945,11 @@
945
945
  "devicebroker": {
946
946
  "type": "object",
947
947
  "properties": {
948
+ "enabled": {
949
+ "type": "boolean",
950
+ "description": "Whether or not the device broker calls have been mapped",
951
+ "default": false
952
+ },
948
953
  "getDevice": {
949
954
  "type": "array",
950
955
  "description": "Broker call(s) to getDevice",
Binary file
@@ -1,10 +1,10 @@
1
1
  {
2
- "version": "0.2.0",
3
- "configLines": 12789,
2
+ "version": "0.3.3",
3
+ "configLines": 12794,
4
4
  "scriptLines": 1783,
5
5
  "codeLines": 12805,
6
- "testLines": 10701,
6
+ "testLines": 10700,
7
7
  "testCases": 535,
8
- "totalCodeLines": 25289,
8
+ "totalCodeLines": 25288,
9
9
  "wfTasks": 140
10
10
  }
@@ -0,0 +1,120 @@
1
+ {
2
+ "errors": [],
3
+ "statistics": [
4
+ {
5
+ "owner": "errorJson",
6
+ "description": "New adapter errors available for use",
7
+ "value": 0
8
+ },
9
+ {
10
+ "owner": "errorJson",
11
+ "description": "Adapter errors no longer available for use",
12
+ "value": 0
13
+ },
14
+ {
15
+ "owner": "errorJson",
16
+ "description": "Adapter errors that have been updated (e.g. recommendation changes)",
17
+ "value": 31
18
+ },
19
+ {
20
+ "owner": "packageJson",
21
+ "description": "Number of production dependencies",
22
+ "value": 16
23
+ },
24
+ {
25
+ "owner": "packageJson",
26
+ "description": "Number of development dependencies",
27
+ "value": 6
28
+ },
29
+ {
30
+ "owner": "packageJson",
31
+ "description": "Number of npm scripts",
32
+ "value": 21
33
+ },
34
+ {
35
+ "owner": "packageJson",
36
+ "description": "Runtime Library dependency",
37
+ "value": "^5.5.0"
38
+ },
39
+ {
40
+ "owner": "propertiesSchemaJson",
41
+ "description": "Adapter properties defined in the propertiesSchema file",
42
+ "value": 78
43
+ },
44
+ {
45
+ "owner": "markdown",
46
+ "description": "Number of lines in the README.md",
47
+ "value": 344
48
+ },
49
+ {
50
+ "owner": "markdown",
51
+ "description": "Number of lines in the SUMMARY.md",
52
+ "value": 9
53
+ },
54
+ {
55
+ "owner": "markdown",
56
+ "description": "Number of lines in the PROPERTIES.md",
57
+ "value": 647
58
+ },
59
+ {
60
+ "owner": "markdown",
61
+ "description": "Number of lines in the TROUBLESHOOT.md",
62
+ "value": 48
63
+ },
64
+ {
65
+ "owner": "markdown",
66
+ "description": "Number of lines in the ENHANCE.md",
67
+ "value": 70
68
+ },
69
+ {
70
+ "owner": "markdown",
71
+ "description": "Number of lines in the BROKER.md",
72
+ "value": 70
73
+ },
74
+ {
75
+ "owner": "unitTestJS",
76
+ "description": "Number of lines of code in unit tests",
77
+ "value": 5573
78
+ },
79
+ {
80
+ "owner": "unitTestJS",
81
+ "description": "Number of unit tests",
82
+ "value": 341
83
+ },
84
+ {
85
+ "owner": "integrationTestJS",
86
+ "description": "Number of lines of code in integration tests",
87
+ "value": 3875
88
+ },
89
+ {
90
+ "owner": "integrationTestJS",
91
+ "description": "Number of integration tests",
92
+ "value": 124
93
+ },
94
+ {
95
+ "owner": "staticFile",
96
+ "description": "Number of lines of code in adapterBase.js",
97
+ "value": 1453
98
+ },
99
+ {
100
+ "owner": "staticFile",
101
+ "description": "Number of static files added",
102
+ "value": 36
103
+ },
104
+ {
105
+ "owner": "Overall",
106
+ "description": "Total lines of Code",
107
+ "value": 10901
108
+ },
109
+ {
110
+ "owner": "Overall",
111
+ "description": "Total Tests",
112
+ "value": 465
113
+ },
114
+ {
115
+ "owner": "Overall",
116
+ "description": "Total Files",
117
+ "value": 6
118
+ }
119
+ ]
120
+ }
@@ -15,23 +15,24 @@
15
15
  "protocol": "https",
16
16
  "authentication": {
17
17
  "auth_method": "request_token",
18
- "username": "username",
19
- "password": "password",
18
+ "username": "clientId",
19
+ "password": "clientSecret",
20
20
  "token": "token",
21
21
  "token_timeout": 1800000,
22
22
  "token_cache": "local",
23
23
  "invalid_token_error": 401,
24
- "auth_field": "header.headers.X-AUTH-TOKEN",
25
- "auth_field_format": "{token}",
24
+ "auth_field": "header.headers.Authorization",
25
+ "auth_field_format": "Bearer {token}",
26
26
  "auth_logging": false,
27
27
  "client_id": "",
28
28
  "client_secret": "",
29
- "grant_type": "",
29
+ "grant_type": "client_credentials",
30
+ "scope": "scopeString",
30
31
  "sensitive": [],
31
32
  "sso": {
32
- "protocol": "",
33
- "host": "",
34
- "port": 0
33
+ "protocol": "https",
34
+ "host": "idcs_tenantname",
35
+ "port": 443
35
36
  },
36
37
  "multiStepAuthCalls": [
37
38
  {
@@ -116,30 +117,32 @@
116
117
  }
117
118
  },
118
119
  "devicebroker": {
120
+ "enabled": false,
119
121
  "getDevice": [
120
122
  {
121
- "path": "/get/devices/{id}",
123
+ "path": "/not/mapped",
122
124
  "method": "GET",
123
125
  "query": {},
124
126
  "body": {},
125
127
  "headers": {},
126
128
  "handleFailure": "ignore",
127
129
  "requestFields": {
128
- "id": "name"
130
+ "insample": "{port}"
129
131
  },
130
132
  "responseDatakey": "",
131
133
  "responseFields": {
132
- "name": "host",
133
- "ostype": "os",
134
- "ostypePrefix": "system-",
135
- "ipaddress": "attributes.ipaddr",
136
- "port": "443"
134
+ "name": "{this}{||}{that}",
135
+ "ostype": "{osfield}",
136
+ "ostypePrefix": "meraki-",
137
+ "port": "{port}",
138
+ "ipaddress": "{ip_addr}",
139
+ "serial" : "{serial}"
137
140
  }
138
141
  }
139
142
  ],
140
143
  "getDevicesFiltered": [
141
144
  {
142
- "path": "/get/devices",
145
+ "path": "/not/mapped",
143
146
  "method": "GET",
144
147
  "pagination": {
145
148
  "offsetVar": "",
@@ -154,42 +157,44 @@
154
157
  "requestFields": {},
155
158
  "responseDatakey": "",
156
159
  "responseFields": {
157
- "name": "host",
158
- "ostype": "os",
159
- "ostypePrefix": "system-",
160
- "ipaddress": "attributes.ipaddr",
161
- "port": "443"
160
+ "name": "{this}{||}{that}",
161
+ "ostype": "{osfield}",
162
+ "ostypePrefix": "meraki-",
163
+ "port": "{port}",
164
+ "ipaddress": "{ip_addr}",
165
+ "serial" : "{serial}",
166
+ "id": "{myid}"
162
167
  }
163
168
  }
164
169
  ],
165
170
  "isAlive": [
166
171
  {
167
- "path": "/get/devices/{id}/status",
172
+ "path": "/not/mapped/{devID}",
168
173
  "method": "GET",
169
174
  "query": {},
170
175
  "body": {},
171
176
  "headers": {},
172
177
  "handleFailure": "ignore",
173
178
  "requestFields": {
174
- "id": "name"
179
+ "devID": "{id}"
175
180
  },
176
181
  "responseDatakey": "",
177
182
  "responseFields": {
178
- "status": "status",
179
- "statusValue": "online"
183
+ "status": "return2xx",
184
+ "statusValue": "AD.200"
180
185
  }
181
186
  }
182
187
  ],
183
188
  "getConfig": [
184
189
  {
185
- "path": "/get/devices/{id}/configPart1",
190
+ "path": "/not/mapped/{devID}",
186
191
  "method": "GET",
187
192
  "query": {},
188
193
  "body": {},
189
194
  "headers": {},
190
195
  "handleFailure": "ignore",
191
196
  "requestFields": {
192
- "id": "name"
197
+ "devID": "{id}"
193
198
  },
194
199
  "responseDatakey": "",
195
200
  "responseFields": {}
@@ -197,7 +202,7 @@
197
202
  ],
198
203
  "getCount": [
199
204
  {
200
- "path": "/get/devices",
205
+ "path": "/not/mapped",
201
206
  "method": "GET",
202
207
  "query": {},
203
208
  "body": {},
@@ -213,15 +218,15 @@
213
218
  "enabled": false,
214
219
  "entities": [
215
220
  {
216
- "entityType": "",
217
- "frequency": 1440,
221
+ "entityType": "device",
222
+ "frequency": 3600,
218
223
  "flushOnFail": false,
219
- "limit": 1000,
224
+ "limit": 10000,
220
225
  "retryAttempts": 5,
221
226
  "sort": true,
222
227
  "populate": [
223
228
  {
224
- "path": "",
229
+ "path": "/not/mapped",
225
230
  "method": "GET",
226
231
  "pagination": {
227
232
  "offsetVar": "",
@@ -235,7 +240,15 @@
235
240
  "handleFailure": "ignore",
236
241
  "requestFields": {},
237
242
  "responseDatakey": "",
238
- "responseFields": {}
243
+ "responseFields": {
244
+ "name": "{this}{||}{that}",
245
+ "ostype": "{osfield}",
246
+ "ostypePrefix": "meraki-",
247
+ "port": "{port}",
248
+ "ipaddress": "{ip_addr}",
249
+ "serial" : "{serial}",
250
+ "id": "{myid}"
251
+ }
239
252
  }
240
253
  ],
241
254
  "cachedTasks": [
@@ -46,6 +46,7 @@ samProps.ssl.accept_invalid_cert = false;
46
46
  if (samProps.request.attempt_timeout < 30000) {
47
47
  samProps.request.attempt_timeout = 30000;
48
48
  }
49
+ samProps.devicebroker.enabled = true;
49
50
  const attemptTimeout = samProps.request.attempt_timeout;
50
51
  const { stub } = samProps;
51
52
 
@@ -284,7 +284,6 @@ describe('[unit] OracleCloud Adapter Test', () => {
284
284
  assert.equal('mocha test/unit/adapterBaseTestUnit.js --LOG=error', packageDotJson.scripts['test:baseunit']);
285
285
  assert.equal('mocha test/unit/adapterTestUnit.js --LOG=error', packageDotJson.scripts['test:unit']);
286
286
  assert.equal('mocha test/integration/adapterTestIntegration.js --LOG=error', packageDotJson.scripts['test:integration']);
287
- assert.equal('nyc --reporter html --reporter text mocha --reporter dot test/*', packageDotJson.scripts['test:cover']);
288
287
  assert.equal('npm run test:baseunit && npm run test:unit && npm run test:integration', packageDotJson.scripts.test);
289
288
  assert.equal('npm publish --registry=https://registry.npmjs.org --access=public', packageDotJson.scripts.deploy);
290
289
  assert.equal('npm run deploy', packageDotJson.scripts.build);
@@ -321,7 +320,6 @@ describe('[unit] OracleCloud Adapter Test', () => {
321
320
  assert.equal('^11.1.1', packageDotJson.dependencies['fs-extra']);
322
321
  assert.equal('^10.3.0', packageDotJson.dependencies.mocha);
323
322
  assert.equal('^2.0.1', packageDotJson.dependencies['mocha-param']);
324
- assert.equal('^15.1.0', packageDotJson.dependencies.nyc);
325
323
  assert.equal('^0.4.4', packageDotJson.dependencies.ping);
326
324
  assert.equal('^1.4.10', packageDotJson.dependencies['readline-sync']);
327
325
  assert.equal('^7.5.3', packageDotJson.dependencies.semver);
@@ -563,7 +561,7 @@ describe('[unit] OracleCloud Adapter Test', () => {
563
561
  log.error(`Adapter Exception: ${error}`);
564
562
  done(error);
565
563
  }
566
- });
564
+ }).timeout(attemptTimeout);
567
565
  });
568
566
 
569
567
  describe('propertiesSchema.json', () => {