@axway/axway-central-cli 2.25.0 → 2.26.0-rc.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.
|
@@ -25,6 +25,7 @@ var helpers = _interopRequireWildcard(require("./helpers"));
|
|
|
25
25
|
var istioAgents = _interopRequireWildcard(require("./istioAgents"));
|
|
26
26
|
var saasAgents = _interopRequireWildcard(require("./awsSaasAgents"));
|
|
27
27
|
var kafkaAgents = _interopRequireWildcard(require("./kafkaAgents"));
|
|
28
|
+
var swaggerHubAgents = _interopRequireWildcard(require("./swaggerHubSaasAgents"));
|
|
28
29
|
var platform = _interopRequireWildcard(require("./platform"));
|
|
29
30
|
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); }
|
|
30
31
|
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; }
|
|
@@ -46,12 +47,14 @@ const agentInstallFlows = {
|
|
|
46
47
|
[_types.GatewayTypes.APIGEEX_GATEWAY]: apigeeSaaSAgents.APIGEEXSaaSInstallMethods,
|
|
47
48
|
[_types.GatewayTypes.AZURE_GATEWAY]: azureAgents.AzureInstallMethods,
|
|
48
49
|
[_types.GatewayTypes.ISTIO]: istioAgents.IstioInstallMethods,
|
|
49
|
-
[_types.GatewayTypes.KAFKA]: kafkaAgents.KafkaInstallMethods
|
|
50
|
+
[_types.GatewayTypes.KAFKA]: kafkaAgents.KafkaInstallMethods,
|
|
51
|
+
[_types.GatewayTypes.SWAGGERHUB]: swaggerHubAgents.SwaggerHubSaaSInstallMethods
|
|
50
52
|
};
|
|
51
53
|
const saasAgentInstallFlows = {
|
|
52
54
|
[_types.GatewayTypes.AWS_GATEWAY]: saasAgents.AWSSaaSInstallMethods,
|
|
53
55
|
[_types.GatewayTypes.GITHUB]: gitHubAgents.GitHubSaaSInstallMethods,
|
|
54
|
-
[_types.GatewayTypes.APIGEEX_GATEWAY]: apigeeSaaSAgents.APIGEEXSaaSInstallMethods
|
|
56
|
+
[_types.GatewayTypes.APIGEEX_GATEWAY]: apigeeSaaSAgents.APIGEEXSaaSInstallMethods,
|
|
57
|
+
[_types.GatewayTypes.SWAGGERHUB]: swaggerHubAgents.SwaggerHubSaaSInstallMethods
|
|
55
58
|
};
|
|
56
59
|
const createConfigBackup = async (configFiles, gatewayType) => {
|
|
57
60
|
// If current configurations exist, back them up
|
|
@@ -124,7 +127,7 @@ const agents = exports.agents = {
|
|
|
124
127
|
default: _types.YesNo.Yes
|
|
125
128
|
})) === _types.YesNo.Yes;
|
|
126
129
|
}
|
|
127
|
-
if (gatewayType === _types.GatewayTypes.APIGEEX_GATEWAY || gatewayType === _types.GatewayTypes.GITHUB) {
|
|
130
|
+
if (gatewayType === _types.GatewayTypes.APIGEEX_GATEWAY || gatewayType === _types.GatewayTypes.GITHUB || gatewayType === _types.GatewayTypes.SWAGGERHUB) {
|
|
128
131
|
installConfig.switches.isHostedInstall = true;
|
|
129
132
|
}
|
|
130
133
|
|
|
@@ -87,7 +87,7 @@ class SaasGitHubAgentValues extends SaasAgentValues {
|
|
|
87
87
|
// ConfigFiles - all the config file that are used in the setup
|
|
88
88
|
const ConfigFiles = {};
|
|
89
89
|
|
|
90
|
-
//
|
|
90
|
+
// GitHub SaaSPrompts - all GitHub Saas prompts to the user for input
|
|
91
91
|
const SaasPrompts = {
|
|
92
92
|
ACCESS_TOKEN: 'Enter the GitHub Access Token the agent will use',
|
|
93
93
|
REPOSITORY_OWNER: 'Enter the GitHub Repository Owner the agent will use',
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.testables = exports.askBundleType = exports.SwaggerHubSaaSInstallMethods = 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 helpers = _interopRequireWildcard(require("./helpers"));
|
|
12
|
+
var _crypto = _interopRequireDefault(require("crypto"));
|
|
13
|
+
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); }
|
|
14
|
+
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; }
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
16
|
+
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; }
|
|
17
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
18
|
+
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); }
|
|
19
|
+
const {
|
|
20
|
+
log
|
|
21
|
+
} = (0, _snooplogg.default)('central: install: agents: saas');
|
|
22
|
+
class DataplaneConfig {
|
|
23
|
+
constructor(type) {
|
|
24
|
+
_defineProperty(this, "type", void 0);
|
|
25
|
+
this.type = type || "";
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
class SwaggerHubDataplaneConfig extends DataplaneConfig {
|
|
29
|
+
constructor(owner, filter) {
|
|
30
|
+
super("SwaggerHub");
|
|
31
|
+
_defineProperty(this, "owner", void 0);
|
|
32
|
+
_defineProperty(this, "filter", void 0);
|
|
33
|
+
this.owner = owner;
|
|
34
|
+
this.filter = filter;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
class SwaggerHubFilterConfig {
|
|
38
|
+
constructor(visibility, publication) {
|
|
39
|
+
_defineProperty(this, "visibility", void 0);
|
|
40
|
+
_defineProperty(this, "publication", void 0);
|
|
41
|
+
this.visibility = visibility;
|
|
42
|
+
this.publication = publication;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
var SwaggerHubFilterVisibility = /*#__PURE__*/function (SwaggerHubFilterVisibility) {
|
|
46
|
+
SwaggerHubFilterVisibility["Both"] = "Both";
|
|
47
|
+
SwaggerHubFilterVisibility["Public"] = "Public";
|
|
48
|
+
SwaggerHubFilterVisibility["Private"] = "Private";
|
|
49
|
+
return SwaggerHubFilterVisibility;
|
|
50
|
+
}(SwaggerHubFilterVisibility || {});
|
|
51
|
+
var SwaggerHubFilterPublication = /*#__PURE__*/function (SwaggerHubFilterPublication) {
|
|
52
|
+
SwaggerHubFilterPublication["Both"] = "Both";
|
|
53
|
+
SwaggerHubFilterPublication["Published"] = "Published";
|
|
54
|
+
SwaggerHubFilterPublication["UnPublished"] = "UnPublished";
|
|
55
|
+
return SwaggerHubFilterPublication;
|
|
56
|
+
}(SwaggerHubFilterPublication || {});
|
|
57
|
+
class SaasAgentValues {
|
|
58
|
+
constructor() {
|
|
59
|
+
_defineProperty(this, "frequencyDA", void 0);
|
|
60
|
+
_defineProperty(this, "queueDA", void 0);
|
|
61
|
+
_defineProperty(this, "frequencyTA", void 0);
|
|
62
|
+
_defineProperty(this, "dataplaneConfig", void 0);
|
|
63
|
+
_defineProperty(this, "centralConfig", void 0);
|
|
64
|
+
_defineProperty(this, "owner", void 0);
|
|
65
|
+
_defineProperty(this, "visibility", void 0);
|
|
66
|
+
_defineProperty(this, "publication", void 0);
|
|
67
|
+
this.frequencyDA = '';
|
|
68
|
+
this.queueDA = false;
|
|
69
|
+
this.frequencyTA = '';
|
|
70
|
+
this.dataplaneConfig = new DataplaneConfig();
|
|
71
|
+
this.centralConfig = new _types.CentralAgentConfig();
|
|
72
|
+
this.owner = '';
|
|
73
|
+
this.visibility = SwaggerHubFilterVisibility.Both;
|
|
74
|
+
this.publication = SwaggerHubFilterPublication.Both;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
class SaasSwaggerHubAgentValues extends SaasAgentValues {
|
|
78
|
+
constructor() {
|
|
79
|
+
super();
|
|
80
|
+
_defineProperty(this, "apiKey", void 0);
|
|
81
|
+
this.apiKey = '';
|
|
82
|
+
}
|
|
83
|
+
getAccessData() {
|
|
84
|
+
let data = JSON.stringify({
|
|
85
|
+
apiKey: this.apiKey
|
|
86
|
+
});
|
|
87
|
+
return data;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
// ConfigFiles - all the config file that are used in the setup
|
|
92
|
+
const ConfigFiles = {};
|
|
93
|
+
|
|
94
|
+
// SwaggerHub SaaSPrompts - all SwaggerHub Saas prompts to the user for input
|
|
95
|
+
const SaasPrompts = {
|
|
96
|
+
API_KEY: 'Enter the SwaggerHub API Key the agent will use',
|
|
97
|
+
ORGANIZATION_OWNER: 'Enter the SwaggerHub Organization Owner the agent will use',
|
|
98
|
+
API_VISIBILITY: 'Enter the visibility of the APIs to be discovered (Optional). If nothing is selected, both Private and Public APIs will be discoverd',
|
|
99
|
+
API_PUBLICATION: 'Enter the publication status of APIs to be discovered (Optional). If nothing is selected, both Published and UnPublished APIs will be discovered',
|
|
100
|
+
DA_FREQUENCY: 'How often should the discovery run, leave blank for integrating in CI/CD process',
|
|
101
|
+
QUEUE: 'Do you want to discover immediately after installation'
|
|
102
|
+
};
|
|
103
|
+
const askBundleType = async () => {
|
|
104
|
+
//SwaggerHub agent has only DA
|
|
105
|
+
return _types.BundleType.DISCOVERY;
|
|
106
|
+
};
|
|
107
|
+
exports.askBundleType = askBundleType;
|
|
108
|
+
const askConfigType = async () => {
|
|
109
|
+
return _types.AgentConfigTypes.HOSTED;
|
|
110
|
+
};
|
|
111
|
+
const askForSwaggerHubCredentials = async hostedAgentValues => {
|
|
112
|
+
log("gathering access details for SwaggerHub");
|
|
113
|
+
hostedAgentValues.apiKey = await (0, _basicPrompts.askInput)({
|
|
114
|
+
msg: SaasPrompts.API_KEY,
|
|
115
|
+
defaultValue: hostedAgentValues.apiKey !== '' ? hostedAgentValues.apiKey : undefined
|
|
116
|
+
});
|
|
117
|
+
return hostedAgentValues;
|
|
118
|
+
};
|
|
119
|
+
const validateFrequency = () => input => {
|
|
120
|
+
let val = (0, _basicPrompts.validateRegex)(helpers.frequencyRegex, helpers.invalidValueExampleErrMsg('frequency', '3d5h12m'))(input);
|
|
121
|
+
if (typeof val === "string") {
|
|
122
|
+
return val;
|
|
123
|
+
}
|
|
124
|
+
let r = input.toString().match(/^(\d*)m/);
|
|
125
|
+
if (r) {
|
|
126
|
+
// only minutes
|
|
127
|
+
let mins = r[1];
|
|
128
|
+
if (parseInt(mins, 10) < 30) {
|
|
129
|
+
return "Minimum frequency is 30m";
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
return true;
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
// @ts-ignore
|
|
136
|
+
const gatewayConnectivity = async installConfig => {
|
|
137
|
+
console.log('\nCONNECTION TO SwaggerHub API GATEWAY:');
|
|
138
|
+
console.log(_chalk.default.gray("The Discovery Agent needs to connect to the SwaggerHub API Gateway to discover API's for publishing to Amplify Central"));
|
|
139
|
+
|
|
140
|
+
// DeploymentType
|
|
141
|
+
let hostedAgentValues = new SaasAgentValues();
|
|
142
|
+
if (installConfig.gatewayType === _types.GatewayTypes.SWAGGERHUB) {
|
|
143
|
+
// SwaggerHub connection details
|
|
144
|
+
hostedAgentValues = new SaasSwaggerHubAgentValues();
|
|
145
|
+
hostedAgentValues = await askForSwaggerHubCredentials(hostedAgentValues);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
// Ask to queue discovery now
|
|
149
|
+
log("getting the frequency and if the agent should run now");
|
|
150
|
+
console.log(_chalk.default.gray("\n00d00h00m format, where 30m = 30 minutes, 1h = 1 hour, 7d = 7 days, and 7d1h30m = 7 days 1 hour and 30 minutes. Minimum of 30m."));
|
|
151
|
+
hostedAgentValues.frequencyDA = await (0, _basicPrompts.askInput)({
|
|
152
|
+
msg: SaasPrompts.DA_FREQUENCY,
|
|
153
|
+
validate: validateFrequency(),
|
|
154
|
+
allowEmptyInput: true
|
|
155
|
+
});
|
|
156
|
+
hostedAgentValues.queueDA = (await (0, _basicPrompts.askList)({
|
|
157
|
+
msg: SaasPrompts.QUEUE,
|
|
158
|
+
default: _types.YesNo.No,
|
|
159
|
+
choices: _types.YesNoChoices
|
|
160
|
+
})) === _types.YesNo.Yes;
|
|
161
|
+
|
|
162
|
+
// get swaggerhub organization owner
|
|
163
|
+
hostedAgentValues.owner = await (0, _basicPrompts.askInput)({
|
|
164
|
+
msg: SaasPrompts.ORGANIZATION_OWNER,
|
|
165
|
+
defaultValue: hostedAgentValues.owner !== '' ? hostedAgentValues.owner : undefined
|
|
166
|
+
});
|
|
167
|
+
|
|
168
|
+
// get visility of APIs to be discovered
|
|
169
|
+
hostedAgentValues.visibility = await (0, _basicPrompts.askList)({
|
|
170
|
+
msg: SaasPrompts.API_VISIBILITY,
|
|
171
|
+
default: SwaggerHubFilterVisibility.Both,
|
|
172
|
+
choices: [{
|
|
173
|
+
name: SwaggerHubFilterVisibility.Both,
|
|
174
|
+
value: SwaggerHubFilterVisibility.Both
|
|
175
|
+
}, {
|
|
176
|
+
name: SwaggerHubFilterVisibility.Public,
|
|
177
|
+
value: SwaggerHubFilterVisibility.Public
|
|
178
|
+
}, {
|
|
179
|
+
name: SwaggerHubFilterVisibility.Private,
|
|
180
|
+
value: SwaggerHubFilterVisibility.Private
|
|
181
|
+
}]
|
|
182
|
+
});
|
|
183
|
+
|
|
184
|
+
// get publication status of APIs to be discovered
|
|
185
|
+
hostedAgentValues.publication = await (0, _basicPrompts.askList)({
|
|
186
|
+
msg: SaasPrompts.API_PUBLICATION,
|
|
187
|
+
default: SwaggerHubFilterPublication.Both,
|
|
188
|
+
choices: [{
|
|
189
|
+
name: SwaggerHubFilterPublication.Both,
|
|
190
|
+
value: SwaggerHubFilterPublication.Both
|
|
191
|
+
}, {
|
|
192
|
+
name: SwaggerHubFilterPublication.Published,
|
|
193
|
+
value: SwaggerHubFilterPublication.Published
|
|
194
|
+
}, {
|
|
195
|
+
name: SwaggerHubFilterPublication.UnPublished,
|
|
196
|
+
value: SwaggerHubFilterPublication.UnPublished
|
|
197
|
+
}]
|
|
198
|
+
});
|
|
199
|
+
return hostedAgentValues;
|
|
200
|
+
};
|
|
201
|
+
const generateOutput = async installConfig => {
|
|
202
|
+
return `Install complete of hosted agent for ${installConfig.gatewayType} region`;
|
|
203
|
+
};
|
|
204
|
+
const createEncryptedAccessData = async (hostedAgentValues, dataplaneRes) => {
|
|
205
|
+
var _dataplaneRes$securit, _dataplaneRes$securit2;
|
|
206
|
+
// grab key from data plane resource
|
|
207
|
+
let key = ((_dataplaneRes$securit = dataplaneRes.security) === null || _dataplaneRes$securit === void 0 ? void 0 : _dataplaneRes$securit.encryptionKey) || "";
|
|
208
|
+
let hash = ((_dataplaneRes$securit2 = dataplaneRes.security) === null || _dataplaneRes$securit2 === void 0 ? void 0 : _dataplaneRes$securit2.encryptionHash) || "";
|
|
209
|
+
if (key === "" || hash === "") {
|
|
210
|
+
throw Error(`cannot encrypt access data as the encryption key info was incomplete`);
|
|
211
|
+
}
|
|
212
|
+
console.log(hostedAgentValues.getAccessData());
|
|
213
|
+
let encData = _crypto.default.publicEncrypt({
|
|
214
|
+
key: key,
|
|
215
|
+
padding: _crypto.default.constants.RSA_PKCS1_OAEP_PADDING,
|
|
216
|
+
oaepHash: hash
|
|
217
|
+
}, Buffer.from(hostedAgentValues.getAccessData()));
|
|
218
|
+
return encData.toString("base64");
|
|
219
|
+
};
|
|
220
|
+
const completeInstall = async (installConfig, apiServerClient, defsManager) => {
|
|
221
|
+
/**
|
|
222
|
+
* Create agent resources
|
|
223
|
+
*/
|
|
224
|
+
console.log("\n");
|
|
225
|
+
let swaggerHubAgentValues = installConfig.gatewayConfig;
|
|
226
|
+
|
|
227
|
+
// create the environment, if necessary
|
|
228
|
+
installConfig.centralConfig.environment = installConfig.centralConfig.ampcEnvInfo.isNew ? await helpers.createByResourceType(apiServerClient, defsManager, installConfig.centralConfig.ampcEnvInfo.name, 'Environment', 'env', {
|
|
229
|
+
axwayManaged: installConfig.centralConfig.axwayManaged,
|
|
230
|
+
production: installConfig.centralConfig.production
|
|
231
|
+
}) : installConfig.centralConfig.ampcEnvInfo.name;
|
|
232
|
+
if (installConfig.gatewayType === _types.GatewayTypes.SWAGGERHUB) {
|
|
233
|
+
swaggerHubAgentValues.dataplaneConfig = new SwaggerHubDataplaneConfig(swaggerHubAgentValues.owner, new SwaggerHubFilterConfig(swaggerHubAgentValues.visibility, swaggerHubAgentValues.publication));
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
// create the data plane resource
|
|
237
|
+
let dataplaneRes = await helpers.createNewDataPlaneResource(apiServerClient, defsManager, installConfig.centralConfig.environment, _types.GatewayTypeToDataPlane[installConfig.gatewayType], swaggerHubAgentValues.dataplaneConfig);
|
|
238
|
+
// create data plane secret resource
|
|
239
|
+
try {
|
|
240
|
+
await helpers.createNewDataPlaneSecretResource(apiServerClient, defsManager, installConfig.centralConfig.environment, _types.GatewayTypeToDataPlane[installConfig.gatewayType], dataplaneRes.name, await createEncryptedAccessData(swaggerHubAgentValues, dataplaneRes));
|
|
241
|
+
} catch (error) {
|
|
242
|
+
console.log(error);
|
|
243
|
+
console.log(_chalk.default.redBright("rolling back installation. Please check the credential data before re-running install"));
|
|
244
|
+
if (installConfig.centralConfig.ampcEnvInfo.isNew) {
|
|
245
|
+
await helpers.deleteByResourceType(apiServerClient, defsManager, installConfig.centralConfig.ampcEnvInfo.name, 'Environment', 'env');
|
|
246
|
+
} else {
|
|
247
|
+
await helpers.deleteByResourceType(apiServerClient, defsManager, dataplaneRes.name, "Dataplane", "dp", installConfig.centralConfig.environment);
|
|
248
|
+
}
|
|
249
|
+
return;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
// create discovery agent resource
|
|
253
|
+
installConfig.centralConfig.daAgentName = await helpers.createNewAgentResource(apiServerClient, defsManager, installConfig.centralConfig.environment, _types.GatewayTypeToDataPlane[installConfig.gatewayType], _types.AgentResourceKind.da, _types.AgentTypes.da, installConfig.centralConfig.ampcTeamName, _types.GatewayTypeToDataPlane[installConfig.gatewayType] + " Discovery Agent", dataplaneRes.name, swaggerHubAgentValues.frequencyDA, swaggerHubAgentValues.queueDA);
|
|
254
|
+
console.log(await generateOutput(installConfig));
|
|
255
|
+
};
|
|
256
|
+
const SwaggerHubSaaSInstallMethods = exports.SwaggerHubSaaSInstallMethods = {
|
|
257
|
+
GetBundleType: askBundleType,
|
|
258
|
+
GetDeploymentType: askConfigType,
|
|
259
|
+
AskGatewayQuestions: gatewayConnectivity,
|
|
260
|
+
FinalizeGatewayInstall: completeInstall,
|
|
261
|
+
ConfigFiles: [],
|
|
262
|
+
AgentNameMap: {
|
|
263
|
+
[_types.AgentTypes.da]: _types.AgentNames.SWAGGERHUB_DA,
|
|
264
|
+
[_types.AgentTypes.ta]: _types.AgentNames.SWAGGERHUB_DA
|
|
265
|
+
},
|
|
266
|
+
GatewayDisplay: _types.GatewayTypes.SWAGGERHUB
|
|
267
|
+
};
|
|
268
|
+
|
|
269
|
+
// These are the items that are not exported, but need to be for testing
|
|
270
|
+
const testables = exports.testables = {
|
|
271
|
+
SaasAgentValues,
|
|
272
|
+
SaasSwaggerHubAgentValues,
|
|
273
|
+
SaasPrompts,
|
|
274
|
+
ConfigFiles
|
|
275
|
+
};
|
package/dist/common/types.js
CHANGED
|
@@ -223,6 +223,7 @@ let AgentNames = exports.AgentNames = /*#__PURE__*/function (AgentNames) {
|
|
|
223
223
|
AgentNames["EDGE_TA"] = "v7-traceability-agent";
|
|
224
224
|
AgentNames["KAFKA_DA"] = "kafka-discovery-agent";
|
|
225
225
|
AgentNames["KAFKA_TA"] = "kafka-traceability-agent";
|
|
226
|
+
AgentNames["SWAGGERHUB_DA"] = "swaggerhub-discovery-agent";
|
|
226
227
|
return AgentNames;
|
|
227
228
|
}({});
|
|
228
229
|
let GatewayTypes = exports.GatewayTypes = /*#__PURE__*/function (GatewayTypes) {
|
|
@@ -235,6 +236,7 @@ let GatewayTypes = exports.GatewayTypes = /*#__PURE__*/function (GatewayTypes) {
|
|
|
235
236
|
GatewayTypes["ISTIO"] = "Istio";
|
|
236
237
|
GatewayTypes["EDGE_GATEWAY_ONLY"] = "Amplify API Gateway only";
|
|
237
238
|
GatewayTypes["KAFKA"] = "Kafka";
|
|
239
|
+
GatewayTypes["SWAGGERHUB"] = "SwaggerHub";
|
|
238
240
|
return GatewayTypes;
|
|
239
241
|
}({});
|
|
240
242
|
let SaaSGatewayTypes = exports.SaaSGatewayTypes = /*#__PURE__*/function (SaaSGatewayTypes) {
|
|
@@ -252,6 +254,7 @@ let DataPlaneNames = exports.DataPlaneNames = /*#__PURE__*/function (DataPlaneNa
|
|
|
252
254
|
DataPlaneNames["EDGE"] = "Edge";
|
|
253
255
|
DataPlaneNames["KAFKA"] = "Kafka";
|
|
254
256
|
DataPlaneNames["KONG"] = "Kong";
|
|
257
|
+
DataPlaneNames["SWAGGERHUB"] = "SwaggerHub";
|
|
255
258
|
DataPlaneNames["MULESOFT"] = "Mulesoft";
|
|
256
259
|
DataPlaneNames["WSO2"] = "WSO2";
|
|
257
260
|
DataPlaneNames["OTHER"] = "Other";
|
|
@@ -266,7 +269,8 @@ const GatewayTypeToDataPlane = exports.GatewayTypeToDataPlane = {
|
|
|
266
269
|
[GatewayTypes.AZURE_GATEWAY]: DataPlaneNames.AZURE,
|
|
267
270
|
[GatewayTypes.ISTIO]: 'Istio',
|
|
268
271
|
[GatewayTypes.APIGEEX_GATEWAY]: DataPlaneNames.APIGEE,
|
|
269
|
-
[GatewayTypes.KAFKA]: DataPlaneNames.KAFKA
|
|
272
|
+
[GatewayTypes.KAFKA]: DataPlaneNames.KAFKA,
|
|
273
|
+
[GatewayTypes.SWAGGERHUB]: DataPlaneNames.SWAGGERHUB
|
|
270
274
|
};
|
|
271
275
|
let AgentResourceKind = exports.AgentResourceKind = /*#__PURE__*/function (AgentResourceKind) {
|
|
272
276
|
AgentResourceKind["da"] = "DiscoveryAgent";
|