@itentialopensource/adapter-infoblox 1.15.1 → 1.15.3

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/CHANGELOG.md CHANGED
@@ -1,4 +1,20 @@
1
1
 
2
+ ## 1.15.3 [08-28-2024]
3
+
4
+ * update dependencies and metadata
5
+
6
+ See merge request itentialopensource/adapters/adapter-infoblox!46
7
+
8
+ ---
9
+
10
+ ## 1.15.2 [08-15-2024]
11
+
12
+ * Changes made at 2024.08.14_19:49PM
13
+
14
+ See merge request itentialopensource/adapters/adapter-infoblox!45
15
+
16
+ ---
17
+
2
18
  ## 1.15.1 [08-07-2024]
3
19
 
4
20
  * Changes made at 2024.08.06_21:54PM
package/TAB2.md CHANGED
@@ -65,7 +65,7 @@ Sample Properties can be used to help you configure the adapter in the Itential
65
65
  "auth_method": "basic user_password",
66
66
  "username": "username",
67
67
  "password": "password",
68
- "token": "",
68
+ "token": "token",
69
69
  "token_timeout": 1800000,
70
70
  "token_cache": "local",
71
71
  "invalid_token_error": 401,
package/metadata.json CHANGED
@@ -1,8 +1,10 @@
1
1
  {
2
2
  "name": "adapter-infoblox",
3
3
  "webName": "Adapter for Integration to Infoblox DDI",
4
+ "supportLevel": "certified",
4
5
  "vendor": "Infoblox",
5
6
  "product": "DDI",
7
+ "techAlliance": false,
6
8
  "osVersion": [],
7
9
  "apiVersions": [
8
10
  "v2.7",
@@ -47,7 +49,7 @@
47
49
  "storeLink": "",
48
50
  "npmLink": "https://www.npmjs.com/package/@itentialopensource/adapter-infoblox",
49
51
  "repoLink": "https://gitlab.com/itentialopensource/adapters/adapter-infoblox",
50
- "docLink": "https://docs.itential.com/opensource/docs/infoblox",
52
+ "docLink": "https://gitlab.com/itentialopensource/adapters/adapter-infoblox/-/blob/master/README.md?ref_type=heads",
51
53
  "demoLinks": [
52
54
  {
53
55
  "title": "Integrating Infoblox with Itential for Rapid Automation of DDI Management",
@@ -80,7 +82,16 @@
80
82
  "link": "https://www.infoblox.com/wp-content/uploads/infoblox-deployment-infoblox-rest-api.pdf",
81
83
  "public": true
82
84
  }
83
- ]
85
+ ],
86
+ "workshopLinks": [
87
+ {
88
+ "title": "Assign Network and IP"
89
+ },
90
+ {
91
+ "title": "Create A Record"
92
+ }
93
+ ],
94
+ "workshopHomePage": "https://www.itential.com/get-started/"
84
95
  },
85
96
  "assets": [],
86
97
  "relatedItems": {
@@ -89,20 +100,19 @@
89
100
  "ecosystemApplications": [],
90
101
  "workflowProjects": [
91
102
  {
92
- "name": "Infoblox DNS Management",
93
- "webName": "Project with workflows for the DNS Management from Infoblox",
94
- "overview": "The Infoblox DNS Management pre-built enables IAP users to create, modify, and delete DNS record types in the Infoblox platform. Advantageously, any number of request types (Create, Modify, or Delete) related to any combination of DNS record types (currently available: A, PTR, CNAME, NS, and Fixed Address) may be submitted in one form and processed by one IAP workflow job, providing a streamlined DNS management experience.![Infoblox DNS Management Workflow](./images/DNSinfobloxparentworkflow.png)Users may create requests to create, delete, or modify DNS records using the associated form. The workflow job that launches when the form is submitted leverages child workflows to process requests related to the various DNS record types using an Itential adapter that connects to your Infoblox instance. Upon completion, the workflow provides a summary, in a final manual task, of the successful requests processed by the Infoblox platform.![Infoblox DNS Management Report](./images/DNSinfobloxreport.png)",
103
+ "name": "Infoblox - DDI - REST",
104
+ "webName": "Infoblox DDI - Modular Automations",
105
+ "overview": "The integration of Itential and the Infoblox DDI solution enables network teams to utilize its REST API to build automations that can include common tasks for DNS record and IP management. This is a library of related automations that can be used as modular components in your own larger, end-to-end workflows.",
95
106
  "isDependency": false,
96
107
  "versions": [
97
108
  "0.1.5"
98
109
  ],
99
- "repoLink": "https://gitlab.com/itentialopensource/pre-built-automations/infoblox-dns-management",
110
+ "repoLink": "https://gitlab.com/itentialopensource/pre-built-automations/infoblox-ddi-rest",
100
111
  "docLink": "",
101
- "webLink": "https://www.itential.com/automations/infoblox-dns-management/"
112
+ "webLink": "https://www.itential.com/automations/infoblox-ddi-modular-automations/"
102
113
  }
103
114
  ],
104
115
  "transformationProjects": [],
105
116
  "exampleProjects": []
106
- },
107
- "supportLevel": "community"
117
+ }
108
118
  }
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@itentialopensource/adapter-infoblox",
3
- "version": "1.15.1",
3
+ "version": "1.15.3",
4
4
  "description": "Itential Infoblox Adapter",
5
5
  "main": "adapter.js",
6
6
  "systemName": "Infoblox",
7
7
  "wizardVersion": "2.44.7",
8
- "engineVersion": "1.67.19",
8
+ "engineVersion": "1.68.2",
9
9
  "adapterType": "http",
10
10
  "scripts": {
11
11
  "artifactize": "npm i && node utils/packModificationScript.js",
@@ -57,22 +57,22 @@
57
57
  "author": "Itential",
58
58
  "homepage": "https://gitlab.com/itentialopensource/adapters/adapter-infoblox#readme",
59
59
  "dependencies": {
60
- "@itentialopensource/adapter-utils": "^5.6.0",
60
+ "@itentialopensource/adapter-utils": "^5.7.0",
61
61
  "acorn": "^8.12.1",
62
62
  "ajv": "^8.17.1",
63
- "axios": "^1.7.2",
63
+ "axios": "^1.7.4",
64
64
  "commander": "^11.0.0",
65
65
  "dns-lookup-promise": "^1.0.4",
66
66
  "fs-extra": "^11.2.0",
67
67
  "json-query": "^2.2.2",
68
- "mocha": "^10.7.0",
68
+ "mocha": "^10.7.3",
69
69
  "mocha-param": "^2.0.1",
70
70
  "mongodb": "^4.16.0",
71
71
  "ping": "^0.4.4",
72
72
  "prompts": "^2.4.2",
73
73
  "readline-sync": "^1.4.10",
74
74
  "semver": "^7.6.3",
75
- "winston": "^3.13.1"
75
+ "winston": "^3.14.2"
76
76
  },
77
77
  "devDependencies": {
78
78
  "chai": "^4.3.7",
Binary file
@@ -1,10 +1,10 @@
1
1
  {
2
- "version": "1.14.11",
2
+ "version": "1.15.2",
3
3
  "configLines": 23173,
4
4
  "scriptLines": 1783,
5
5
  "codeLines": 29971,
6
- "testLines": 22930,
7
- "testCases": 1141,
8
- "totalCodeLines": 54684,
6
+ "testLines": 22914,
7
+ "testCases": 1140,
8
+ "totalCodeLines": 54668,
9
9
  "wfTasks": 407
10
10
  }
@@ -17,7 +17,7 @@
17
17
  "auth_method": "basic user_password",
18
18
  "username": "username",
19
19
  "password": "password",
20
- "token": "",
20
+ "token": "token",
21
21
  "token_timeout": 1800000,
22
22
  "token_cache": "local",
23
23
  "invalid_token_error": 401,
@@ -4,7 +4,6 @@
4
4
  /* eslint no-unused-vars: warn */
5
5
 
6
6
  const assert = require('assert');
7
- const http = require('http');
8
7
  const https = require('https');
9
8
  const mocha = require('mocha');
10
9
  const ping = require('ping');
@@ -53,29 +52,6 @@ describe('[integration] Adapter Test', () => {
53
52
  });
54
53
  });
55
54
 
56
- it('Support HTTP on port 80', (done) => {
57
- const requestOptions = {
58
- host,
59
- port: 80,
60
- method: 'HEAD'
61
- };
62
-
63
- const req = http.request(requestOptions, (res) => {
64
- try {
65
- assert.ok(res.statusCode >= 200 && res.statusCode < 400);
66
- done();
67
- } catch (error) {
68
- done(error);
69
- }
70
- });
71
-
72
- req.on('error', (err) => {
73
- done(err);
74
- });
75
-
76
- req.end();
77
- });
78
-
79
55
  it('Support HTTPS on port 443', (done) => {
80
56
  const requestOptions = {
81
57
  host,
@@ -36,13 +36,17 @@ const samProps = require(`${adaptdir}/sampleProperties.json`).properties;
36
36
  // these variables can be changed to run in integrated mode so easier to set them here
37
37
  // always check these in with bogus data!!!
38
38
  samProps.stub = true;
39
- samProps.host = 'replace.hostorip.here';
40
- samProps.authentication.username = 'username';
41
- samProps.authentication.password = 'password';
42
- samProps.protocol = 'http';
43
- samProps.port = 80;
44
- samProps.ssl.enabled = false;
45
- samProps.ssl.accept_invalid_cert = false;
39
+
40
+ // uncomment if connecting
41
+ // samProps.host = 'replace.hostorip.here';
42
+ // samProps.authentication.username = 'username';
43
+ // samProps.authentication.password = 'password';
44
+ // samProps.authentication.token = 'password';
45
+ // samProps.protocol = 'http';
46
+ // samProps.port = 80;
47
+ // samProps.ssl.enabled = false;
48
+ // samProps.ssl.accept_invalid_cert = false;
49
+
46
50
  if (samProps.request.attempt_timeout < 30000) {
47
51
  samProps.request.attempt_timeout = 30000;
48
52
  }
@@ -36,13 +36,17 @@ const samProps = require(`${adaptdir}/sampleProperties.json`).properties;
36
36
  // these variables can be changed to run in integrated mode so easier to set them here
37
37
  // always check these in with bogus data!!!
38
38
  samProps.stub = true;
39
- samProps.host = 'replace.hostorip.here';
40
- samProps.authentication.username = 'username';
41
- samProps.authentication.password = 'password';
42
- samProps.protocol = 'http';
43
- samProps.port = 80;
44
- samProps.ssl.enabled = false;
45
- samProps.ssl.accept_invalid_cert = false;
39
+
40
+ // uncomment if connecting
41
+ // samProps.host = 'replace.hostorip.here';
42
+ // samProps.authentication.username = 'username';
43
+ // samProps.authentication.password = 'password';
44
+ // samProps.authentication.token = 'password';
45
+ // samProps.protocol = 'http';
46
+ // samProps.port = 80;
47
+ // samProps.ssl.enabled = false;
48
+ // samProps.ssl.accept_invalid_cert = false;
49
+
46
50
  samProps.request.attempt_timeout = 1200000;
47
51
  const attemptTimeout = samProps.request.attempt_timeout;
48
52
  const { stub } = samProps;
@@ -315,15 +319,15 @@ describe('[unit] Infoblox Adapter Test', () => {
315
319
  assert.notEqual(null, packageDotJson.dependencies);
316
320
  assert.notEqual('', packageDotJson.dependencies);
317
321
  assert.equal('^8.17.1', packageDotJson.dependencies.ajv);
318
- assert.equal('^1.7.2', packageDotJson.dependencies.axios);
322
+ assert.equal('^1.7.4', packageDotJson.dependencies.axios);
319
323
  assert.equal('^11.0.0', packageDotJson.dependencies.commander);
320
324
  assert.equal('^11.2.0', packageDotJson.dependencies['fs-extra']);
321
- assert.equal('^10.7.0', packageDotJson.dependencies.mocha);
325
+ assert.equal('^10.7.3', packageDotJson.dependencies.mocha);
322
326
  assert.equal('^2.0.1', packageDotJson.dependencies['mocha-param']);
323
327
  assert.equal('^0.4.4', packageDotJson.dependencies.ping);
324
328
  assert.equal('^1.4.10', packageDotJson.dependencies['readline-sync']);
325
329
  assert.equal('^7.6.3', packageDotJson.dependencies.semver);
326
- assert.equal('^3.13.1', packageDotJson.dependencies.winston);
330
+ assert.equal('^3.14.2', packageDotJson.dependencies.winston);
327
331
  done();
328
332
  } catch (error) {
329
333
  log.error(`Test Failure: ${error}`);
@@ -561,7 +565,7 @@ describe('[unit] Infoblox Adapter Test', () => {
561
565
  log.error(`Adapter Exception: ${error}`);
562
566
  done(error);
563
567
  }
564
- });
568
+ }).timeout(attemptTimeout);
565
569
  });
566
570
 
567
571
  describe('propertiesSchema.json', () => {