@axway/axway-central-cli 2.29.0-rc.5 → 2.29.0-rc.6
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/dist/commands/install/agents.js +4 -9
- package/dist/commands/install/awsAgents.js +1 -1
- package/dist/commands/install/azureAgents.js +1 -1
- package/dist/commands/install/edgeAgents.js +1 -1
- package/dist/commands/install/gitLabAgents.js +1 -1
- package/dist/commands/install/helpers/index.js +14 -1
- package/dist/commands/install/helpers/templates/awsTemplates.js +13 -2
- package/dist/commands/install/helpers/templates/azureTemplates.js +13 -2
- package/dist/commands/install/helpers/templates/edgeTemplates.js +22 -4
- package/dist/commands/install/helpers/templates/gitLabTemplates.js +4 -1
- package/dist/commands/install/helpers/templates/graylogTemplates.js +5 -1
- package/dist/commands/install/helpers/templates/ibmAPIConnectTemplates.js +121 -0
- package/dist/commands/install/helpers/templates/kafkaTemplates.js +14 -2
- package/dist/commands/install/ibmAPIConnectAgents.js +214 -0
- package/dist/commands/install/platform.js +2 -0
- package/dist/common/types.js +6 -1
- package/package.json +1 -1
|
@@ -28,6 +28,7 @@ var azureSaasAgents = _interopRequireWildcard(require("./azureSaasAgents"));
|
|
|
28
28
|
var kafkaAgents = _interopRequireWildcard(require("./kafkaAgents"));
|
|
29
29
|
var swaggerHubAgents = _interopRequireWildcard(require("./swaggerHubSaasAgents"));
|
|
30
30
|
var graylogAgent = _interopRequireWildcard(require("./graylogAgent"));
|
|
31
|
+
var ibmAPIConnectAgent = _interopRequireWildcard(require("./ibmAPIConnectAgents"));
|
|
31
32
|
var platform = _interopRequireWildcard(require("./platform"));
|
|
32
33
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
33
34
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -48,7 +49,8 @@ const agentInstallFlows = {
|
|
|
48
49
|
[_types.GatewayTypes.AZURE_GATEWAY]: azureAgents.AzureInstallMethods,
|
|
49
50
|
[_types.GatewayTypes.ISTIO]: istioAgents.IstioInstallMethods,
|
|
50
51
|
[_types.GatewayTypes.KAFKA]: kafkaAgents.KafkaInstallMethods,
|
|
51
|
-
[_types.GatewayTypes.GRAYLOG]: graylogAgent.GraylogInstallMethods
|
|
52
|
+
[_types.GatewayTypes.GRAYLOG]: graylogAgent.GraylogInstallMethods,
|
|
53
|
+
[_types.GatewayTypes.IBMAPICONNECT]: ibmAPIConnectAgent.IBMAPIConnectInstallMethods
|
|
52
54
|
};
|
|
53
55
|
const saasAgentInstallFlows = {
|
|
54
56
|
[_types.SaaSGatewayTypes.AWS_GATEWAY]: awsSaaSAgents.AWSSaaSInstallMethods,
|
|
@@ -112,16 +114,9 @@ const agents = exports.agents = {
|
|
|
112
114
|
console.log(_chalk.default.gray(`This command configures and installs the agents so that you can manage your gateway environment within the Amplify Platform.\n`));
|
|
113
115
|
let installConfig = new _types.AgentInstallConfig();
|
|
114
116
|
installConfig.centralConfig.axwayManaged = !!axwayManaged;
|
|
115
|
-
let orgRegion = '';
|
|
116
|
-
orgRegion = region;
|
|
117
|
-
|
|
118
|
-
// if region cmd arg is not passed in, then consider the region from the account info
|
|
119
|
-
if (region === undefined) {
|
|
120
|
-
orgRegion = accountInfo === null || accountInfo === void 0 ? void 0 : accountInfo.org.region;
|
|
121
|
-
}
|
|
122
117
|
|
|
123
118
|
// top priority is region option on command line, second priority is region from config file, default is US
|
|
124
|
-
installConfig.centralConfig.region = await determineRegion(
|
|
119
|
+
installConfig.centralConfig.region = await determineRegion(region);
|
|
125
120
|
installConfig.centralConfig.singleEntryPointUrl = _types.SingleEntryPointUrls[installConfig.centralConfig.region];
|
|
126
121
|
let gatewayTypeChoices = [];
|
|
127
122
|
Object.values(_types.GatewayTypes).forEach(v => gatewayTypeChoices.push(v));
|
|
@@ -260,7 +260,7 @@ async function configureECSDeployment(awsAgentValues) {
|
|
|
260
260
|
// @ts-ignore
|
|
261
261
|
const gatewayConnectivity = async installConfig => {
|
|
262
262
|
console.log('\nCONNECTION TO AMAZON API GATEWAY:');
|
|
263
|
-
console.log(_chalk.default.gray(`You need credentials for executing the AWS CLI commands.\n` + `The Discovery Agent needs to connect to the Amazon (AWS) API Gateway to discover API's for publishing to Amplify
|
|
263
|
+
console.log(_chalk.default.gray(`You need credentials for executing the AWS CLI commands.\n` + `The Discovery Agent needs to connect to the Amazon (AWS) API Gateway to discover API's for publishing to Amplify.\n` + `The Traceability Agent needs to connect to the AWS API Gateway for the collection of transaction headers.\n` + `These headers will be formatted and forwarded to the Business Insights.\n` + `We recommend to use two different set of credentials: one for AWS CLI and one for the agents`));
|
|
264
264
|
|
|
265
265
|
// DeploymentType
|
|
266
266
|
const deploymentType = await askDeployment();
|
|
@@ -99,7 +99,7 @@ const askAzurePolicyKey = async () => await (0, _basicPrompts.askInput)({
|
|
|
99
99
|
const gatewayConnectivity = async installConfig => {
|
|
100
100
|
const azureAgentValues = new _azureTemplates.AzureAgentValues();
|
|
101
101
|
console.log('\nCONNECTION TO AZURE:');
|
|
102
|
-
console.log(_chalk.default.gray(`The discovery agent needs to connect to the Azure API Gateway to discover API's for publishing to Amplify
|
|
102
|
+
console.log(_chalk.default.gray(`The discovery agent needs to connect to the Azure API Gateway to discover API's for publishing to Amplify.\nThe traceability agent needs to connect to an Azure Event Hub for collecting APIs transactions. These will be forwarded to the Business Insights.\n`));
|
|
103
103
|
|
|
104
104
|
// Azure Discovery Agent Prompts
|
|
105
105
|
if (installConfig.switches.isDaEnabled) {
|
|
@@ -179,7 +179,7 @@ const gatewayConnectivity = async installConfig => {
|
|
|
179
179
|
}
|
|
180
180
|
if (!installConfig.switches.isGatewayOnly || installConfig.switches.isDaEnabled) {
|
|
181
181
|
console.log('\nCONNECTION TO API MANAGER:');
|
|
182
|
-
console.log(_cliKit.chalk.gray(`The agents need to connect to the Axway API Manager to discover APIs for publishing to Amplify
|
|
182
|
+
console.log(_cliKit.chalk.gray(`The agents need to connect to the Axway API Manager to discover APIs for publishing to Amplify.\n` + `Use the credentials of an API Manager Administrator user or an Organization Administrator user.`));
|
|
183
183
|
if (installConfig.switches.isHelmInstall) {
|
|
184
184
|
console.log(_cliKit.chalk.white(`Please use the name of the API Manager Service as hostname.`));
|
|
185
185
|
}
|
|
@@ -106,7 +106,7 @@ const gatewayConnectivity = async installConfig => {
|
|
|
106
106
|
let gitLabAgentValues = new _gitLabTemplates.GitLabAgentValues();
|
|
107
107
|
if (installConfig.switches.isDockerInstall) {
|
|
108
108
|
console.log('\nCONNECTION TO GitHub API GATEWAY:');
|
|
109
|
-
console.log(_chalk.default.gray("The Discovery Agent needs to connect to the GitHub API Gateway to discover API's for publishing to Amplify Central"));
|
|
109
|
+
console.log(_chalk.default.gray("The Discovery Agent needs to connect to the GitHub API Gateway to discover API's for publishing to Amplify Central."));
|
|
110
110
|
gitLabAgentValues.token = await askForGitLabToken();
|
|
111
111
|
gitLabAgentValues.baseURL = await askForGitLabBaseURL();
|
|
112
112
|
gitLabAgentValues.repositoryID = await askForGitLabRepositoryID();
|
|
@@ -164,6 +164,18 @@ Object.keys(_graylogTemplates).forEach(function (key) {
|
|
|
164
164
|
}
|
|
165
165
|
});
|
|
166
166
|
});
|
|
167
|
+
var _ibmAPIConnectTemplates = require("./templates/ibmAPIConnectTemplates");
|
|
168
|
+
Object.keys(_ibmAPIConnectTemplates).forEach(function (key) {
|
|
169
|
+
if (key === "default" || key === "__esModule") return;
|
|
170
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
171
|
+
if (key in exports && exports[key] === _ibmAPIConnectTemplates[key]) return;
|
|
172
|
+
Object.defineProperty(exports, key, {
|
|
173
|
+
enumerable: true,
|
|
174
|
+
get: function () {
|
|
175
|
+
return _ibmAPIConnectTemplates[key];
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
});
|
|
167
179
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
168
180
|
const streamPipeline = exports.streamPipeline = _util.default.promisify(_stream.default.pipeline);
|
|
169
181
|
const unzip = async filePath => {
|
|
@@ -193,7 +205,8 @@ const agentsDocsUrl = exports.agentsDocsUrl = {
|
|
|
193
205
|
AWS: 'https://docs.axway.com/bundle/amplify-central/page/docs/connect_manage_environ/connect_aws_gateway/index.html',
|
|
194
206
|
AZURE: 'https://docs.axway.com/bundle/amplify-central/page/docs/connect_manage_environ/connect_azure_gateway/index.html',
|
|
195
207
|
ISTIO: 'https://docs.axway.com/bundle/amplify-central/page/docs/connect_manage_environ/mesh_management/index.html',
|
|
196
|
-
GRAYLOG: 'https://docs.axway.com/bundle/amplify-central/page/docs/connect_manage_environ/mesh_management/index.html'
|
|
208
|
+
GRAYLOG: 'https://docs.axway.com/bundle/amplify-central/page/docs/connect_manage_environ/mesh_management/index.html',
|
|
209
|
+
IBMAPICONNECT: ''
|
|
197
210
|
};
|
|
198
211
|
|
|
199
212
|
// export * from './updaters';
|
|
@@ -77,8 +77,16 @@ CENTRAL_AUTH_PUBLICKEY={{centralConfig.dosaAccount.templatePublicKey}}
|
|
|
77
77
|
CENTRAL_ENVIRONMENT={{centralConfig.environment}}
|
|
78
78
|
CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
79
79
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
80
|
-
|
|
80
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
81
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
82
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
83
|
+
CENTRAL_DEPLOYMENT={{centralConfig.deployment}}
|
|
81
84
|
|
|
85
|
+
TRACEABILITY_HOST={{traceabilityConfig.host}}
|
|
86
|
+
{{/compare}}
|
|
87
|
+
{{#compare . centralConfig.region "US"}}
|
|
88
|
+
|
|
89
|
+
{{/compare}}
|
|
82
90
|
{{#compare . traceabilityConfig.protocol "https"}}
|
|
83
91
|
TRACEABILITY_PROTOCOL={{traceabilityConfig.protocol}}
|
|
84
92
|
{{/compare}}
|
|
@@ -120,7 +128,10 @@ CENTRAL_AUTH_PUBLICKEY={{centralConfig.dosaAccount.templatePublicKey}}
|
|
|
120
128
|
CENTRAL_ENVIRONMENT={{centralConfig.environment}}
|
|
121
129
|
CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
122
130
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
123
|
-
|
|
131
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
132
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
133
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
134
|
+
{{/compare}}
|
|
124
135
|
|
|
125
136
|
# Logging configs
|
|
126
137
|
# Define the logging level: info, debug, error
|
|
@@ -70,8 +70,16 @@ CENTRAL_AUTH_PUBLICKEY={{centralConfig.dosaAccount.templatePublicKey}}
|
|
|
70
70
|
CENTRAL_ENVIRONMENT={{centralConfig.environment}}
|
|
71
71
|
CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
72
72
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
73
|
-
|
|
73
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
74
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
75
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
76
|
+
CENTRAL_DEPLOYMENT={{centralConfig.deployment}}
|
|
74
77
|
|
|
78
|
+
TRACEABILITY_HOST={{traceabilityConfig.host}}
|
|
79
|
+
{{/compare}}
|
|
80
|
+
{{#compare . centralConfig.region "US"}}
|
|
81
|
+
|
|
82
|
+
{{/compare}}
|
|
75
83
|
{{#compare . traceabilityConfig.protocol "https"}}
|
|
76
84
|
TRACEABILITY_PROTOCOL={{traceabilityConfig.protocol}}
|
|
77
85
|
{{/compare}}
|
|
@@ -110,7 +118,10 @@ CENTRAL_AUTH_PUBLICKEY={{centralConfig.dosaAccount.templatePublicKey}}
|
|
|
110
118
|
CENTRAL_ENVIRONMENT={{centralConfig.environment}}
|
|
111
119
|
CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
112
120
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
113
|
-
|
|
121
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
122
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
123
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
124
|
+
{{/compare}}
|
|
114
125
|
|
|
115
126
|
# Logging configs
|
|
116
127
|
# Define the logging level: info, debug, error
|
|
@@ -112,7 +112,16 @@ CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
|
112
112
|
{{#compare . centralConfig.ampcTeamName "" operator="!=" }}
|
|
113
113
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
114
114
|
{{/compare}}
|
|
115
|
-
|
|
115
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
116
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
117
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
118
|
+
CENTRAL_DEPLOYMENT={{centralConfig.deployment}}
|
|
119
|
+
|
|
120
|
+
TRACEABILITY_HOST={{traceabilityConfig.host}}
|
|
121
|
+
{{/compare}}
|
|
122
|
+
{{#compare . centralConfig.region "US"}}
|
|
123
|
+
|
|
124
|
+
{{/compare}}
|
|
116
125
|
{{#compare . traceabilityConfig.protocol "https"}}
|
|
117
126
|
TRACEABILITY_PROTOCOL={{traceabilityConfig.protocol}}
|
|
118
127
|
{{/compare}}
|
|
@@ -156,7 +165,10 @@ statusPort: 8990
|
|
|
156
165
|
env:
|
|
157
166
|
LOG_LEVEL: info
|
|
158
167
|
CENTRAL_AGENTNAME: {{centralConfig.taAgentName}}
|
|
159
|
-
|
|
168
|
+
CENTRAL_URL: {{centralConfig.url}}
|
|
169
|
+
CENTRAL_AUTH_URL: {{centralConfig.authUrl}}
|
|
170
|
+
CENTRAL_SINGLEURL: {{centralConfig.singleEntryPointUrl}}
|
|
171
|
+
CENTRAL_DEPLOYMENT: {{centralConfig.deployment}}
|
|
160
172
|
CENTRAL_AUTH_CLIENTID: {{centralConfig.dosaAccount.clientId}}
|
|
161
173
|
CENTRAL_ORGANIZATIONID: "{{centralConfig.orgId}}"
|
|
162
174
|
CENTRAL_ENVIRONMENT: {{centralConfig.environment}}
|
|
@@ -170,6 +182,7 @@ env:
|
|
|
170
182
|
# API Gateway event logs
|
|
171
183
|
EVENT_LOG_PATHS: /events/*.log
|
|
172
184
|
{{/if}}
|
|
185
|
+
TRACEABILITY_HOST: {{traceabilityConfig.host}}
|
|
173
186
|
TRACEABILITY_PROTOCOL: {{traceabilityConfig.protocol}}
|
|
174
187
|
TRACEABILITY_SAMPLING_PERCENTAGE: {{traceabilityConfig.samplingPercentage}}
|
|
175
188
|
TRACEABILITY_SAMPLING_REPORTALLERRORS: {{traceabilityConfig.samplingReportAllErrors}}
|
|
@@ -266,7 +279,10 @@ CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
|
266
279
|
{{#compare . centralConfig.ampcTeamName "" operator="!=" }}
|
|
267
280
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
268
281
|
{{/compare}}
|
|
269
|
-
|
|
282
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
283
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
284
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
285
|
+
{{/compare}}
|
|
270
286
|
|
|
271
287
|
# Logging configs
|
|
272
288
|
# Define the logging level: info, debug, error
|
|
@@ -305,7 +321,9 @@ statusPort: 8989
|
|
|
305
321
|
env:
|
|
306
322
|
LOG_LEVEL: info
|
|
307
323
|
CENTRAL_AGENTNAME: {{centralConfig.daAgentName}}
|
|
308
|
-
|
|
324
|
+
CENTRAL_URL: {{centralConfig.url}}
|
|
325
|
+
CENTRAL_AUTH_URL: {{centralConfig.authUrl}}
|
|
326
|
+
CENTRAL_SINGLEURL: {{centralConfig.singleEntryPointUrl}}
|
|
309
327
|
CENTRAL_AUTH_CLIENTID: {{centralConfig.dosaAccount.clientId}}
|
|
310
328
|
CENTRAL_ORGANIZATIONID: "{{centralConfig.orgId}}"
|
|
311
329
|
CENTRAL_ENVIRONMENT: {{centralConfig.environment}}
|
|
@@ -54,7 +54,10 @@ CENTRAL_GRPC_ENABLED=true
|
|
|
54
54
|
{{#compare . centralConfig.ampcTeamName "" operator="!=" }}
|
|
55
55
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
56
56
|
{{/compare}}
|
|
57
|
-
|
|
57
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
58
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
59
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
60
|
+
{{/compare}}
|
|
58
61
|
|
|
59
62
|
# Logging configs
|
|
60
63
|
# Define the logging level: info, debug, error
|
|
@@ -54,12 +54,16 @@ secrets:
|
|
|
54
54
|
name: {{agentKeysSecret}}
|
|
55
55
|
|
|
56
56
|
env:
|
|
57
|
-
|
|
57
|
+
CENTRAL_SINGLEURL: {{centralConfig.singleEntryPointUrl}}
|
|
58
|
+
CENTRAL_URL: {{centralConfig.url}}
|
|
59
|
+
CENTRAL_AUTH_URL: {{centralConfig.authUrl}}
|
|
58
60
|
CENTRAL_ORGANIZATIONID: "{{centralConfig.orgId}}"
|
|
61
|
+
CENTRAL_DEPLOYMENT: {{centralConfig.deployment}}
|
|
59
62
|
CENTRAL_TEAM: {{centralConfig.ampcTeamName}}
|
|
60
63
|
CENTRAL_ENVIRONMENT: {{centralConfig.environment}}
|
|
61
64
|
CENTRAL_AGENTNAME: {{centralConfig.taAgentName}}
|
|
62
65
|
CENTRAL_AUTH_CLIENTID: {{centralConfig.dosaAccount.clientId}}
|
|
66
|
+
TRACEABILITY_HOST: {{traceabilityConfig.host}}
|
|
63
67
|
TRACEABILITY_PROTOCOL: {{traceabilityConfig.protocol}}
|
|
64
68
|
`;
|
|
65
69
|
};
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ibmAPIConnectTAEnvVarTemplate = exports.ibmAPIConnectDAEnvVarTemplate = exports.IBMAPIConnectAgentValues = void 0;
|
|
7
|
+
var _types = require("../../../../common/types");
|
|
8
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
9
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
10
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
11
|
+
/**
|
|
12
|
+
* @description Parameters to provide to the IBM API Connect handlebars templates.
|
|
13
|
+
*/
|
|
14
|
+
class IBMAPIConnectAgentValues {
|
|
15
|
+
constructor() {
|
|
16
|
+
_defineProperty(this, "apiConnectURL", void 0);
|
|
17
|
+
_defineProperty(this, "apiConnectOrgName", void 0);
|
|
18
|
+
_defineProperty(this, "apiConnectCatalogName", void 0);
|
|
19
|
+
_defineProperty(this, "apiConnectAuthAPIKey", void 0);
|
|
20
|
+
_defineProperty(this, "apiConnectAuthClientID", void 0);
|
|
21
|
+
_defineProperty(this, "apiConnectAuthClientSecret", void 0);
|
|
22
|
+
_defineProperty(this, "apiConnectConsumerOrgOwnerUser", void 0);
|
|
23
|
+
_defineProperty(this, "apiConnectConsumerOrgOwnerRegistry", void 0);
|
|
24
|
+
_defineProperty(this, "apiConnectAnalyticsServerName", void 0);
|
|
25
|
+
_defineProperty(this, "centralConfig", void 0);
|
|
26
|
+
_defineProperty(this, "traceabilityConfig", void 0);
|
|
27
|
+
this.apiConnectURL = '';
|
|
28
|
+
this.apiConnectOrgName = '';
|
|
29
|
+
this.apiConnectCatalogName = '';
|
|
30
|
+
this.apiConnectAuthAPIKey = '';
|
|
31
|
+
this.apiConnectAuthClientID = '';
|
|
32
|
+
this.apiConnectAuthClientSecret = '';
|
|
33
|
+
this.apiConnectConsumerOrgOwnerUser = '';
|
|
34
|
+
this.apiConnectConsumerOrgOwnerRegistry = '';
|
|
35
|
+
this.apiConnectAnalyticsServerName = '';
|
|
36
|
+
this.centralConfig = new _types.CentralAgentConfig();
|
|
37
|
+
this.traceabilityConfig = new _types.TraceabilityConfig();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* @description Generates the IBM API Connect DA env vars file.
|
|
43
|
+
*/
|
|
44
|
+
exports.IBMAPIConnectAgentValues = IBMAPIConnectAgentValues;
|
|
45
|
+
const ibmAPIConnectDAEnvVarTemplate = () => {
|
|
46
|
+
return `# IBM API Connect configs
|
|
47
|
+
APICONNECT_URL={{apiConnectURL}}
|
|
48
|
+
APICONNECT_ORGANIZATIONNAME={{apiConnectOrgName}}
|
|
49
|
+
APICONNECT_CATALOGNAME={{apiConnectCatalogName}}
|
|
50
|
+
APICONNECT_AUTH_APIKEY={{apiConnectAuthAPIKey}}
|
|
51
|
+
APICONNECT_AUTH_CLIENTID={{apiConnectAuthClientID}}
|
|
52
|
+
APICONNECT_AUTH_CLIENTSECRET={{apiConnectAuthClientSecret}}
|
|
53
|
+
APICONNECT_CONSUMERORGOWNER_USER={{apiConnectConsumerOrgOwnerUser}}
|
|
54
|
+
APICONNECT_CONSUMERORGOWNER_REGISTRY={{apiConnectConsumerOrgOwnerRegistry}}
|
|
55
|
+
|
|
56
|
+
# Amplify Central configs
|
|
57
|
+
CENTRAL_AGENTNAME={{centralConfig.daAgentName}}
|
|
58
|
+
CENTRAL_AUTH_CLIENTID={{centralConfig.dosaAccount.clientId}}
|
|
59
|
+
CENTRAL_AUTH_PRIVATEKEY={{centralConfig.dosaAccount.templatePrivateKey}}
|
|
60
|
+
CENTRAL_AUTH_PUBLICKEY={{centralConfig.dosaAccount.templatePublicKey}}
|
|
61
|
+
CENTRAL_ENVIRONMENT={{centralConfig.environment}}
|
|
62
|
+
CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
63
|
+
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
64
|
+
CENTRAL_REGION={{centralConfig.region}}
|
|
65
|
+
|
|
66
|
+
# Logging configs
|
|
67
|
+
# Define the logging level: info, debug, error
|
|
68
|
+
LOG_LEVEL=info
|
|
69
|
+
# Specify where to send the log: stdout, file, both
|
|
70
|
+
LOG_OUTPUT=stdout
|
|
71
|
+
# Define where the log files are written
|
|
72
|
+
LOG_FILE_PATH=logs
|
|
73
|
+
`;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* @description Generates the IBM API Connect TA env vars file.
|
|
78
|
+
*/
|
|
79
|
+
exports.ibmAPIConnectDAEnvVarTemplate = ibmAPIConnectDAEnvVarTemplate;
|
|
80
|
+
const ibmAPIConnectTAEnvVarTemplate = () => {
|
|
81
|
+
return `# IBM API Connect configs
|
|
82
|
+
APICONNECT_URL={{apiConnectURL}}
|
|
83
|
+
APICONNECT_ORGANIZATIONNAME={{apiConnectOrgName}}
|
|
84
|
+
APICONNECT_CATALOGNAME={{apiConnectCatalogName}}
|
|
85
|
+
APICONNECT_AUTH_APIKEY={{apiConnectAuthAPIKey}}
|
|
86
|
+
APICONNECT_AUTH_CLIENTID={{apiConnectAuthClientID}}
|
|
87
|
+
APICONNECT_AUTH_CLIENTSECRET={{apiConnectAuthClientSecret}}
|
|
88
|
+
APICONNECT_ANALYTICSSERVERNAME={{apiConnectAnalyticsServerName}}
|
|
89
|
+
|
|
90
|
+
# Amplify Central configs
|
|
91
|
+
{{#if traceabilityConfig.usageReportingOffline}}
|
|
92
|
+
CENTRAL_USAGEREPORTING_OFFLINE={{traceabilityConfig.usageReportingOffline}}
|
|
93
|
+
CENTRAL_ENVIRONMENTID={{centralConfig.environmentId}}
|
|
94
|
+
CENTRAL_AGENTNAME={{centralConfig.taAgentName}}
|
|
95
|
+
{{else}}
|
|
96
|
+
CENTRAL_AGENTNAME={{centralConfig.taAgentName}}
|
|
97
|
+
CENTRAL_AUTH_CLIENTID={{centralConfig.dosaAccount.clientId}}
|
|
98
|
+
CENTRAL_AUTH_PRIVATEKEY={{centralConfig.dosaAccount.templatePrivateKey}}
|
|
99
|
+
CENTRAL_AUTH_PUBLICKEY={{centralConfig.dosaAccount.templatePublicKey}}
|
|
100
|
+
CENTRAL_ENVIRONMENT={{centralConfig.environment}}
|
|
101
|
+
CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
102
|
+
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
103
|
+
CENTRAL_REGION={{centralConfig.region}}
|
|
104
|
+
|
|
105
|
+
{{#compare . traceabilityConfig.protocol "https"}}
|
|
106
|
+
TRACEABILITY_PROTOCOL={{traceabilityConfig.protocol}}
|
|
107
|
+
{{/compare}}
|
|
108
|
+
TRACEABILITY_SAMPLING_PERCENTAGE={{traceabilityConfig.samplingPercentage}}
|
|
109
|
+
TRACEABILITY_SAMPLING_REPORTALLERRORS={{traceabilityConfig.samplingReportAllErrors}}
|
|
110
|
+
{{/if}}
|
|
111
|
+
|
|
112
|
+
# Logging configs
|
|
113
|
+
# Define the logging level: info, debug, error
|
|
114
|
+
LOG_LEVEL=info
|
|
115
|
+
# Specify where to send the log: stdout, file, both
|
|
116
|
+
LOG_OUTPUT=stdout
|
|
117
|
+
# Define where the log files are written
|
|
118
|
+
LOG_FILE_PATH=logs
|
|
119
|
+
`;
|
|
120
|
+
};
|
|
121
|
+
exports.ibmAPIConnectTAEnvVarTemplate = ibmAPIConnectTAEnvVarTemplate;
|
|
@@ -99,7 +99,10 @@ CENTRAL_AUTH_PUBLICKEY={{centralConfig.dosaAccount.templatePublicKey}}
|
|
|
99
99
|
CENTRAL_ENVIRONMENT={{centralConfig.environment}}
|
|
100
100
|
CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
101
101
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
102
|
-
|
|
102
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
103
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
104
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
105
|
+
{{/compare}}
|
|
103
106
|
|
|
104
107
|
# Logging configs
|
|
105
108
|
# Define the logging level: info, debug, error
|
|
@@ -142,7 +145,16 @@ CENTRAL_AUTH_PUBLICKEY={{centralConfig.dosaAccount.templatePublicKey}}
|
|
|
142
145
|
CENTRAL_ENVIRONMENT={{centralConfig.environment}}
|
|
143
146
|
CENTRAL_ORGANIZATIONID={{centralConfig.orgId}}
|
|
144
147
|
CENTRAL_TEAM={{centralConfig.ampcTeamName}}
|
|
145
|
-
|
|
148
|
+
CENTRAL_SINGLEURL={{centralConfig.singleEntryPointUrl}}
|
|
149
|
+
{{#compare . centralConfig.region "US" operator="!="}}
|
|
150
|
+
CENTRAL_URL={{centralConfig.url}}
|
|
151
|
+
CENTRAL_DEPLOYMENT={{centralConfig.deployment}}
|
|
152
|
+
|
|
153
|
+
TRACEABILITY_HOST={{traceabilityConfig.host}}
|
|
154
|
+
{{/compare}}
|
|
155
|
+
{{#compare . centralConfig.region "US"}}
|
|
156
|
+
|
|
157
|
+
{{/compare}}
|
|
146
158
|
{{#compare . traceabilityConfig.protocol "https"}}
|
|
147
159
|
TRACEABILITY_PROTOCOL={{traceabilityConfig.protocol}}
|
|
148
160
|
{{/compare}}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.testables = exports.gatewayConnectivity = exports.defaultLogFiles = exports.completeInstall = exports.askConfigType = exports.askBundleType = exports.IBMAPIConnectInstallMethods = exports.ConfigFiles = void 0;
|
|
7
|
+
var _chalk = _interopRequireDefault(require("chalk"));
|
|
8
|
+
var _snooplogg = _interopRequireDefault(require("snooplogg"));
|
|
9
|
+
var _basicPrompts = require("../../common/basicPrompts");
|
|
10
|
+
var _types = require("../../common/types");
|
|
11
|
+
var _utils = require("../../common/utils");
|
|
12
|
+
var helpers = _interopRequireWildcard(require("./helpers"));
|
|
13
|
+
var _ibmAPIConnectTemplates = require("./helpers/templates/ibmAPIConnectTemplates");
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
// @ts-ignore
|
|
18
|
+
const {
|
|
19
|
+
log
|
|
20
|
+
} = (0, _snooplogg.default)('central: install: agents: ibmAPIConnect');
|
|
21
|
+
const daImage = `${_types.PublicDockerRepoBaseUrl}${_types.BasePaths.DockerAgentPublicRepo}/${_types.AgentNames.IBMAPICONNECT_DA}`;
|
|
22
|
+
const taImage = `${_types.PublicDockerRepoBaseUrl}${_types.BasePaths.DockerAgentPublicRepo}/${_types.AgentNames.IBMAPICONNECT_TA}`;
|
|
23
|
+
const defaultLogFiles = exports.defaultLogFiles = '/group-*_instance-*.log';
|
|
24
|
+
|
|
25
|
+
// ConfigFiles - all the config file that are used in the setup
|
|
26
|
+
const ConfigFiles = exports.ConfigFiles = {
|
|
27
|
+
DAEnvVars: `${helpers.configFiles.DA_ENV_VARS}`,
|
|
28
|
+
TAEnvVars: `${helpers.configFiles.TA_ENV_VARS}`,
|
|
29
|
+
IBMAPIConnectDABinaryFile: 'discovery_agent',
|
|
30
|
+
IBMAPIConnectDAYaml: 'discovery_agent.yml',
|
|
31
|
+
IBMAPIConnectTABinaryFile: 'traceability_agent',
|
|
32
|
+
IBMAPIConnectTAYaml: 'traceability_agent.yml'
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
// IBMAPIConnectPrompts - prompts for user inputs
|
|
36
|
+
const IBMAPIConnectPrompts = {
|
|
37
|
+
configTypeMsg: 'Select the mode of installation',
|
|
38
|
+
enterApiConnectURL: 'Enter the IBM API Connect URL',
|
|
39
|
+
enterApiConnectOrgName: 'Enter the IBM API Connect Organization Name',
|
|
40
|
+
enterApiConnectCatalogName: 'Enter the IBM API Connect Catalog Name',
|
|
41
|
+
enterApiConnectAuthAPIKey: 'Enter the IBM API Connect Auth API Key',
|
|
42
|
+
enterApiConnectAuthClientID: 'Enter the IBM API Connect Client ID',
|
|
43
|
+
enterApiConnectAuthClientSecret: 'Enter the IBM API Connect Client Secret',
|
|
44
|
+
enterApiConnectConsumerOrgOwnerUser: 'Enter the IBM API Connect Consumer Organization Owner User',
|
|
45
|
+
enterApiConnectConsumerOrgOwnerRegistry: 'Enter the IBM API Connect Consumer Organization Owner User Registry',
|
|
46
|
+
enterApiConnectAnalyticsServerName: 'Enter the IBM API Connect Analytics Server Name'
|
|
47
|
+
};
|
|
48
|
+
const askBundleType = async () => {
|
|
49
|
+
return await (0, _basicPrompts.askList)({
|
|
50
|
+
msg: helpers.agentMessages.selectAgentType,
|
|
51
|
+
choices: [_types.BundleType.ALL_AGENTS, _types.BundleType.DISCOVERY, _types.BundleType.TRACEABILITY]
|
|
52
|
+
});
|
|
53
|
+
};
|
|
54
|
+
exports.askBundleType = askBundleType;
|
|
55
|
+
const askConfigType = async () => {
|
|
56
|
+
return _types.AgentConfigTypes.DOCKERIZED;
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
//
|
|
60
|
+
// Questions for the configuration of IBM API Connect agents
|
|
61
|
+
//
|
|
62
|
+
exports.askConfigType = askConfigType;
|
|
63
|
+
const askIBMAPIConnectURL = async () => await (0, _basicPrompts.askInput)({
|
|
64
|
+
msg: IBMAPIConnectPrompts.enterApiConnectURL
|
|
65
|
+
});
|
|
66
|
+
const askIBMAPIConnectOrgName = async () => await (0, _basicPrompts.askInput)({
|
|
67
|
+
msg: IBMAPIConnectPrompts.enterApiConnectOrgName
|
|
68
|
+
});
|
|
69
|
+
const askIBMAPIConnectCatalogName = async () => await (0, _basicPrompts.askInput)({
|
|
70
|
+
msg: IBMAPIConnectPrompts.enterApiConnectCatalogName
|
|
71
|
+
});
|
|
72
|
+
const askIBMAPIConnectAuthAPIKey = async () => await (0, _basicPrompts.askInput)({
|
|
73
|
+
msg: IBMAPIConnectPrompts.enterApiConnectAuthAPIKey
|
|
74
|
+
});
|
|
75
|
+
const askIBMAPIConnectClientID = async () => await (0, _basicPrompts.askInput)({
|
|
76
|
+
msg: IBMAPIConnectPrompts.enterApiConnectAuthClientID
|
|
77
|
+
});
|
|
78
|
+
const askIBMAPIConnectClientSecret = async () => await (0, _basicPrompts.askInput)({
|
|
79
|
+
msg: IBMAPIConnectPrompts.enterApiConnectAuthClientSecret
|
|
80
|
+
});
|
|
81
|
+
const askIBMAPIConnectOrgOwnerUser = async () => await (0, _basicPrompts.askInput)({
|
|
82
|
+
msg: IBMAPIConnectPrompts.enterApiConnectConsumerOrgOwnerUser
|
|
83
|
+
});
|
|
84
|
+
const askIBMAPIConnectOrgOwnerRegistry = async () => await (0, _basicPrompts.askInput)({
|
|
85
|
+
msg: IBMAPIConnectPrompts.enterApiConnectConsumerOrgOwnerRegistry
|
|
86
|
+
});
|
|
87
|
+
const askIBMAPIConnectAnalyticsServerName = async () => await (0, _basicPrompts.askInput)({
|
|
88
|
+
msg: IBMAPIConnectPrompts.enterApiConnectAnalyticsServerName
|
|
89
|
+
});
|
|
90
|
+
const gatewayConnectivity = async installConfig => {
|
|
91
|
+
const ibmAPIConnectAgentValues = new _ibmAPIConnectTemplates.IBMAPIConnectAgentValues();
|
|
92
|
+
console.log('\nCONNECTION TO IBM API Connect:');
|
|
93
|
+
console.log(_chalk.default.gray(`The discovery agent needs to connect to the IBM API Connect Gateway to discover API's for publishing to Amplify.\nThe traceability agent needs to connect to IBM API Connect for collecting APIs transactions. These will be forwarded to the Business Insights.\n`));
|
|
94
|
+
await askCommonPrompts(ibmAPIConnectAgentValues);
|
|
95
|
+
|
|
96
|
+
// IBM API Connect Discovery Agent Prompts
|
|
97
|
+
if (installConfig.switches.isDaEnabled) {
|
|
98
|
+
console.log(_chalk.default.gray(`\nDiscovery Agent Configuration\n`));
|
|
99
|
+
await askDiscoveryPrompts(ibmAPIConnectAgentValues);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
// IBM API Connect Traceability Agent Prompts
|
|
103
|
+
if (installConfig.switches.isTaEnabled) {
|
|
104
|
+
console.log(_chalk.default.gray(`\nTraceability Agent Configuration\n`));
|
|
105
|
+
await askTraceabilityPrompts(ibmAPIConnectAgentValues);
|
|
106
|
+
}
|
|
107
|
+
return ibmAPIConnectAgentValues;
|
|
108
|
+
};
|
|
109
|
+
exports.gatewayConnectivity = gatewayConnectivity;
|
|
110
|
+
const generateSuccessHelpMsg = installConfig => {
|
|
111
|
+
if (installConfig.centralConfig.ampcDosaInfo.isNew && !installConfig.switches.isHelmInstall) {
|
|
112
|
+
console.log(_chalk.default.yellow('\nPlease make sure to copy the "private_key.pem" and "public_key.pem" files for the existing service account you selected.'));
|
|
113
|
+
}
|
|
114
|
+
dockerSuccessMsg(installConfig);
|
|
115
|
+
console.log(_chalk.default.gray(`\nAdditional information about agent features can be found here:\n${helpers.agentsDocsUrl.IBMAPICONNECT}`));
|
|
116
|
+
};
|
|
117
|
+
const dockerSuccessMsg = installConfig => {
|
|
118
|
+
let dockerInfo;
|
|
119
|
+
const runDaLinuxMsg = `docker run -it --env-file ${helpers.pwd}/${helpers.configFiles.DA_ENV_VARS} -v ${helpers.pwd}:/keys ${helpers.eolChar}`;
|
|
120
|
+
const runDaWinMsg = `docker run -it --env-file ${helpers.pwdWin}/${helpers.configFiles.DA_ENV_VARS} -v ${helpers.pwdWin}:/keys ${helpers.eolCharWin}`;
|
|
121
|
+
const runTaLinuxMsg = `docker run -it --env-file ${helpers.pwd}/${helpers.configFiles.TA_ENV_VARS} -v ${helpers.pwd}:/keys ${helpers.eolChar}`;
|
|
122
|
+
const runTaWinMsg = `docker run -it --env-file ${helpers.pwdWin}/${helpers.configFiles.TA_ENV_VARS} -v ${helpers.pwdWin}:/keys ${helpers.eolCharWin}`;
|
|
123
|
+
const startDaLinuxMsg = `\nStart the Discovery Agent on a Linux based machine`;
|
|
124
|
+
const startDaWinMsg = `\nStart the Discovery Agent on a Windows machine`;
|
|
125
|
+
const startTaLinuxMsg = `\nStart the Traceability Agent on a Linux based machine`;
|
|
126
|
+
const startTaWinMsg = `\nStart the Traceability Agent on a Windows machine`;
|
|
127
|
+
if (installConfig.switches.isDaEnabled && installConfig.switches.isTaEnabled) {
|
|
128
|
+
dockerInfo = `To utilize the agents, pull the latest Docker images and run them using the appropriate supplied environment files, (${helpers.configFiles.DA_ENV_VARS} & ${helpers.configFiles.TA_ENV_VARS}):`;
|
|
129
|
+
} else if (installConfig.switches.isDaEnabled) {
|
|
130
|
+
dockerInfo = `To utilize the discovery agent, pull the latest Docker image and run it using the supplied environment file, (${helpers.configFiles.DA_ENV_VARS}):`;
|
|
131
|
+
} else {
|
|
132
|
+
dockerInfo = `To utilize the traceability agent, pull the latest Docker image and run it using the supplied environment file, (${helpers.configFiles.TA_ENV_VARS}):`;
|
|
133
|
+
}
|
|
134
|
+
console.log(_chalk.default.whiteBright(dockerInfo), '\n');
|
|
135
|
+
if (installConfig.switches.isDaEnabled) {
|
|
136
|
+
const daImageVersion = `${daImage}:${installConfig.daVersion}`;
|
|
137
|
+
console.log(_chalk.default.white('Pull the latest image of the Discovery Agent:'));
|
|
138
|
+
console.log(_chalk.default.cyan(`docker pull ${daImageVersion}`));
|
|
139
|
+
console.log(_chalk.default.white(_utils.isWindows ? startDaWinMsg : startDaLinuxMsg));
|
|
140
|
+
console.log(_chalk.default.cyan(_utils.isWindows ? runDaWinMsg : runDaLinuxMsg));
|
|
141
|
+
console.log('\t', _chalk.default.cyan(`-v /data ${daImageVersion}`), '\n');
|
|
142
|
+
}
|
|
143
|
+
if (installConfig.switches.isTaEnabled) {
|
|
144
|
+
const taImageVersion = `${taImage}:${installConfig.taVersion}`;
|
|
145
|
+
console.log(_chalk.default.white('Pull the latest image of the Traceability Agent:'));
|
|
146
|
+
console.log(_chalk.default.cyan(`docker pull ${taImageVersion}`));
|
|
147
|
+
console.log(_chalk.default.white(_utils.isWindows ? startTaWinMsg : startTaLinuxMsg));
|
|
148
|
+
console.log(_chalk.default.cyan(_utils.isWindows ? runTaWinMsg : runTaLinuxMsg));
|
|
149
|
+
console.log('\t', _chalk.default.cyan(`-v /data ${taImageVersion}`), '\n');
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
async function askCommonPrompts(ibmAPIConnectAgentValues) {
|
|
153
|
+
// IBM API Connect URL
|
|
154
|
+
ibmAPIConnectAgentValues.apiConnectURL = await askIBMAPIConnectURL();
|
|
155
|
+
// IBM API Connect Org Name
|
|
156
|
+
ibmAPIConnectAgentValues.apiConnectOrgName = await askIBMAPIConnectOrgName();
|
|
157
|
+
// IBM API Connect Catalog Name
|
|
158
|
+
ibmAPIConnectAgentValues.apiConnectCatalogName = await askIBMAPIConnectCatalogName();
|
|
159
|
+
// IBM API Connect Auth API Key
|
|
160
|
+
ibmAPIConnectAgentValues.apiConnectAuthAPIKey = await askIBMAPIConnectAuthAPIKey();
|
|
161
|
+
// IBM API Connect Auth Client ID
|
|
162
|
+
ibmAPIConnectAgentValues.apiConnectAuthClientID = await askIBMAPIConnectClientID();
|
|
163
|
+
// IBM API Connect Auth Client Secret
|
|
164
|
+
ibmAPIConnectAgentValues.apiConnectAuthClientSecret = await askIBMAPIConnectClientSecret();
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
// IBM API Connect DA prompts
|
|
168
|
+
async function askDiscoveryPrompts(ibmAPIConnectAgentValues) {
|
|
169
|
+
// IBM API Connect Consumer Org Owner User
|
|
170
|
+
ibmAPIConnectAgentValues.apiConnectConsumerOrgOwnerUser = await askIBMAPIConnectOrgOwnerUser();
|
|
171
|
+
// IBM API Connect Consumer Org Owner Registry
|
|
172
|
+
ibmAPIConnectAgentValues.apiConnectConsumerOrgOwnerRegistry = await askIBMAPIConnectOrgOwnerRegistry();
|
|
173
|
+
}
|
|
174
|
+
async function askTraceabilityPrompts(ibmAPIConnectAgentValues) {
|
|
175
|
+
// IBM API Connect Analytics Server Name
|
|
176
|
+
ibmAPIConnectAgentValues.apiConnectAnalyticsServerName = await askIBMAPIConnectAnalyticsServerName();
|
|
177
|
+
}
|
|
178
|
+
const completeInstall = async installConfig => {
|
|
179
|
+
/**
|
|
180
|
+
* Create agent resources
|
|
181
|
+
*/
|
|
182
|
+
const ibmAPIConnectAgentValues = installConfig.gatewayConfig;
|
|
183
|
+
|
|
184
|
+
// Add final settings to ibmAPIConnectAgentValues
|
|
185
|
+
ibmAPIConnectAgentValues.centralConfig = installConfig.centralConfig;
|
|
186
|
+
ibmAPIConnectAgentValues.traceabilityConfig = installConfig.traceabilityConfig;
|
|
187
|
+
console.log('Generating the configuration file(s)...');
|
|
188
|
+
if (installConfig.switches.isDaEnabled) {
|
|
189
|
+
(0, _utils.writeTemplates)(ConfigFiles.DAEnvVars, ibmAPIConnectAgentValues, helpers.ibmAPIConnectDAEnvVarTemplate);
|
|
190
|
+
}
|
|
191
|
+
if (installConfig.switches.isTaEnabled) {
|
|
192
|
+
(0, _utils.writeTemplates)(ConfigFiles.TAEnvVars, ibmAPIConnectAgentValues, helpers.ibmAPIConnectTAEnvVarTemplate);
|
|
193
|
+
}
|
|
194
|
+
console.log('Configuration file(s) have been successfully created.\n');
|
|
195
|
+
generateSuccessHelpMsg(installConfig);
|
|
196
|
+
};
|
|
197
|
+
exports.completeInstall = completeInstall;
|
|
198
|
+
const IBMAPIConnectInstallMethods = exports.IBMAPIConnectInstallMethods = {
|
|
199
|
+
GetBundleType: askBundleType,
|
|
200
|
+
GetDeploymentType: askConfigType,
|
|
201
|
+
AskGatewayQuestions: gatewayConnectivity,
|
|
202
|
+
FinalizeGatewayInstall: completeInstall,
|
|
203
|
+
ConfigFiles: Object.values(ConfigFiles),
|
|
204
|
+
AgentNameMap: {
|
|
205
|
+
[_types.AgentTypes.da]: _types.AgentNames.IBMAPICONNECT_DA,
|
|
206
|
+
[_types.AgentTypes.ta]: _types.AgentNames.IBMAPICONNECT_TA
|
|
207
|
+
},
|
|
208
|
+
GatewayDisplay: _types.GatewayTypes.IBMAPICONNECT
|
|
209
|
+
};
|
|
210
|
+
const testables = exports.testables = {
|
|
211
|
+
IBMAPIConnectPrompts,
|
|
212
|
+
ConfigFiles,
|
|
213
|
+
defaultLogFiles
|
|
214
|
+
};
|
|
@@ -9,6 +9,7 @@ var _basicPrompts = require("../../common/basicPrompts");
|
|
|
9
9
|
var _CliConfigManager = require("../../common/CliConfigManager");
|
|
10
10
|
var _CoreConfigController = require("../../common/CoreConfigController");
|
|
11
11
|
var _types = require("../../common/types");
|
|
12
|
+
var _utils = require("../../common/utils");
|
|
12
13
|
var _awsAgents = require("./awsAgents");
|
|
13
14
|
var helpers = _interopRequireWildcard(require("./helpers"));
|
|
14
15
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -68,6 +69,7 @@ const getCentralConfig = async (apiServerClient, platformClient, defsManager, ap
|
|
|
68
69
|
let centralConfig = installConfig.centralConfig;
|
|
69
70
|
await centralConfig.setBaseHost();
|
|
70
71
|
centralConfig.authUrl = `${_CoreConfigController.CoreConfigController.getAuthUrl()}/auth`;
|
|
72
|
+
centralConfig.region = String(apiServerClient.region || (await (0, _utils.getConfig)())[_types.ConfigTypes.REGION] || _types.Regions.US).toUpperCase();
|
|
71
73
|
centralConfig.deployment = apicDeployment || getApicDeployment(centralConfig.region, _CoreConfigController.CoreConfigController.getEnv());
|
|
72
74
|
|
|
73
75
|
// apic config
|
package/dist/common/types.js
CHANGED
|
@@ -225,6 +225,8 @@ let AgentNames = exports.AgentNames = /*#__PURE__*/function (AgentNames) {
|
|
|
225
225
|
AgentNames["KAFKA_TA"] = "kafka-traceability-agent";
|
|
226
226
|
AgentNames["SWAGGERHUB_DA"] = "swaggerhub-discovery-agent";
|
|
227
227
|
AgentNames["GRAYLOG_TA"] = "graylog-agent";
|
|
228
|
+
AgentNames["IBMAPICONNECT_DA"] = "ibm-apiconnect-discovery-agent";
|
|
229
|
+
AgentNames["IBMAPICONNECT_TA"] = "ibm-apiconnect-traceability-agent";
|
|
228
230
|
return AgentNames;
|
|
229
231
|
}({});
|
|
230
232
|
let GatewayTypes = exports.GatewayTypes = /*#__PURE__*/function (GatewayTypes) {
|
|
@@ -236,6 +238,7 @@ let GatewayTypes = exports.GatewayTypes = /*#__PURE__*/function (GatewayTypes) {
|
|
|
236
238
|
GatewayTypes["EDGE_GATEWAY_ONLY"] = "Amplify API Gateway only";
|
|
237
239
|
GatewayTypes["KAFKA"] = "Kafka";
|
|
238
240
|
GatewayTypes["GRAYLOG"] = "Graylog";
|
|
241
|
+
GatewayTypes["IBMAPICONNECT"] = "IBM API Connect";
|
|
239
242
|
return GatewayTypes;
|
|
240
243
|
}({});
|
|
241
244
|
let SaaSGatewayTypes = exports.SaaSGatewayTypes = /*#__PURE__*/function (SaaSGatewayTypes) {
|
|
@@ -254,6 +257,7 @@ let DataPlaneNames = exports.DataPlaneNames = /*#__PURE__*/function (DataPlaneNa
|
|
|
254
257
|
DataPlaneNames["EDGE"] = "Edge";
|
|
255
258
|
DataPlaneNames["KAFKA"] = "Kafka";
|
|
256
259
|
DataPlaneNames["GRAYLOG"] = "Graylog";
|
|
260
|
+
DataPlaneNames["IBMAPICONNECT"] = "APIConnect";
|
|
257
261
|
DataPlaneNames["KONG"] = "Kong";
|
|
258
262
|
DataPlaneNames["SWAGGERHUB"] = "SwaggerHub";
|
|
259
263
|
DataPlaneNames["MULESOFT"] = "Mulesoft";
|
|
@@ -272,7 +276,8 @@ const GatewayTypeToDataPlane = exports.GatewayTypeToDataPlane = {
|
|
|
272
276
|
[SaaSGatewayTypes.APIGEEX_GATEWAY]: DataPlaneNames.APIGEE,
|
|
273
277
|
[GatewayTypes.KAFKA]: DataPlaneNames.KAFKA,
|
|
274
278
|
[SaaSGatewayTypes.SWAGGERHUB]: DataPlaneNames.SWAGGERHUB,
|
|
275
|
-
[GatewayTypes.GRAYLOG]: DataPlaneNames.GRAYLOG
|
|
279
|
+
[GatewayTypes.GRAYLOG]: DataPlaneNames.GRAYLOG,
|
|
280
|
+
[GatewayTypes.IBMAPICONNECT]: DataPlaneNames.IBMAPICONNECT
|
|
276
281
|
};
|
|
277
282
|
let AgentResourceKind = exports.AgentResourceKind = /*#__PURE__*/function (AgentResourceKind) {
|
|
278
283
|
AgentResourceKind["da"] = "DiscoveryAgent";
|