@axway/axway-central-cli 4.5.0 → 4.6.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.
- package/.security-profile-branches.json +18 -0
- package/package.json +1 -1
- package/dist/cli.js +0 -71
- package/dist/commands/apply/index.js +0 -112
- package/dist/commands/completion/index.js +0 -100
- package/dist/commands/config/common/index.js +0 -28
- package/dist/commands/config/index.js +0 -20
- package/dist/commands/config/list.js +0 -24
- package/dist/commands/config/set.js +0 -102
- package/dist/commands/config/unset.js +0 -48
- package/dist/commands/create/agentResource.js +0 -108
- package/dist/commands/create/environment.js +0 -62
- package/dist/commands/create/index.js +0 -109
- package/dist/commands/create/serviceAccount.js +0 -15
- package/dist/commands/delete/index.js +0 -196
- package/dist/commands/edit/environment.js +0 -101
- package/dist/commands/edit/index.js +0 -28
- package/dist/commands/get/index.js +0 -272
- package/dist/commands/install/agents.js +0 -290
- package/dist/commands/install/apigeexAgents.js +0 -223
- package/dist/commands/install/apigeexSaasAgents.js +0 -300
- package/dist/commands/install/awsAgents.js +0 -525
- package/dist/commands/install/awsSaasAgents.js +0 -508
- package/dist/commands/install/azureAgents.js +0 -242
- package/dist/commands/install/azureSaasAgents.js +0 -519
- package/dist/commands/install/backstageAgents.js +0 -167
- package/dist/commands/install/edgeAgents.js +0 -409
- package/dist/commands/install/gitHubSaasAgents.js +0 -294
- package/dist/commands/install/gitLabAgents.js +0 -178
- package/dist/commands/install/graylogAgent.js +0 -147
- package/dist/commands/install/helpers/creators.js +0 -359
- package/dist/commands/install/helpers/deleters.js +0 -36
- package/dist/commands/install/helpers/getters.js +0 -95
- package/dist/commands/install/helpers/index.js +0 -267
- package/dist/commands/install/helpers/inputs.js +0 -593
- package/dist/commands/install/helpers/regex.js +0 -67
- package/dist/commands/install/helpers/templates/apigeexTemplates.js +0 -109
- package/dist/commands/install/helpers/templates/awsTemplates.js +0 -129
- package/dist/commands/install/helpers/templates/azureTemplates.js +0 -125
- package/dist/commands/install/helpers/templates/backstageTemplates.js +0 -95
- package/dist/commands/install/helpers/templates/edgeTemplates.js +0 -360
- package/dist/commands/install/helpers/templates/gitLabTemplates.js +0 -66
- package/dist/commands/install/helpers/templates/graylogTemplates.js +0 -75
- package/dist/commands/install/helpers/templates/ibmAPIConnectTemplates.js +0 -116
- package/dist/commands/install/helpers/templates/istioTemplates.js +0 -214
- package/dist/commands/install/helpers/templates/kafkaTemplates.js +0 -194
- package/dist/commands/install/helpers/templates/sapApiPortalTemplates.js +0 -114
- package/dist/commands/install/helpers/templates/softwareAGWebMethodsTemplates.js +0 -93
- package/dist/commands/install/helpers/templates/traceableTemplates.js +0 -135
- package/dist/commands/install/helpers/templates/wso2Templates.js +0 -85
- package/dist/commands/install/helpers/util.js +0 -26
- package/dist/commands/install/ibmAPIConnectAgents.js +0 -213
- package/dist/commands/install/index.js +0 -36
- package/dist/commands/install/istioAgents.js +0 -346
- package/dist/commands/install/kafkaAgents.js +0 -303
- package/dist/commands/install/platform.js +0 -175
- package/dist/commands/install/sapApiPortalAgents.js +0 -198
- package/dist/commands/install/softwareAGWebMethodsAgents.js +0 -161
- package/dist/commands/install/swaggerHubSaasAgents.js +0 -272
- package/dist/commands/install/traceableAgents.js +0 -257
- package/dist/commands/install/traceableSaasAgents.js +0 -275
- package/dist/commands/install/wso2Agents.js +0 -163
- package/dist/commands/productize/helpers/productizationHelper.js +0 -408
- package/dist/commands/productize/index.js +0 -99
- package/dist/common/ApiServerClient.js +0 -1109
- package/dist/common/CacheController.js +0 -146
- package/dist/common/CliConfigManager.js +0 -76
- package/dist/common/CompositeError.js +0 -95
- package/dist/common/CoreConfigController.js +0 -174
- package/dist/common/DefinitionsManager.js +0 -298
- package/dist/common/Kubectl.js +0 -68
- package/dist/common/PlatformClient.js +0 -128
- package/dist/common/Renderer.js +0 -409
- package/dist/common/TmpFile.js +0 -96
- package/dist/common/bashCommands.js +0 -97
- package/dist/common/basicPrompts.js +0 -160
- package/dist/common/dataService.js +0 -312
- package/dist/common/errorHandler.js +0 -46
- package/dist/common/modules.d.js +0 -1
- package/dist/common/resultsRenderers.js +0 -164
- package/dist/common/types.js +0 -746
- package/dist/common/utils.js +0 -476
- package/dist/main.js +0 -8
|
@@ -1,359 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.updateSubResourceType = exports.createSecret = exports.createNewIDPSecretResource = exports.createNewIDPResource = exports.createNewDataPlaneSecretResource = exports.createNewDataPlaneResource = exports.createNewAgentResource = exports.createDosaAndCerts = exports.createByResourceType = exports.createBackUpConfigs = void 0;
|
|
7
|
-
var _chalk = _interopRequireDefault(require("chalk"));
|
|
8
|
-
var _snooplogg = _interopRequireDefault(require("snooplogg"));
|
|
9
|
-
var _fsExtra = _interopRequireDefault(require("fs-extra"));
|
|
10
|
-
var _bashCommands = require("../../../common/bashCommands");
|
|
11
|
-
var _Kubectl = require("../../../common/Kubectl");
|
|
12
|
-
var _PlatformClient = require("../../../common/PlatformClient");
|
|
13
|
-
var _types = require("../../../common/types");
|
|
14
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
-
const {
|
|
16
|
-
log
|
|
17
|
-
} = (0, _snooplogg.default)('central: install: helpers: creators');
|
|
18
|
-
const createBackUpConfigs = async configFiles => {
|
|
19
|
-
let fileExist = false;
|
|
20
|
-
let dateTimeStamp = new Date().toISOString().slice(0, 10).concat(' ').concat(new Date().toLocaleTimeString('it-IT')).replace(/:\s*/g, '.');
|
|
21
|
-
const backupDate = `${dateTimeStamp}-`;
|
|
22
|
-
for (let configFile of configFiles) {
|
|
23
|
-
if (_fsExtra.default.existsSync(configFile)) {
|
|
24
|
-
fileExist = true;
|
|
25
|
-
let backupFile = backupDate + configFile;
|
|
26
|
-
await _fsExtra.default.copyFile(configFile, backupFile).then(() => {
|
|
27
|
-
console.log(`Created backup file ${backupFile}`);
|
|
28
|
-
}).catch(err => {
|
|
29
|
-
console.error(err);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
return fileExist;
|
|
34
|
-
};
|
|
35
|
-
exports.createBackUpConfigs = createBackUpConfigs;
|
|
36
|
-
const createDosaAndCerts = async (client, name) => {
|
|
37
|
-
console.log('Creating a new service account.');
|
|
38
|
-
const {
|
|
39
|
-
publicKey,
|
|
40
|
-
privateKey
|
|
41
|
-
} = await (0, _bashCommands.createKeyPair)();
|
|
42
|
-
const publicCert = _fsExtra.default.readFileSync(publicKey).toString();
|
|
43
|
-
const account = await client.createServiceAccount({
|
|
44
|
-
name: name,
|
|
45
|
-
desc: name,
|
|
46
|
-
publicKey: publicCert,
|
|
47
|
-
roles: [_PlatformClient.PlatformServiceAccountRole.ApiCentralAdmin]
|
|
48
|
-
});
|
|
49
|
-
console.log(_chalk.default.green(`New service account "${account.name}" with clientId "${account.client_id}" has been successfully created.`));
|
|
50
|
-
console.log(_chalk.default.green(`The private key has been placed at ${privateKey}\nThe public key has been placed at ${publicKey}`));
|
|
51
|
-
return new _types.DosaAccount(account.client_id, publicKey, privateKey);
|
|
52
|
-
};
|
|
53
|
-
exports.createDosaAndCerts = createDosaAndCerts;
|
|
54
|
-
const updateSubResourceType = async (client, defsManager, name, resourceType, resourceShortName, scopeName = '', subResources = {}) => {
|
|
55
|
-
var _defs$0$resource$spec, _defs$0$resource$spec2;
|
|
56
|
-
const defs = defsManager.findDefsByWord(resourceShortName);
|
|
57
|
-
if (!defs) {
|
|
58
|
-
throw Error(`the server doesn't have a resource type "${resourceType}"`);
|
|
59
|
-
}
|
|
60
|
-
const knownSubResourcesNames = (_defs$0$resource$spec = (_defs$0$resource$spec2 = defs[0].resource.spec.subResources) === null || _defs$0$resource$spec2 === void 0 ? void 0 : _defs$0$resource$spec2.names) !== null && _defs$0$resource$spec !== void 0 ? _defs$0$resource$spec : [];
|
|
61
|
-
for (let [key, value] of Object.entries(subResources)) {
|
|
62
|
-
if (knownSubResourcesNames.includes(key)) {
|
|
63
|
-
console.log(`Updating subresource ${key} on ${resourceType}`);
|
|
64
|
-
const resource = {
|
|
65
|
-
name
|
|
66
|
-
};
|
|
67
|
-
Object.assign(resource, {
|
|
68
|
-
[key]: value
|
|
69
|
-
});
|
|
70
|
-
await client.updateSubResource({
|
|
71
|
-
resourceDef: defs[0].resource,
|
|
72
|
-
resource: resource,
|
|
73
|
-
subResourceName: key,
|
|
74
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
75
|
-
scopeName: defs[0].scope ? scopeName || name : undefined
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
exports.updateSubResourceType = updateSubResourceType;
|
|
81
|
-
const createByResourceType = async (client, defsManager, name, resourceType, resourceShortName, spec = {}, scopeName = '', subResources = {}) => {
|
|
82
|
-
var _defs$0$resource$spec3, _defs$0$resource$spec4;
|
|
83
|
-
console.log(`Creating a new ${resourceType}`);
|
|
84
|
-
// NOTE: only a first found set is used
|
|
85
|
-
const defs = defsManager.findDefsByWord(resourceShortName);
|
|
86
|
-
if (!defs) {
|
|
87
|
-
throw Error(`the server doesn't have a resource type "${resourceType}"`);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
// @ts-ignore payload
|
|
91
|
-
const resource = {
|
|
92
|
-
name,
|
|
93
|
-
spec
|
|
94
|
-
};
|
|
95
|
-
const knownSubResourcesNames = (_defs$0$resource$spec3 = (_defs$0$resource$spec4 = defs[0].resource.spec.subResources) === null || _defs$0$resource$spec4 === void 0 ? void 0 : _defs$0$resource$spec4.names) !== null && _defs$0$resource$spec3 !== void 0 ? _defs$0$resource$spec3 : [];
|
|
96
|
-
for (let [key, value] of Object.entries(subResources)) {
|
|
97
|
-
if (knownSubResourcesNames.includes(key)) {
|
|
98
|
-
Object.assign(resource, {
|
|
99
|
-
[key]: value
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
const withSubRes = subResources !== null;
|
|
104
|
-
const result = await client.createResource({
|
|
105
|
-
resource,
|
|
106
|
-
resourceDef: defs[0].resource,
|
|
107
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
108
|
-
scopeName: defs[0].scope ? scopeName || name : undefined,
|
|
109
|
-
withSubResources: withSubRes
|
|
110
|
-
});
|
|
111
|
-
if (!result.data) {
|
|
112
|
-
var _result$error;
|
|
113
|
-
const errMsg = `cannot create a new ${resourceType.toLowerCase()}`;
|
|
114
|
-
if ((_result$error = result.error) !== null && _result$error !== void 0 && _result$error.length) {
|
|
115
|
-
throw Error(`${errMsg}: ${result.error[0].detail}.`);
|
|
116
|
-
} else {
|
|
117
|
-
throw Error(`${errMsg}.`);
|
|
118
|
-
}
|
|
119
|
-
} else {
|
|
120
|
-
console.log(`New ${resourceType.toLowerCase()} "${result.data.name}" has been successfully created.`);
|
|
121
|
-
}
|
|
122
|
-
return result.data.name;
|
|
123
|
-
};
|
|
124
|
-
exports.createByResourceType = createByResourceType;
|
|
125
|
-
const createNewAgentResource = async (client, defsManager, envName, dataPlaneType, agentResource, agentType, owningTeam, agentName, dataPlaneName, frequency, queue, config, filterDA) => {
|
|
126
|
-
console.log(`Creating a new ${agentResource}, with data plane type: ${dataPlaneType}.`);
|
|
127
|
-
// NOTE: only a first found set is used
|
|
128
|
-
const defs = defsManager.findDefsByWord(agentType);
|
|
129
|
-
if (!defs) {
|
|
130
|
-
throw Error(`the server doesn't have a resource type "${agentType}"`);
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
// create the dataplane object
|
|
134
|
-
let withSubResources = false;
|
|
135
|
-
let dataplane = {};
|
|
136
|
-
if (dataPlaneName) {
|
|
137
|
-
dataplane.name = dataPlaneName;
|
|
138
|
-
withSubResources = true;
|
|
139
|
-
}
|
|
140
|
-
frequency ? dataplane.frequency = frequency : null;
|
|
141
|
-
queue ? agentResource === _types.AgentResourceKind.da ? dataplane.queueDiscovery = queue : dataplane.queueTrafficCollection = queue : null;
|
|
142
|
-
config ? null : config = {
|
|
143
|
-
owningTeam: owningTeam,
|
|
144
|
-
filter: dataPlaneType === _types.DataPlaneNames.AWS || _types.DataPlaneNames.AZURE ? filterDA === null || filterDA === void 0 ? void 0 : filterDA.trim() : ''
|
|
145
|
-
};
|
|
146
|
-
const result = await client.createResource({
|
|
147
|
-
// @ts-ignore payload
|
|
148
|
-
resource: {
|
|
149
|
-
title: agentName,
|
|
150
|
-
spec: {
|
|
151
|
-
dataplaneType: dataPlaneType,
|
|
152
|
-
config: config
|
|
153
|
-
},
|
|
154
|
-
dataplane: dataplane
|
|
155
|
-
},
|
|
156
|
-
resourceDef: defs[0].resource,
|
|
157
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
158
|
-
scopeName: envName,
|
|
159
|
-
withSubResources: withSubResources
|
|
160
|
-
});
|
|
161
|
-
if (!result.data) {
|
|
162
|
-
var _result$error2;
|
|
163
|
-
const errMsg = `cannot create a new agent`;
|
|
164
|
-
if ((_result$error2 = result.error) !== null && _result$error2 !== void 0 && _result$error2.length) {
|
|
165
|
-
throw Error(`${errMsg}: ${result.error[0].detail}.`);
|
|
166
|
-
} else {
|
|
167
|
-
throw Error(`${errMsg}.`);
|
|
168
|
-
}
|
|
169
|
-
} else {
|
|
170
|
-
console.log(`New agent of type "${defs[0].resource.name}" named "${result.data.name}" has been successfully created.`);
|
|
171
|
-
}
|
|
172
|
-
return result.data.name;
|
|
173
|
-
};
|
|
174
|
-
|
|
175
|
-
/**
|
|
176
|
-
* @description Helper func to create a new DataPlane resource
|
|
177
|
-
* @param client API Service Client
|
|
178
|
-
* @param defsManager Definition Manager
|
|
179
|
-
* @param envName Environment Name
|
|
180
|
-
* @param dataPlaneType DataPlane Type
|
|
181
|
-
*/
|
|
182
|
-
exports.createNewAgentResource = createNewAgentResource;
|
|
183
|
-
const createNewDataPlaneResource = async (client, defsManager, envName, dataPlaneType, config) => {
|
|
184
|
-
console.log(`Creating a new Dataplane resource, with type: ${dataPlaneType}.`);
|
|
185
|
-
// NOTE: only a first found set is used
|
|
186
|
-
const defs = defsManager.findDefsByWord("dp");
|
|
187
|
-
if (!defs) {
|
|
188
|
-
throw Error(`the server doesn't have a resource type "Dataplane"`);
|
|
189
|
-
}
|
|
190
|
-
const result = await client.createResource({
|
|
191
|
-
// @ts-ignore payload
|
|
192
|
-
resource: {
|
|
193
|
-
title: dataPlaneType + " Dataplane",
|
|
194
|
-
spec: {
|
|
195
|
-
type: dataPlaneType,
|
|
196
|
-
config: config
|
|
197
|
-
}
|
|
198
|
-
},
|
|
199
|
-
resourceDef: defs[0].resource,
|
|
200
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
201
|
-
scopeName: envName
|
|
202
|
-
});
|
|
203
|
-
if (!result.data) {
|
|
204
|
-
var _result$error3;
|
|
205
|
-
const errMsg = `cannot create a new dataplane`;
|
|
206
|
-
if ((_result$error3 = result.error) !== null && _result$error3 !== void 0 && _result$error3.length) {
|
|
207
|
-
throw Error(`${errMsg}: ${result.error[0].detail}.`);
|
|
208
|
-
} else {
|
|
209
|
-
throw Error(`${errMsg}.`);
|
|
210
|
-
}
|
|
211
|
-
} else {
|
|
212
|
-
console.log(`New dataplane of type "${defs[0].resource.name}" named "${result.data.name}" has been successfully created.`);
|
|
213
|
-
}
|
|
214
|
-
return result.data;
|
|
215
|
-
};
|
|
216
|
-
|
|
217
|
-
/**
|
|
218
|
-
* @description Helper func to create a new DataPlane resource
|
|
219
|
-
* @param client API Service Client
|
|
220
|
-
* @param defsManager Definition Manager
|
|
221
|
-
* @param envName Environment Name
|
|
222
|
-
* @param dataPlaneName DataPlane Name
|
|
223
|
-
* @param accessData Encrypted Access Data
|
|
224
|
-
*/
|
|
225
|
-
exports.createNewDataPlaneResource = createNewDataPlaneResource;
|
|
226
|
-
const createNewDataPlaneSecretResource = async (client, defsManager, envName, dataPlaneType, dataPlaneName, accessData) => {
|
|
227
|
-
console.log(`Creating a new DataplaneSecret resource.`);
|
|
228
|
-
// NOTE: only a first found set is used
|
|
229
|
-
const defs = defsManager.findDefsByWord("dps");
|
|
230
|
-
if (!defs) {
|
|
231
|
-
throw Error(`the server doesn't have a resource type "DataplaneSecret"`);
|
|
232
|
-
}
|
|
233
|
-
const result = await client.createResource({
|
|
234
|
-
// @ts-ignore payload
|
|
235
|
-
resource: {
|
|
236
|
-
title: dataPlaneType + " Dataplane Secret",
|
|
237
|
-
spec: {
|
|
238
|
-
dataplane: dataPlaneName,
|
|
239
|
-
data: accessData
|
|
240
|
-
}
|
|
241
|
-
},
|
|
242
|
-
resourceDef: defs[0].resource,
|
|
243
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
244
|
-
scopeName: envName
|
|
245
|
-
});
|
|
246
|
-
log(result);
|
|
247
|
-
if (!result.data) {
|
|
248
|
-
var _result$error4;
|
|
249
|
-
const errMsg = `cannot create a new agent`;
|
|
250
|
-
if ((_result$error4 = result.error) !== null && _result$error4 !== void 0 && _result$error4.length) {
|
|
251
|
-
throw Error(`${errMsg}: ${result.error[0].detail}.`);
|
|
252
|
-
} else {
|
|
253
|
-
throw Error(`${errMsg}.`);
|
|
254
|
-
}
|
|
255
|
-
} else {
|
|
256
|
-
console.log(`New secret of type "${defs[0].resource.name}" named "${result.data.name}" has been successfully created.`);
|
|
257
|
-
}
|
|
258
|
-
return result.data;
|
|
259
|
-
};
|
|
260
|
-
|
|
261
|
-
/**
|
|
262
|
-
* @description Helper func to create a new Identity Provider resource
|
|
263
|
-
* @param client API Service Client
|
|
264
|
-
* @param defsManager Definition Manager
|
|
265
|
-
* @param idpConfig IDP Configuration from inputs
|
|
266
|
-
*/
|
|
267
|
-
exports.createNewDataPlaneSecretResource = createNewDataPlaneSecretResource;
|
|
268
|
-
const createNewIDPResource = async (client, defsManager, idpConfig) => {
|
|
269
|
-
console.log(`Creating a new Identity Provider resource.`);
|
|
270
|
-
// NOTE: only a first found set is used
|
|
271
|
-
const defs = defsManager.findDefsByWord("idp");
|
|
272
|
-
if (!defs) {
|
|
273
|
-
throw Error(`the server doesn't have a resource type Identity Provider`);
|
|
274
|
-
}
|
|
275
|
-
const result = await client.createResource({
|
|
276
|
-
// @ts-ignore payload
|
|
277
|
-
resource: {
|
|
278
|
-
title: idpConfig.title,
|
|
279
|
-
spec: idpConfig.getSpec()
|
|
280
|
-
},
|
|
281
|
-
resourceDef: defs[0].resource,
|
|
282
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined
|
|
283
|
-
});
|
|
284
|
-
log(result);
|
|
285
|
-
if (!result.data) {
|
|
286
|
-
var _result$error5;
|
|
287
|
-
const errMsg = `cannot create a new agent`;
|
|
288
|
-
if ((_result$error5 = result.error) !== null && _result$error5 !== void 0 && _result$error5.length) {
|
|
289
|
-
throw Error(`${errMsg}: ${result.error[0].detail}.`);
|
|
290
|
-
} else {
|
|
291
|
-
throw Error(`${errMsg}.`);
|
|
292
|
-
}
|
|
293
|
-
} else {
|
|
294
|
-
console.log(`New Identity Provider of type "${defs[0].resource.name}" named "${result.data.name}" has been successfully created.`);
|
|
295
|
-
}
|
|
296
|
-
return result.data;
|
|
297
|
-
};
|
|
298
|
-
|
|
299
|
-
/**
|
|
300
|
-
* @description Helper func to create a new Identity Provider Secret resource
|
|
301
|
-
* @param client API Service Client
|
|
302
|
-
* @param defsManager Definition Manager
|
|
303
|
-
* @param idpAuthConfig IDP Auth Configuration from inputs
|
|
304
|
-
* @param idpResource IDP Configuration received after creating the IDP from inputs
|
|
305
|
-
*/
|
|
306
|
-
exports.createNewIDPResource = createNewIDPResource;
|
|
307
|
-
const createNewIDPSecretResource = async (client, defsManager, idpAuthConfig, idpResource) => {
|
|
308
|
-
console.log(`Creating a new Identity Provider Secret resource.`);
|
|
309
|
-
// NOTE: only a first found set is used
|
|
310
|
-
const defs = defsManager.findDefsByWord("idpsec");
|
|
311
|
-
if (!defs) {
|
|
312
|
-
throw Error(`the server doesn't have a resource type Identity Provider Secret`);
|
|
313
|
-
}
|
|
314
|
-
const result = await client.createResource({
|
|
315
|
-
// @ts-ignore payload
|
|
316
|
-
resource: {
|
|
317
|
-
title: idpResource.title + ' IDPSecret',
|
|
318
|
-
spec: idpAuthConfig.getSpec()
|
|
319
|
-
},
|
|
320
|
-
resourceDef: defs[0].resource,
|
|
321
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
322
|
-
scopeName: idpResource.name
|
|
323
|
-
});
|
|
324
|
-
log(result);
|
|
325
|
-
if (!result.data) {
|
|
326
|
-
var _result$error6;
|
|
327
|
-
const errMsg = `cannot create a new agent`;
|
|
328
|
-
if ((_result$error6 = result.error) !== null && _result$error6 !== void 0 && _result$error6.length) {
|
|
329
|
-
throw Error(`${errMsg}: ${result.error[0].detail}.`);
|
|
330
|
-
} else {
|
|
331
|
-
throw Error(`${errMsg}.`);
|
|
332
|
-
}
|
|
333
|
-
} else {
|
|
334
|
-
console.log(`New Identity Provider of type "${defs[0].resource.name}" named "${result.data.name}" has been successfully created.`);
|
|
335
|
-
}
|
|
336
|
-
return result.data;
|
|
337
|
-
};
|
|
338
|
-
|
|
339
|
-
/**
|
|
340
|
-
* @description Helper func to check for existing secret, and clean up old secret before creating a new one.
|
|
341
|
-
* @param namespace Namespace to create the secret in.
|
|
342
|
-
* @param secretName The name of the secret.
|
|
343
|
-
* @param createFunc A function that will create the secret
|
|
344
|
-
*/
|
|
345
|
-
exports.createNewIDPSecretResource = createNewIDPSecretResource;
|
|
346
|
-
const createSecret = async (namespace, secretName, createFunc) => {
|
|
347
|
-
const secrets = await _Kubectl.kubectl.get('secrets', `-n ${namespace} ${secretName}`);
|
|
348
|
-
// NotFound errors are ok. Throw an error for anything else.
|
|
349
|
-
if (secrets.error && !secrets.error.includes('NotFound')) {
|
|
350
|
-
throw Error(secrets.error);
|
|
351
|
-
}
|
|
352
|
-
|
|
353
|
-
// delete the secret if it already exists and then re-create it.
|
|
354
|
-
if (secrets.data.length > 0) {
|
|
355
|
-
await _Kubectl.kubectl.delete('secret', `-n ${namespace} ${secretName}`);
|
|
356
|
-
}
|
|
357
|
-
await createFunc();
|
|
358
|
-
};
|
|
359
|
-
exports.createSecret = createSecret;
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.deleteByResourceType = void 0;
|
|
7
|
-
var _chalk = _interopRequireDefault(require("chalk"));
|
|
8
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
-
const deleteByResourceType = async (client, defsManager, name, resourceType, resourceShortName, scopeName = '') => {
|
|
10
|
-
console.log(`Deleting ${resourceType}`);
|
|
11
|
-
// NOTE: only a first found set is used
|
|
12
|
-
const defs = defsManager.findDefsByWord(resourceShortName);
|
|
13
|
-
if (!defs) {
|
|
14
|
-
throw Error(`the server doesn't have a resource type "${resourceType}"`);
|
|
15
|
-
}
|
|
16
|
-
const result = await client.deleteResourceByName({
|
|
17
|
-
// @ts-ignore resource is not important for the test`
|
|
18
|
-
resourceName: name,
|
|
19
|
-
// @ts-ignore resourceDef is not important for the test
|
|
20
|
-
resourceDef: defs[0].resource,
|
|
21
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
22
|
-
scopeName: defs[0].scope ? scopeName || name : undefined
|
|
23
|
-
});
|
|
24
|
-
if (!result.data) {
|
|
25
|
-
var _result$error;
|
|
26
|
-
const errMsg = `error deleting resource ${resourceType.toLowerCase()}`;
|
|
27
|
-
if ((_result$error = result.error) !== null && _result$error !== void 0 && _result$error.length) {
|
|
28
|
-
console.log(_chalk.default.redBright(`${errMsg}: ${result.error[0].detail}.`));
|
|
29
|
-
} else {
|
|
30
|
-
console.log(_chalk.default.redBright(`${errMsg}.`));
|
|
31
|
-
}
|
|
32
|
-
} else {
|
|
33
|
-
console.log(`New ${resourceType.toLowerCase()} "${result.data.name}" has been successfully deleted.`);
|
|
34
|
-
}
|
|
35
|
-
};
|
|
36
|
-
exports.deleteByResourceType = deleteByResourceType;
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getListByResource = exports.getLatestAgentVersion = exports.getEnvironmentId = exports.getCurrentUserOrgId = void 0;
|
|
7
|
-
var _snooplogg = _interopRequireDefault(require("snooplogg"));
|
|
8
|
-
var _CoreConfigController = require("../../../common/CoreConfigController");
|
|
9
|
-
var _dataService = require("../../../common/dataService");
|
|
10
|
-
var _types = require("../../../common/types");
|
|
11
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
-
const {
|
|
13
|
-
log
|
|
14
|
-
} = (0, _snooplogg.default)('central: install: agents: helpers');
|
|
15
|
-
const getListByResource = async input => {
|
|
16
|
-
// NOTE: only a first found set is used
|
|
17
|
-
const defs = input.defsManager.findDefsByWord(input.resourceShortName);
|
|
18
|
-
if (!defs) {
|
|
19
|
-
throw Error(`the server doesn't have a resource type "${input.resourceType}"`);
|
|
20
|
-
}
|
|
21
|
-
return input.client.getResourcesList({
|
|
22
|
-
resourceDef: defs[0].resource,
|
|
23
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
24
|
-
scopeName: input.scopeName,
|
|
25
|
-
query: input.query
|
|
26
|
-
});
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
// Note: forcing it to use apicentral client id
|
|
30
|
-
exports.getListByResource = getListByResource;
|
|
31
|
-
const getCurrentUserOrgId = async () => {
|
|
32
|
-
const authData = await new _CoreConfigController.CoreConfigController().getAuthInfo();
|
|
33
|
-
if (!authData.orgId) throw Error(`Can't find org ID`);
|
|
34
|
-
return authData.orgId;
|
|
35
|
-
};
|
|
36
|
-
exports.getCurrentUserOrgId = getCurrentUserOrgId;
|
|
37
|
-
const getEnvironmentId = async (client, defsManager, environmentName, scopeName) => {
|
|
38
|
-
var _resource$data;
|
|
39
|
-
const defs = defsManager.findDefsByWord('env');
|
|
40
|
-
if (!defs) {
|
|
41
|
-
throw Error(`the server doesn't have a resource type "Environment"`);
|
|
42
|
-
}
|
|
43
|
-
const resource = await client.getResourceByName({
|
|
44
|
-
resourceDef: defs[0].resource,
|
|
45
|
-
resourceName: environmentName,
|
|
46
|
-
scopeDef: defs[0].scope ? defs[0].scope : undefined,
|
|
47
|
-
scopeName: scopeName ? scopeName : undefined
|
|
48
|
-
});
|
|
49
|
-
return (_resource$data = resource.data) !== null && _resource$data !== void 0 && _resource$data.metadata ? resource.data.metadata.id || '' : '';
|
|
50
|
-
};
|
|
51
|
-
exports.getEnvironmentId = getEnvironmentId;
|
|
52
|
-
const getLatestAgentVersion = async agent => {
|
|
53
|
-
try {
|
|
54
|
-
const service = await (0, _dataService.dataService)({
|
|
55
|
-
baseUrl: _types.PublicRepoUrl,
|
|
56
|
-
basePath: _types.BasePaths.DockerAgentAPIRepoPath
|
|
57
|
-
});
|
|
58
|
-
const response = await service.get(`/${agent}/tags/list`, {
|
|
59
|
-
// docker api requires auth, even if its just anonymous
|
|
60
|
-
Authorization: `Basic ${Buffer.from('anonymous:').toString('base64')}`
|
|
61
|
-
}, true);
|
|
62
|
-
if (response.tags.length === 0) {
|
|
63
|
-
return 'latest';
|
|
64
|
-
}
|
|
65
|
-
const latestVersion = response.tags.reduce((prev, current) => {
|
|
66
|
-
// skip any tags that are latest
|
|
67
|
-
if (prev === 'latest') {
|
|
68
|
-
return current;
|
|
69
|
-
} else if (current === 'latest') {
|
|
70
|
-
return prev;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
// find the largest tag
|
|
74
|
-
const [pMajor, pMinor, pPatch] = prev.split('.').map(Number);
|
|
75
|
-
const [cMajor, cMinor, cPatch] = current.split('.').map(Number);
|
|
76
|
-
if (cMajor > pMajor) {
|
|
77
|
-
return current;
|
|
78
|
-
}
|
|
79
|
-
if (cMajor == pMajor && cMinor > pMinor) {
|
|
80
|
-
return current;
|
|
81
|
-
}
|
|
82
|
-
if (cMajor == pMajor && cMinor == pMinor && cPatch > pPatch) {
|
|
83
|
-
return current;
|
|
84
|
-
}
|
|
85
|
-
return prev;
|
|
86
|
-
});
|
|
87
|
-
log(`Latest Version (${agent}): ${latestVersion}`);
|
|
88
|
-
return latestVersion;
|
|
89
|
-
} catch (e) {
|
|
90
|
-
log('Error hit retrieving latest version of agent, setting tag to latest');
|
|
91
|
-
log(e);
|
|
92
|
-
return 'latest';
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
exports.getLatestAgentVersion = getLatestAgentVersion;
|