@itentialopensource/adapter-solarwinds 0.9.5 → 0.10.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.
- package/.eslintrc.js +1 -0
- package/AUTH.md +4 -4
- package/BROKER.md +4 -4
- package/CALLS.md +9 -9
- package/ENHANCE.md +3 -3
- package/PROPERTIES.md +24 -9
- package/README.md +24 -23
- package/SUMMARY.md +2 -2
- package/SYSTEMINFO.md +1 -1
- package/TAB1.md +2 -2
- package/TAB2.md +11 -7
- package/TROUBLESHOOT.md +10 -1
- package/UTILITIES.md +473 -0
- package/adapter.js +5 -5
- package/adapterBase.js +52 -16
- package/package.json +24 -28
- package/pronghorn.json +27 -25
- package/propertiesSchema.json +68 -7
- package/report/adapterInfo.json +7 -7
- package/report/auto-adapter-openapi.json +38734 -0
- package/report/updateReport1748556228409.json +120 -0
- package/sampleProperties.json +6 -2
- package/test/integration/adapterTestBasicGet.js +88 -54
- package/test/integration/adapterTestConnectivity.js +15 -16
- package/test/integration/adapterTestIntegration.js +1 -38
- package/test/unit/adapterBaseTestUnit.js +641 -39
- package/test/unit/adapterTestUnit.js +17 -54
- package/utils/adapterInfo.js +114 -164
- package/utils/argParser.js +44 -0
- package/utils/checkMigrate.js +77 -38
- package/utils/entitiesToDB.js +53 -42
- package/utils/logger.js +26 -0
- package/utils/modify.js +56 -55
- package/utils/mongoDbConnection.js +79 -0
- package/utils/mongoUtils.js +162 -0
- package/utils/taskMover.js +31 -32
- package/utils/tbScript.js +36 -172
- package/utils/tbUtils.js +84 -226
- package/utils/troubleshootingAdapter.js +68 -84
- package/utils/updateAdapterConfig.js +158 -0
- package/utils/addAuth.js +0 -94
- package/utils/artifactize.js +0 -146
- package/utils/basicGet.js +0 -50
- package/utils/packModificationScript.js +0 -35
- package/utils/patches2bundledDeps.js +0 -90
package/package.json
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itentialopensource/adapter-solarwinds",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "This adapter integrates with system Solarwinds",
|
|
5
5
|
"main": "adapter.js",
|
|
6
6
|
"systemName": "SolarWinds Information Service",
|
|
7
7
|
"wizardVersion": "2.44.7",
|
|
8
|
-
"engineVersion": "1.
|
|
8
|
+
"engineVersion": "1.69.14",
|
|
9
9
|
"adapterType": "http",
|
|
10
10
|
"scripts": {
|
|
11
|
-
"artifactize": "npm i && node utils/packModificationScript.js",
|
|
12
11
|
"preinstall": "node utils/setup.js",
|
|
13
12
|
"deinstall": "node utils/removeHooks.js",
|
|
14
13
|
"lint": "node --max_old_space_size=4096 ./node_modules/eslint/bin/eslint.js . --ext .json --ext .js",
|
|
@@ -17,7 +16,6 @@
|
|
|
17
16
|
"test:unit": "mocha test/unit/adapterTestUnit.js --LOG=error",
|
|
18
17
|
"test:integration": "mocha test/integration/adapterTestIntegration.js --LOG=error",
|
|
19
18
|
"test": "npm run test:baseunit && npm run test:unit && npm run test:integration",
|
|
20
|
-
"adapter:install": "npm i && node utils/tbScript.js install",
|
|
21
19
|
"adapter:checkMigrate": "node utils/checkMigrate.js",
|
|
22
20
|
"adapter:findPath": "node utils/findPath.js",
|
|
23
21
|
"adapter:migrate": "node utils/modify.js -m",
|
|
@@ -32,10 +30,9 @@
|
|
|
32
30
|
},
|
|
33
31
|
"keywords": [
|
|
34
32
|
"Itential",
|
|
35
|
-
"
|
|
33
|
+
"Itential Platform",
|
|
36
34
|
"Automation",
|
|
37
35
|
"Integration",
|
|
38
|
-
"App-Artifacts",
|
|
39
36
|
"Adapter",
|
|
40
37
|
"Telemetry",
|
|
41
38
|
"Analytics",
|
|
@@ -54,30 +51,29 @@
|
|
|
54
51
|
"author": "Itential",
|
|
55
52
|
"homepage": "https://gitlab.com/itentialopensource/adapters/adapter-solarwinds#readme",
|
|
56
53
|
"dependencies": {
|
|
57
|
-
"@itentialopensource/adapter-utils": "
|
|
58
|
-
"acorn": "
|
|
59
|
-
"ajv": "
|
|
60
|
-
"axios": "
|
|
61
|
-
"commander": "
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"
|
|
65
|
-
"mocha": "
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"winston": "^3.17.0"
|
|
54
|
+
"@itentialopensource/adapter-utils": "5.10.16",
|
|
55
|
+
"acorn": "8.14.1",
|
|
56
|
+
"ajv": "8.17.1",
|
|
57
|
+
"axios": "1.9.0",
|
|
58
|
+
"commander": "11.1.0",
|
|
59
|
+
"fs-extra": "11.3.0",
|
|
60
|
+
"json-query": "2.2.2",
|
|
61
|
+
"mocha": "10.8.2",
|
|
62
|
+
"mocha-param": "2.0.1",
|
|
63
|
+
"mongodb": "4.17.2",
|
|
64
|
+
"ping": "0.4.4",
|
|
65
|
+
"prompts": "2.4.2",
|
|
66
|
+
"readline-sync": "1.4.10",
|
|
67
|
+
"semver": "7.7.2",
|
|
68
|
+
"winston": "3.17.0"
|
|
73
69
|
},
|
|
74
70
|
"devDependencies": {
|
|
75
|
-
"chai": "
|
|
76
|
-
"eslint": "
|
|
77
|
-
"eslint-config-airbnb-base": "
|
|
78
|
-
"eslint-plugin-import": "
|
|
79
|
-
"eslint-plugin-json": "
|
|
80
|
-
"testdouble": "
|
|
71
|
+
"chai": "4.5.0",
|
|
72
|
+
"eslint": "8.57.0",
|
|
73
|
+
"eslint-config-airbnb-base": "15.0.0",
|
|
74
|
+
"eslint-plugin-import": "2.31.0",
|
|
75
|
+
"eslint-plugin-json": "3.1.0",
|
|
76
|
+
"testdouble": "3.18.0"
|
|
81
77
|
},
|
|
82
78
|
"private": false
|
|
83
79
|
}
|
package/pronghorn.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"admin"
|
|
9
9
|
],
|
|
10
10
|
"methods": [
|
|
11
|
-
|
|
11
|
+
{
|
|
12
12
|
"name": "iapUpdateAdapterConfiguration",
|
|
13
13
|
"summary": "Updates the adapter configuration",
|
|
14
14
|
"description": "Updates the adapter configuration file with the provided changes",
|
|
@@ -177,7 +177,7 @@
|
|
|
177
177
|
},
|
|
178
178
|
"task": true
|
|
179
179
|
},
|
|
180
|
-
|
|
180
|
+
{
|
|
181
181
|
"name": "iapFindAdapterPath",
|
|
182
182
|
"summary": "Provides the ability to see if a particular API path is supported by the adapter",
|
|
183
183
|
"description": "Provides the ability to see if a particular API path is supported by the adapter",
|
|
@@ -212,7 +212,7 @@
|
|
|
212
212
|
},
|
|
213
213
|
"task": true
|
|
214
214
|
},
|
|
215
|
-
|
|
215
|
+
{
|
|
216
216
|
"name": "iapTroubleshootAdapter",
|
|
217
217
|
"summary": "Runs troubleshoot script for adapter",
|
|
218
218
|
"description": "Runs troubleshoot script for adapter",
|
|
@@ -226,16 +226,6 @@
|
|
|
226
226
|
"title": "props",
|
|
227
227
|
"type": "object"
|
|
228
228
|
}
|
|
229
|
-
},
|
|
230
|
-
{
|
|
231
|
-
"name": "persistFlag",
|
|
232
|
-
"type": "boolean",
|
|
233
|
-
"info": "Whether the input properties should be saved",
|
|
234
|
-
"required": true,
|
|
235
|
-
"schema": {
|
|
236
|
-
"title": "persistFlag",
|
|
237
|
-
"type": "boolean"
|
|
238
|
-
}
|
|
239
229
|
}
|
|
240
230
|
],
|
|
241
231
|
"output": {
|
|
@@ -256,7 +246,7 @@
|
|
|
256
246
|
},
|
|
257
247
|
"task": true
|
|
258
248
|
},
|
|
259
|
-
|
|
249
|
+
{
|
|
260
250
|
"name": "iapRunAdapterHealthcheck",
|
|
261
251
|
"summary": "Runs healthcheck script for adapter",
|
|
262
252
|
"description": "Runs healthcheck script for adapter",
|
|
@@ -279,7 +269,7 @@
|
|
|
279
269
|
},
|
|
280
270
|
"task": true
|
|
281
271
|
},
|
|
282
|
-
|
|
272
|
+
{
|
|
283
273
|
"name": "iapRunAdapterConnectivity",
|
|
284
274
|
"summary": "Runs connectivity check script for adapter",
|
|
285
275
|
"description": "Runs connectivity check script for adapter",
|
|
@@ -302,11 +292,23 @@
|
|
|
302
292
|
},
|
|
303
293
|
"task": true
|
|
304
294
|
},
|
|
305
|
-
|
|
295
|
+
{
|
|
306
296
|
"name": "iapRunAdapterBasicGet",
|
|
307
297
|
"summary": "Runs basicGet script for adapter",
|
|
308
298
|
"description": "Runs basicGet script for adapter",
|
|
309
|
-
"input": [
|
|
299
|
+
"input": [
|
|
300
|
+
{
|
|
301
|
+
"name": "maxCalls",
|
|
302
|
+
"required": false,
|
|
303
|
+
"type": "number",
|
|
304
|
+
"info": "How many GET endpoints to test (defaults to 5)",
|
|
305
|
+
"schema": {
|
|
306
|
+
"title": "maxCalls",
|
|
307
|
+
"type": "number",
|
|
308
|
+
"default": 5
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
],
|
|
310
312
|
"output": {
|
|
311
313
|
"name": "result",
|
|
312
314
|
"type": "object",
|
|
@@ -325,10 +327,10 @@
|
|
|
325
327
|
},
|
|
326
328
|
"task": true
|
|
327
329
|
},
|
|
328
|
-
|
|
330
|
+
{
|
|
329
331
|
"name": "iapMoveAdapterEntitiesToDB",
|
|
330
|
-
"summary": "Moves entities from an adapter into the
|
|
331
|
-
"description": "Moves entities from an adapter into the
|
|
332
|
+
"summary": "Moves entities from an adapter into the Itential Platform database",
|
|
333
|
+
"description": "Moves entities from an adapter into the Itential Platform database",
|
|
332
334
|
"input": [],
|
|
333
335
|
"output": {
|
|
334
336
|
"name": "res",
|
|
@@ -762,7 +764,7 @@
|
|
|
762
764
|
},
|
|
763
765
|
"task": true
|
|
764
766
|
},
|
|
765
|
-
|
|
767
|
+
{
|
|
766
768
|
"name": "genericAdapterRequest",
|
|
767
769
|
"summary": "Makes the requested generic call",
|
|
768
770
|
"description": "Makes the requested generic call",
|
|
@@ -841,7 +843,7 @@
|
|
|
841
843
|
},
|
|
842
844
|
"task": true
|
|
843
845
|
},
|
|
844
|
-
|
|
846
|
+
{
|
|
845
847
|
"name": "genericAdapterRequestNoBasePath",
|
|
846
848
|
"summary": "Makes the requested generic call",
|
|
847
849
|
"description": "Makes the requested generic call",
|
|
@@ -27933,13 +27935,13 @@
|
|
|
27933
27935
|
"description": "",
|
|
27934
27936
|
"input": [
|
|
27935
27937
|
{
|
|
27936
|
-
"name"
|
|
27938
|
+
"name": "swisUri",
|
|
27937
27939
|
"type": "string",
|
|
27938
27940
|
"info": "",
|
|
27939
27941
|
"required": true,
|
|
27940
|
-
"schema"
|
|
27942
|
+
"schema": {
|
|
27941
27943
|
"title": "swisUri",
|
|
27942
|
-
"type"
|
|
27944
|
+
"type": "string"
|
|
27943
27945
|
}
|
|
27944
27946
|
},
|
|
27945
27947
|
{
|
package/propertiesSchema.json
CHANGED
|
@@ -764,6 +764,14 @@
|
|
|
764
764
|
"security/ca.pem"
|
|
765
765
|
]
|
|
766
766
|
},
|
|
767
|
+
"ca_file_content": {
|
|
768
|
+
"type": "string",
|
|
769
|
+
"description": "The content of the CA file used for SSL",
|
|
770
|
+
"default": "",
|
|
771
|
+
"examples": [
|
|
772
|
+
"-----BEGIN CERTIFICATE-----"
|
|
773
|
+
]
|
|
774
|
+
},
|
|
767
775
|
"key_file": {
|
|
768
776
|
"type": "string",
|
|
769
777
|
"description": "The fully qualified path name to the key file used for SSL",
|
|
@@ -853,32 +861,48 @@
|
|
|
853
861
|
"mongo": {
|
|
854
862
|
"type": "object",
|
|
855
863
|
"properties": {
|
|
864
|
+
"url": {
|
|
865
|
+
"type": "string",
|
|
866
|
+
"description": "Mongo's complete connection URL. This property overrides host, port, database, username, password and replSet settings.",
|
|
867
|
+
"examples": [
|
|
868
|
+
"mongodb://[username:password@]host1[:port1][,...hostN[:portN]][/[defaultauthdb][?options]]",
|
|
869
|
+
"mongodb+srv://[username:password@]cluster0.xxxxx.mongodb.net/[defaultauthdb][?options]",
|
|
870
|
+
"mongodb+srv://cluster0.xxxxx.mongodb.net/[defaultauthdb][?options]"
|
|
871
|
+
]
|
|
872
|
+
},
|
|
856
873
|
"host": {
|
|
857
874
|
"type": "string",
|
|
858
|
-
"description": "
|
|
875
|
+
"description": "Host information for the Mongo server",
|
|
859
876
|
"default": "",
|
|
860
877
|
"examples": [
|
|
861
|
-
"localhost"
|
|
878
|
+
"localhost",
|
|
879
|
+
"cluster0.xxxxx.mongodb.net",
|
|
880
|
+
"my-cluster.example.com"
|
|
862
881
|
]
|
|
863
882
|
},
|
|
864
883
|
"port": {
|
|
865
884
|
"type": "integer",
|
|
866
|
-
"description": "
|
|
885
|
+
"description": "Port information for the Mongo server. Not used when using mongodb+srv:// protocol",
|
|
867
886
|
"default": 443,
|
|
868
887
|
"minimum": 0,
|
|
869
888
|
"maximum": 65535
|
|
870
889
|
},
|
|
871
890
|
"database": {
|
|
872
891
|
"type": "string",
|
|
873
|
-
"description": "The
|
|
892
|
+
"description": "The database for the adapter to use for its data.",
|
|
874
893
|
"default": "",
|
|
875
894
|
"examples": [
|
|
876
895
|
"adapter-xyz"
|
|
877
896
|
]
|
|
878
897
|
},
|
|
898
|
+
"dbAuth": {
|
|
899
|
+
"type": "boolean",
|
|
900
|
+
"description": "Whether to use authentication for MongoDB connection. Default is false.",
|
|
901
|
+
"default": false
|
|
902
|
+
},
|
|
879
903
|
"username": {
|
|
880
904
|
"type": "string",
|
|
881
|
-
"description": "
|
|
905
|
+
"description": "If credentials are required to access Mongo, this is the user to login as.",
|
|
882
906
|
"default": "",
|
|
883
907
|
"examples": [
|
|
884
908
|
"username"
|
|
@@ -886,7 +910,7 @@
|
|
|
886
910
|
},
|
|
887
911
|
"password": {
|
|
888
912
|
"type": "string",
|
|
889
|
-
"description": "
|
|
913
|
+
"description": "If credentials are required to access Mongo, this is the password to login with.",
|
|
890
914
|
"default": "",
|
|
891
915
|
"examples": [
|
|
892
916
|
"password"
|
|
@@ -894,12 +918,17 @@
|
|
|
894
918
|
},
|
|
895
919
|
"replSet": {
|
|
896
920
|
"type": "string",
|
|
897
|
-
"description": "
|
|
921
|
+
"description": "If the database is set up to use replica sets, define it here so it can be added to the database connection. Not used when using mongodb+srv:// protocol",
|
|
898
922
|
"default": "",
|
|
899
923
|
"examples": [
|
|
900
924
|
"my_repolica_set"
|
|
901
925
|
]
|
|
902
926
|
},
|
|
927
|
+
"addSrv": {
|
|
928
|
+
"type": "boolean",
|
|
929
|
+
"description": "Whether the connection requires the mongodb+srv:// protocol. If true, uses mongodb+srv:// protocol. Note: mongodb+srv:// can also be used for non-Atlas deployments that support DNS SRV records",
|
|
930
|
+
"default": false
|
|
931
|
+
},
|
|
903
932
|
"db_ssl": {
|
|
904
933
|
"type": "object",
|
|
905
934
|
"description": "SSL for mongo database connection",
|
|
@@ -940,6 +969,38 @@
|
|
|
940
969
|
}
|
|
941
970
|
}
|
|
942
971
|
}
|
|
972
|
+
},
|
|
973
|
+
"dependencies": {
|
|
974
|
+
"dbAuth": {
|
|
975
|
+
"oneOf": [
|
|
976
|
+
{
|
|
977
|
+
"properties": {
|
|
978
|
+
"dbAuth": {
|
|
979
|
+
"const": false
|
|
980
|
+
}
|
|
981
|
+
}
|
|
982
|
+
},
|
|
983
|
+
{
|
|
984
|
+
"properties": {
|
|
985
|
+
"dbAuth": {
|
|
986
|
+
"const": true
|
|
987
|
+
},
|
|
988
|
+
"username": {
|
|
989
|
+
"type": "string",
|
|
990
|
+
"minLength": 1
|
|
991
|
+
},
|
|
992
|
+
"password": {
|
|
993
|
+
"type": "string",
|
|
994
|
+
"minLength": 1
|
|
995
|
+
}
|
|
996
|
+
},
|
|
997
|
+
"required": [
|
|
998
|
+
"username",
|
|
999
|
+
"password"
|
|
1000
|
+
]
|
|
1001
|
+
}
|
|
1002
|
+
]
|
|
1003
|
+
}
|
|
943
1004
|
}
|
|
944
1005
|
},
|
|
945
1006
|
"devicebroker": {
|
package/report/adapterInfo.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "0.9.
|
|
3
|
-
"configLines":
|
|
4
|
-
"scriptLines":
|
|
5
|
-
"codeLines":
|
|
6
|
-
"testLines":
|
|
7
|
-
"testCases":
|
|
8
|
-
"totalCodeLines":
|
|
2
|
+
"version": "0.9.6",
|
|
3
|
+
"configLines": 47793,
|
|
4
|
+
"scriptLines": 2498,
|
|
5
|
+
"codeLines": 56910,
|
|
6
|
+
"testLines": 36540,
|
|
7
|
+
"testCases": 1751,
|
|
8
|
+
"totalCodeLines": 95948,
|
|
9
9
|
"wfTasks": 818
|
|
10
10
|
}
|