@codiac.io/codiac-cli 1.2.150 → 1.2.152
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/README.md +115 -110
- package/lib/api-clients/common/api-user-creds.d.ts +7 -0
- package/lib/api-clients/common/api-user-creds.js +19 -0
- package/lib/api-clients/common/api-user-creds.js.map +1 -0
- package/lib/api-clients/common/config-loader.d.ts +6 -0
- package/lib/api-clients/common/config-loader.js +19 -0
- package/lib/api-clients/common/config-loader.js.map +1 -0
- package/lib/api-clients/common/security/auth-constants.d.ts +15 -0
- package/lib/api-clients/common/security/auth-constants.js +22 -0
- package/lib/api-clients/common/security/auth-constants.js.map +1 -0
- package/lib/api-clients/common/security/i-auth-client.d.ts +44 -0
- package/lib/api-clients/common/security/i-auth-client.js +3 -0
- package/lib/api-clients/common/security/i-auth-client.js.map +1 -0
- package/lib/api-clients/common/security/rest-client-base-with-auth.d.ts +84 -0
- package/lib/api-clients/common/security/rest-client-base-with-auth.js +361 -0
- package/lib/api-clients/common/security/rest-client-base-with-auth.js.map +1 -0
- package/lib/api-clients/common/security/token-holder.d.ts +13 -0
- package/lib/api-clients/common/security/token-holder.js +18 -0
- package/lib/api-clients/common/security/token-holder.js.map +1 -0
- package/lib/api-clients/common/utils.d.ts +23 -0
- package/lib/api-clients/common/utils.js +83 -0
- package/lib/api-clients/common/utils.js.map +1 -0
- package/lib/api-clients/contracts/index.d.ts +1 -0
- package/lib/api-clients/contracts/index.js +5 -0
- package/lib/api-clients/contracts/index.js.map +1 -0
- package/lib/api-clients/gen/client-config.d.ts +10 -0
- package/lib/api-clients/gen/client-config.js +29 -0
- package/lib/api-clients/gen/client-config.js.map +1 -0
- package/lib/api-clients/gen/client.d.ts +45 -0
- package/lib/api-clients/gen/client.js +331 -0
- package/lib/api-clients/gen/client.js.map +1 -0
- package/lib/api-clients/gen/contracts.d.ts +2529 -0
- package/lib/api-clients/gen/contracts.js +370 -0
- package/lib/api-clients/gen/contracts.js.map +1 -0
- package/lib/api-clients/gen/endpoints.d.ts +3 -0
- package/lib/api-clients/gen/endpoints.js +3150 -0
- package/lib/api-clients/gen/endpoints.js.map +1 -0
- package/lib/api-clients/index.d.ts +2 -0
- package/lib/api-clients/index.js +6 -0
- package/lib/api-clients/index.js.map +1 -0
- package/lib/apis/codiac-api/common/security/rest-client-base-with-auth.d.ts +84 -0
- package/lib/apis/codiac-api/common/security/rest-client-base-with-auth.js +361 -0
- package/lib/apis/codiac-api/common/security/rest-client-base-with-auth.js.map +1 -0
- package/lib/apis/codiac-api/gen/endpoints.d.ts +3 -0
- package/lib/apis/codiac-api/gen/endpoints.js +3150 -0
- package/lib/apis/codiac-api/gen/endpoints.js.map +1 -0
- package/lib/apis/over-gen/temp-mods.d.ts +33 -0
- package/lib/apis/over-gen/temp-mods.js +91 -0
- package/lib/apis/over-gen/temp-mods.js.map +1 -0
- package/lib/commands/csp/login.js +52 -43
- package/lib/commands/csp/login.js.map +1 -1
- package/lib/k8s-command-base.d.ts +25 -15
- package/lib/k8s-command-base.js +92 -20
- package/lib/k8s-command-base.js.map +1 -1
- package/lib/relay/data/aws-regions.d.ts +0 -6
- package/lib/relay/data/aws-regions.js +32 -32
- package/lib/relay/data/aws-regions.js.map +1 -1
- package/lib/relay/relay-container.js +1 -1
- package/lib/relay/wsclient/bus-listener.ervice.d.ts +71 -0
- package/lib/relay/wsclient/bus-listener.ervice.js +150 -0
- package/lib/relay/wsclient/bus-listener.ervice.js.map +1 -0
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.d.ts +0 -11
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js +13 -14
- package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js.map +1 -1
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.d.ts +33 -1
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.js +3712 -2
- package/lib/uilogic/cloud-resource-configurators/aws-node-types.js.map +1 -1
- package/lib/uilogic/enterprise-contextualizer-machine-scope.d.ts +69 -0
- package/lib/uilogic/enterprise-contextualizer-machine-scope.js +596 -0
- package/lib/uilogic/enterprise-contextualizer-machine-scope.js.map +1 -0
- package/lib/uilogic/registry-configurator-factory.d.ts +12 -0
- package/lib/uilogic/registry-configurator-factory.js +68 -0
- package/lib/uilogic/registry-configurator-factory.js.map +1 -0
- package/lib/uilogic/registry-configurator.d.ts +17 -0
- package/lib/uilogic/registry-configurator.js +145 -0
- package/lib/uilogic/registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/aws-registry-configurator.d.ts +15 -0
- package/lib/uilogic/registry-configurators/aws-registry-configurator.js +67 -0
- package/lib/uilogic/registry-configurators/aws-registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/azure-registry-configurator.d.ts +25 -0
- package/lib/uilogic/registry-configurators/azure-registry-configurator.js +72 -0
- package/lib/uilogic/registry-configurators/azure-registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/docker-hub-registry-configurator.d.ts +18 -0
- package/lib/uilogic/registry-configurators/docker-hub-registry-configurator.js +55 -0
- package/lib/uilogic/registry-configurators/docker-hub-registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/helm-registry-configurator.d.ts +16 -0
- package/lib/uilogic/registry-configurators/helm-registry-configurator.js +44 -0
- package/lib/uilogic/registry-configurators/helm-registry-configurator.js.map +1 -0
- package/lib/uilogic/registry-configurators/unsupported-registry-configurator.d.ts +17 -0
- package/lib/uilogic/registry-configurators/unsupported-registry-configurator.js +60 -0
- package/lib/uilogic/registry-configurators/unsupported-registry-configurator.js.map +1 -0
- package/oclif.manifest.json +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enterprise-contextualizer-machine-scope.js","sourceRoot":"","sources":["../../src/uilogic/enterprise-contextualizer-machine-scope.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CloudProviderEnum } from "@codiac.io/codiac-domain";
|
|
2
|
+
import { interfaces } from "inversify";
|
|
3
|
+
import { IRegistryConfigurator } from "./i-registry-configurator";
|
|
4
|
+
export declare class INTERFACES_CLI_ENTERPRISE {
|
|
5
|
+
static readonly IRegistryConfigurator: symbol;
|
|
6
|
+
}
|
|
7
|
+
export declare class RegistryConfiguratorFactory {
|
|
8
|
+
/** Idempotent. */
|
|
9
|
+
static bootstrap(ioc: interfaces.Container): void;
|
|
10
|
+
constructor();
|
|
11
|
+
create(provider: CloudProviderEnum, ioc: interfaces.Container): IRegistryConfigurator;
|
|
12
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RegistryConfiguratorFactory = exports.INTERFACES_CLI_ENTERPRISE = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
6
|
+
const inversify_1 = require("inversify");
|
|
7
|
+
const aws_registry_configurator_1 = require("./registry-configurators/aws-registry-configurator");
|
|
8
|
+
const azure_registry_configurator_1 = require("./registry-configurators/azure-registry-configurator");
|
|
9
|
+
const docker_hub_registry_configurator_1 = require("./registry-configurators/docker-hub-registry-configurator");
|
|
10
|
+
const helm_registry_configurator_1 = require("./registry-configurators/helm-registry-configurator");
|
|
11
|
+
class INTERFACES_CLI_ENTERPRISE {
|
|
12
|
+
}
|
|
13
|
+
exports.INTERFACES_CLI_ENTERPRISE = INTERFACES_CLI_ENTERPRISE;
|
|
14
|
+
INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator = Symbol.for("IRegistryConfigurator");
|
|
15
|
+
let RegistryConfiguratorFactory = class RegistryConfiguratorFactory {
|
|
16
|
+
/** Idempotent. */
|
|
17
|
+
static bootstrap(ioc) {
|
|
18
|
+
if (!ioc.isBoundNamed(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator, codiac_domain_1.CloudProviderEnum.aws)) {
|
|
19
|
+
ioc.bind(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator)
|
|
20
|
+
.to(aws_registry_configurator_1.AwsRegistryConfigurator)
|
|
21
|
+
.whenTargetNamed(codiac_domain_1.CloudProviderEnum.aws);
|
|
22
|
+
}
|
|
23
|
+
if (!ioc.isBoundNamed(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator, codiac_domain_1.CloudProviderEnum.azure)) {
|
|
24
|
+
ioc.bind(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator)
|
|
25
|
+
.to(azure_registry_configurator_1.AzureRegistryConfigurator)
|
|
26
|
+
.whenTargetNamed(codiac_domain_1.CloudProviderEnum.azure);
|
|
27
|
+
}
|
|
28
|
+
if (!ioc.isBoundNamed(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator, codiac_domain_1.CloudProviderEnum.dockerHub)) {
|
|
29
|
+
ioc.bind(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator)
|
|
30
|
+
.to(docker_hub_registry_configurator_1.DockerHubRegistryConfigurator)
|
|
31
|
+
.whenTargetNamed(codiac_domain_1.CloudProviderEnum.dockerHub);
|
|
32
|
+
}
|
|
33
|
+
if (!ioc.isBoundNamed(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator, codiac_domain_1.CloudProviderEnum.other)) {
|
|
34
|
+
ioc.bind(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator)
|
|
35
|
+
.to(helm_registry_configurator_1.HelmRegistryConfigurator)
|
|
36
|
+
.whenTargetNamed(codiac_domain_1.CloudProviderEnum.other);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
constructor(
|
|
40
|
+
// @inject(CodiacClient) private _codiacApi: CodiacClient,
|
|
41
|
+
// @inject(INTERFACES_OPS.IUserInputProvider) private _ui: IUserInputProvider,
|
|
42
|
+
// @inject(INTERFACES.IBetterLogger) private logger: IBetterLogger
|
|
43
|
+
) {
|
|
44
|
+
}
|
|
45
|
+
create(provider, ioc) {
|
|
46
|
+
return ioc.getNamed(INTERFACES_CLI_ENTERPRISE.IRegistryConfigurator, provider);
|
|
47
|
+
// Keep the manual switch below until we're sure that we dont need to pass in any inline ctor args (ie: until we know ctor injection wont back us in a corner).
|
|
48
|
+
// switch (provider) {
|
|
49
|
+
// case CloudProviderEnum.aws:
|
|
50
|
+
// return new AwsRegistryConfigurator(this._codiacApi, this._ui, this.logger);
|
|
51
|
+
// case CloudProviderEnum.azure:
|
|
52
|
+
// return new AzureRegistryConfigurator(this._codiacApi, this._ui, this.logger);
|
|
53
|
+
// case CloudProviderEnum.other: // <----- CAREFUL!!! WE shouldnt allow anyone to land here!
|
|
54
|
+
// // let regTypes = this.clientFactory.getAllTypes();
|
|
55
|
+
// // regType = (await this._ui.promptSelect("regType", "Registry type:", regTypes.map(t => { return { name: t, value: t }; })))!;
|
|
56
|
+
// return new HelmRegistryConfigurator(this._codiacApi, this._ui, this.logger);
|
|
57
|
+
// case CloudProviderEnum.dockerHub:
|
|
58
|
+
// default:
|
|
59
|
+
// return new DockerHubRegistryConfigurator(this._codiacApi, this._ui, this.logger);
|
|
60
|
+
// }
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
RegistryConfiguratorFactory = tslib_1.__decorate([
|
|
64
|
+
(0, inversify_1.injectable)(),
|
|
65
|
+
tslib_1.__metadata("design:paramtypes", [])
|
|
66
|
+
], RegistryConfiguratorFactory);
|
|
67
|
+
exports.RegistryConfiguratorFactory = RegistryConfiguratorFactory;
|
|
68
|
+
//# sourceMappingURL=registry-configurator-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry-configurator-factory.js","sourceRoot":"","sources":["../../src/uilogic/registry-configurator-factory.ts"],"names":[],"mappings":";;;;AAEA,4DAAuH;AAEvH,yCAA2D;AAE3D,kGAA6F;AAC7F,sGAAiG;AACjG,gHAA0G;AAC1G,oGAA+F;AAG/F,MAAa,yBAAyB;;AAAtC,8DAEC;AADwB,+CAAqB,GAAW,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AAK7F,IAAa,2BAA2B,GAAxC,MAAa,2BAA2B;IAGtC,kBAAkB;IACX,MAAM,CAAC,SAAS,CAAC,GAAyB;QAE/C,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,iCAAiB,CAAC,GAAG,CAAC,EAAE;YAC7F,GAAG,CAAC,IAAI,CAAwB,yBAAyB,CAAC,qBAAqB,CAAC;iBAC7E,EAAE,CAAC,mDAAuB,CAAC;iBAC3B,eAAe,CAAC,iCAAiB,CAAC,GAAG,CAAC,CAAC;SAC3C;QAGD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,iCAAiB,CAAC,KAAK,CAAC,EAAE;YAC/F,GAAG,CAAC,IAAI,CAAwB,yBAAyB,CAAC,qBAAqB,CAAC;iBAC7E,EAAE,CAAC,uDAAyB,CAAC;iBAC7B,eAAe,CAAC,iCAAiB,CAAC,KAAK,CAAC,CAAC;SAC7C;QAED,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,iCAAiB,CAAC,SAAS,CAAC,EAAE;YACnG,GAAG,CAAC,IAAI,CAAwB,yBAAyB,CAAC,qBAAqB,CAAC;iBAC7E,EAAE,CAAC,gEAA6B,CAAC;iBACjC,eAAe,CAAC,iCAAiB,CAAC,SAAS,CAAC,CAAC;SACjD;QAED,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,yBAAyB,CAAC,qBAAqB,EAAE,iCAAiB,CAAC,KAAK,CAAC,EAAE;YAC/F,GAAG,CAAC,IAAI,CAAwB,yBAAyB,CAAC,qBAAqB,CAAC;iBAC7E,EAAE,CAAC,qDAAwB,CAAC;iBAC5B,eAAe,CAAC,iCAAiB,CAAC,KAAK,CAAC,CAAC;SAC7C;IACH,CAAC;IAED;IACE,0DAA0D;IAC1D,8EAA8E;IAC9E,kEAAkE;;IAEpE,CAAC;IAGM,MAAM,CAAC,QAA2B,EAAE,GAAyB;QAElE,OAAO,GAAG,CAAC,QAAQ,CAAwB,yBAAyB,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;QAEtG,+JAA+J;QAE/J,sBAAsB;QACtB,gCAAgC;QAChC,kFAAkF;QAClF,kCAAkC;QAClC,oFAAoF;QACpF,gGAAgG;QAChG,0DAA0D;QAC1D,sIAAsI;QACtI,mFAAmF;QACnF,sCAAsC;QACtC,aAAa;QACb,wFAAwF;QACxF,IAAI;IAGN,CAAC;CACF,CAAA;AA9DY,2BAA2B;IADvC,IAAA,sBAAU,GAAE;;GACA,2BAA2B,CA8DvC;AA9DY,kEAA2B"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { CodiacClient } from "@codiac.io/codiac-api-client";
|
|
2
|
+
import { IBetterLogger } from "@codiac.io/codiac-common";
|
|
3
|
+
import { ImageRegistry } from "@codiac.io/codiac-domain";
|
|
4
|
+
import { ImageRegistryClientsFactory, IUserInputProvider } from "@codiac.io/codiac-ops-common";
|
|
5
|
+
/** Walks the user through the selection of an existing
|
|
6
|
+
* or the declaration of a new image registry.
|
|
7
|
+
*/
|
|
8
|
+
export declare class RegistryConfigurator {
|
|
9
|
+
private clientFactory;
|
|
10
|
+
private _codiacApi;
|
|
11
|
+
private _ui;
|
|
12
|
+
private logger;
|
|
13
|
+
constructor(clientFactory: ImageRegistryClientsFactory, _codiacApi: CodiacClient, _ui: IUserInputProvider, logger: IBetterLogger);
|
|
14
|
+
/** Allows the user to OPTIONALLY select a registry that is already defined for this tenant. */
|
|
15
|
+
selectExisting(): Promise<ImageRegistry | undefined>;
|
|
16
|
+
capture(): Promise<ImageRegistry>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RegistryConfigurator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const codiac_api_client_1 = require("@codiac.io/codiac-api-client");
|
|
6
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
7
|
+
const codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
8
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
9
|
+
const inversify_1 = require("inversify");
|
|
10
|
+
const codiac_constants_1 = require("../codiac-constants");
|
|
11
|
+
/** Walks the user through the selection of an existing
|
|
12
|
+
* or the declaration of a new image registry.
|
|
13
|
+
*/
|
|
14
|
+
let RegistryConfigurator = class RegistryConfigurator {
|
|
15
|
+
constructor(clientFactory, _codiacApi, _ui, logger) {
|
|
16
|
+
this.clientFactory = clientFactory;
|
|
17
|
+
this._codiacApi = _codiacApi;
|
|
18
|
+
this._ui = _ui;
|
|
19
|
+
this.logger = logger;
|
|
20
|
+
}
|
|
21
|
+
/** Allows the user to OPTIONALLY select a registry that is already defined for this tenant. */
|
|
22
|
+
selectExisting() {
|
|
23
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
var _a, _b;
|
|
26
|
+
try {
|
|
27
|
+
let registry;
|
|
28
|
+
0;
|
|
29
|
+
let selected = codiac_constants_1.CliConstants.PROMPT_ME_DESIGNATOR;
|
|
30
|
+
let crit = { all: true };
|
|
31
|
+
let resultExisting = yield this._codiacApi.tryReadMany(codiac_domain_1.ImageRegistry, codiac_domain_1.ImageRegistryCriteria, crit);
|
|
32
|
+
if (resultExisting.success && resultExisting.output && ((_a = resultExisting.output) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
33
|
+
let choices = resultExisting.output.map(r => { return { name: `${r.provider} ${r.code} (${r.url})`, value: r.code }; });
|
|
34
|
+
choices.push({ name: "** other **", value: codiac_constants_1.CliConstants.PROMPT_ME_DESIGNATOR });
|
|
35
|
+
selected = (_b = yield this._ui.promptSelect("registry", "Registry that contains your image:", choices)) !== null && _b !== void 0 ? _b : codiac_constants_1.CliConstants.PROMPT_ME_DESIGNATOR;
|
|
36
|
+
if (selected !== codiac_constants_1.CliConstants.PROMPT_ME_DESIGNATOR) {
|
|
37
|
+
registry = resultExisting.output.find(r => r.code === selected);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
resolve(registry);
|
|
41
|
+
}
|
|
42
|
+
catch (err) {
|
|
43
|
+
reject(err);
|
|
44
|
+
}
|
|
45
|
+
}));
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
capture() {
|
|
49
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
try {
|
|
52
|
+
let registry;
|
|
53
|
+
// DECLARE NEW FROM BUILT-INS
|
|
54
|
+
let allPvds = this.clientFactory.getAllProviders();
|
|
55
|
+
let regPvd = (yield this._ui.promptSelect("regPvd", "Cloud Provider:", allPvds.map(t => { return { name: t, value: t }; })));
|
|
56
|
+
// FOR NOW, WE'RE GOING TO SUPPORT ONLY 1 REG TYPE PER CLOUD PROVIDER.
|
|
57
|
+
let regType;
|
|
58
|
+
switch (regPvd) {
|
|
59
|
+
case codiac_domain_1.CloudProviderEnum.aws:
|
|
60
|
+
regType = codiac_domain_1.ImageRegistryTypes.AmazonEcr;
|
|
61
|
+
break;
|
|
62
|
+
case codiac_domain_1.CloudProviderEnum.azure:
|
|
63
|
+
regType = codiac_domain_1.ImageRegistryTypes.AzureCr;
|
|
64
|
+
break;
|
|
65
|
+
case codiac_domain_1.CloudProviderEnum.other: // <----- CAREFUL!!! WE shouldnt allow anyone to land here!
|
|
66
|
+
// let regTypes = this.clientFactory.getAllTypes();
|
|
67
|
+
// regType = (await this._ui.promptSelect("regType", "Registry type:", regTypes.map(t => { return { name: t, value: t }; })))!;
|
|
68
|
+
regType = codiac_domain_1.ImageRegistryTypes.helm;
|
|
69
|
+
break;
|
|
70
|
+
case codiac_domain_1.CloudProviderEnum.dockerHub:
|
|
71
|
+
default:
|
|
72
|
+
regType = codiac_domain_1.ImageRegistryTypes.DockerHub;
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
// DECLARE NEW FROM MANUAL URL ENTRY
|
|
76
|
+
// if (img.registryType == 'other') {
|
|
77
|
+
// // Unknown registry client type; Just prompt for unvalidated strings on registry and image
|
|
78
|
+
// // Enter registry Url
|
|
79
|
+
// while (!img.registryUrl || img.registryUrl == "") {
|
|
80
|
+
// let regResult = await inquirer.prompt({ type: 'input', name: 'registry', message: 'image registry: ', default: img.registryUrl || DEFAULT_REGISTRY_URL });
|
|
81
|
+
// img.registryUrl = regResult.registry;
|
|
82
|
+
// }
|
|
83
|
+
// // Enter scoped image name
|
|
84
|
+
// img.name = await this._ui.prompt('fullName', 'image name (including scope prefix): ', true, img.name || defaults.name);
|
|
85
|
+
// let split = imageFullName.split("/");
|
|
86
|
+
// if (split.length > 1) {
|
|
87
|
+
// img.scope = split.shift();
|
|
88
|
+
// img.name = split.join("/");
|
|
89
|
+
// }
|
|
90
|
+
// } else {
|
|
91
|
+
// invoke any nuance for each registry type
|
|
92
|
+
registry = new codiac_domain_1.ImageRegistry(regType.toString(), "url-not-yet-defined", regPvd, regType);
|
|
93
|
+
switch (regType) {
|
|
94
|
+
case codiac_domain_1.ImageRegistryTypes.AmazonEcr:
|
|
95
|
+
// get region
|
|
96
|
+
// registry.isPublic = await this._ui.promptConfirm("regAwsIsPublic", "Public access:", false);
|
|
97
|
+
// registry.scope = await this._ui.prompt('scope', 'enter the region of the ECR: ', true, registry.scope || defaults.scope);
|
|
98
|
+
break;
|
|
99
|
+
case codiac_domain_1.ImageRegistryTypes.AzureCr:
|
|
100
|
+
// get authenticator
|
|
101
|
+
// authenticator.Login as needed
|
|
102
|
+
// which subscription id? The tenant should def have a default, but could have many... (from what? clusters? )
|
|
103
|
+
// Need an explicit list of providers and account creds -
|
|
104
|
+
// Tenant may have a subscription, but user may not have it. (have to use tenant's list of subx's filtered by user's account list)
|
|
105
|
+
//
|
|
106
|
+
// get list of container registries
|
|
107
|
+
// az acr list --query [].name --subscription 37dbb924-5ee5-470b-b2a3-187e9dea7008
|
|
108
|
+
// select container registry (login, select subscription), then from that get the scope/registryUrl
|
|
109
|
+
// let mySubscriptions: PromptChoice[] = []; // TODO: Get these from 'az account list'
|
|
110
|
+
// registry.subscription = await this._ui.promptSelect("regAzSubx", "Azure Subscription", mySubscriptions);
|
|
111
|
+
let acrName = yield this._ui.prompt('scope', 'Name of the ACR: ', true);
|
|
112
|
+
// regCode = registry.scope;
|
|
113
|
+
registry.url = `${acrName}.azurecr.io`; // <--- HACK!!!!! Replace this with an ACR selector!!!
|
|
114
|
+
break;
|
|
115
|
+
case codiac_domain_1.ImageRegistryTypes.DockerHub:
|
|
116
|
+
let dockerIsPrivate = true;
|
|
117
|
+
dockerIsPrivate = yield this._ui.promptConfirm("regDockerIsPublic", "For private images?:", dockerIsPrivate);
|
|
118
|
+
registry.isPublic = !dockerIsPrivate; // This is NOT a registry-scoped attribute - it's an IMAGE-scoped attribute.
|
|
119
|
+
break;
|
|
120
|
+
default:
|
|
121
|
+
// just enter the fully qualified registry url
|
|
122
|
+
// and the fully scoped image name
|
|
123
|
+
break;
|
|
124
|
+
}
|
|
125
|
+
throw new Error("Not imeplemented yet.");
|
|
126
|
+
resolve(registry);
|
|
127
|
+
}
|
|
128
|
+
catch (err) {
|
|
129
|
+
reject(err);
|
|
130
|
+
}
|
|
131
|
+
}));
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
};
|
|
135
|
+
RegistryConfigurator = tslib_1.__decorate([
|
|
136
|
+
(0, inversify_1.injectable)(),
|
|
137
|
+
tslib_1.__param(0, (0, inversify_1.inject)(codiac_ops_common_1.ImageRegistryClientsFactory)),
|
|
138
|
+
tslib_1.__param(1, (0, inversify_1.inject)(codiac_api_client_1.CodiacClient)),
|
|
139
|
+
tslib_1.__param(2, (0, inversify_1.inject)(codiac_ops_common_1.INTERFACES_OPS.IUserInputProvider)),
|
|
140
|
+
tslib_1.__param(3, (0, inversify_1.inject)(codiac_common_1.INTERFACES.IBetterLogger)),
|
|
141
|
+
tslib_1.__metadata("design:paramtypes", [codiac_ops_common_1.ImageRegistryClientsFactory,
|
|
142
|
+
codiac_api_client_1.CodiacClient, Object, Object])
|
|
143
|
+
], RegistryConfigurator);
|
|
144
|
+
exports.RegistryConfigurator = RegistryConfigurator;
|
|
145
|
+
//# sourceMappingURL=registry-configurator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry-configurator.js","sourceRoot":"","sources":["../../src/uilogic/registry-configurator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IBetterLogger } from "@codiac.io/codiac-common";
|
|
2
|
+
import { CloudProviderEnum, ImageRegistry } from "@codiac.io/codiac-domain";
|
|
3
|
+
import { IAuthProvider, IUserInputProvider } from "@codiac.io/codiac-ops-common";
|
|
4
|
+
import { IRegistryConfigurator } from "../i-registry-configurator";
|
|
5
|
+
/** Walks the user through the selection of an existing
|
|
6
|
+
* or the declaration of a new image registry.
|
|
7
|
+
*/
|
|
8
|
+
export declare class AwsRegistryConfigurator implements IRegistryConfigurator {
|
|
9
|
+
private auth;
|
|
10
|
+
private _ui;
|
|
11
|
+
private logger;
|
|
12
|
+
constructor(auth: IAuthProvider, _ui: IUserInputProvider, logger: IBetterLogger);
|
|
13
|
+
readonly cloudProvider = CloudProviderEnum["aws"];
|
|
14
|
+
capture(): Promise<ImageRegistry>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AwsRegistryConfigurator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
6
|
+
const codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
7
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
8
|
+
const inversify_1 = require("inversify");
|
|
9
|
+
/** Walks the user through the selection of an existing
|
|
10
|
+
* or the declaration of a new image registry.
|
|
11
|
+
*/
|
|
12
|
+
let AwsRegistryConfigurator = class AwsRegistryConfigurator {
|
|
13
|
+
constructor(auth, _ui, logger) {
|
|
14
|
+
this.auth = auth;
|
|
15
|
+
this._ui = _ui;
|
|
16
|
+
this.logger = logger;
|
|
17
|
+
this.cloudProvider = codiac_domain_1.CloudProviderEnum.aws;
|
|
18
|
+
}
|
|
19
|
+
capture() {
|
|
20
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
try {
|
|
23
|
+
let awsUser = yield this.auth.currentUserName();
|
|
24
|
+
if (!awsUser)
|
|
25
|
+
throw new Error(`Cannot capture an aws container registry: No ${this.cloudProvider} account has been authenticated.`);
|
|
26
|
+
// Get region, default to the one these tokens are for calling out
|
|
27
|
+
// let region = await this._ui.prompt('scope', 'enter the region of the ECR: ', true, registry.scope || defaults.scope);
|
|
28
|
+
let isPrivate = yield this._ui.promptConfirm("regAwsIsPrivate", "Private container registry? (hit 'n' for public) ", true);
|
|
29
|
+
// TODO: Capture the registry url
|
|
30
|
+
let regUrl;
|
|
31
|
+
if (isPrivate) {
|
|
32
|
+
// PRIVATE REGION-BASED CONTAINER REGISTRY
|
|
33
|
+
// url: `${AWS_ACCOUNT_ID}.dkr.ecr.${REGION}.amazonaws.com`
|
|
34
|
+
// eg: `570376874173.dkr.ecr.us-east-1.amazonaws.com`
|
|
35
|
+
regUrl = (yield this._ui.prompt("regUrl", "Enter the private registry base url"));
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
// REGISTRY IN AWS PUBLIC CONTAINER GALLERY
|
|
39
|
+
// NOT region-based.
|
|
40
|
+
// NOTE: Your Alias doesnt get created until the first repository is created.
|
|
41
|
+
// url: `public.ecr.aws/${PUBLIC_REGISTRY_ALIAS}/`
|
|
42
|
+
// eg: `public.ecr.aws/e7d8o5e6/`
|
|
43
|
+
// NOTE: You may use custom or default alias in the url; both are valid.
|
|
44
|
+
regUrl = (yield this._ui.prompt("regUrl", "Enter the public registry base url")); // eg: public.ecr.aws/e7d8o5e6
|
|
45
|
+
}
|
|
46
|
+
// TODO: new AwsContainerRegistry(`ecr-${isPrivate ? "private" : "public"}`, regUrl, this.cloudProvider, ImageRegistryTypes.AmazonEcr, region, isPrivate);
|
|
47
|
+
let registry = new codiac_domain_1.ImageRegistry(`aws-ecr-${isPrivate ? "private" : "public"}`, regUrl, this.cloudProvider, codiac_domain_1.ImageRegistryTypes.AmazonEcr);
|
|
48
|
+
resolve(registry);
|
|
49
|
+
}
|
|
50
|
+
catch (err) {
|
|
51
|
+
// this.logger.error(`${err.name ?? ''} ${err.message ?? ''}`, err.stack);
|
|
52
|
+
reject(err);
|
|
53
|
+
}
|
|
54
|
+
}));
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
AwsRegistryConfigurator = tslib_1.__decorate([
|
|
59
|
+
(0, inversify_1.injectable)(),
|
|
60
|
+
tslib_1.__param(0, (0, inversify_1.inject)(codiac_ops_common_1.INTERFACES_OPS.IAuthProvider)),
|
|
61
|
+
tslib_1.__param(0, (0, inversify_1.named)(codiac_domain_1.CloudProviderEnum.aws)),
|
|
62
|
+
tslib_1.__param(1, (0, inversify_1.inject)(codiac_ops_common_1.INTERFACES_OPS.IUserInputProvider)),
|
|
63
|
+
tslib_1.__param(2, (0, inversify_1.inject)(codiac_common_1.INTERFACES.IBetterLogger)),
|
|
64
|
+
tslib_1.__metadata("design:paramtypes", [Object, Object, Object])
|
|
65
|
+
], AwsRegistryConfigurator);
|
|
66
|
+
exports.AwsRegistryConfigurator = AwsRegistryConfigurator;
|
|
67
|
+
//# sourceMappingURL=aws-registry-configurator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aws-registry-configurator.js","sourceRoot":"","sources":["../../../src/uilogic/registry-configurators/aws-registry-configurator.ts"],"names":[],"mappings":";;;;AACA,4DAAqE;AACrE,4DAAgG;AAChG,oEAA8H;AAC9H,yCAAkE;AAGlE;;GAEG;AAEH,IAAa,uBAAuB,GAApC,MAAa,uBAAuB;IAGlC,YAC8E,IAAmB,EAC5C,GAAuB,EAChC,MAAqB;QAFa,SAAI,GAAJ,IAAI,CAAe;QAC5C,QAAG,GAAH,GAAG,CAAoB;QAChC,WAAM,GAAN,MAAM,CAAe;QAGjD,kBAAa,GAAG,iCAAiB,CAAC,GAAG,CAAC;IAFtD,CAAC;IAIY,OAAO;;YAClB,OAAO,IAAI,OAAO,CAAgB,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1D,IAAI;oBAEF,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;oBAChD,IAAI,CAAC,OAAO;wBAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,IAAI,CAAC,aAAa,kCAAkC,CAAC,CAAC;oBAEpI,kEAAkE;oBAClE,wHAAwH;oBAExH,IAAI,SAAS,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,iBAAiB,EAAE,mDAAmD,EAAE,IAAI,CAAC,CAAC;oBAE3H,kCAAkC;oBAClC,IAAI,MAAc,CAAC;oBACnB,IAAI,SAAS,EAAE;wBACb,0CAA0C;wBAC1C,2DAA2D;wBAC3D,sDAAsD;wBACtD,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,qCAAqC,CAAC,CAAE,CAAC;qBACpF;yBAAM;wBACL,2CAA2C;wBAC3C,oBAAoB;wBACpB,6EAA6E;wBAC7E,kDAAkD;wBAClD,kCAAkC;wBAClC,wEAAwE;wBACxE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,oCAAoC,CAAC,CAAE,CAAC,CAAG,wCAAwC;qBAC9H;oBAED,2JAA2J;oBAC3J,IAAI,QAAQ,GAAG,IAAI,6BAAa,CAAC,WAAW,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,kCAAkB,CAAC,SAAS,CAAC,CAAC;oBAE1I,OAAO,CAAC,QAAQ,CAAC,CAAC;iBACnB;gBAAC,OAAO,GAAG,EAAE;oBACZ,0EAA0E;oBAC1E,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YACH,CAAC,CAAA,CAAC,CAAC;QAEL,CAAC;KAAA;CAEF,CAAA;AApDY,uBAAuB;IADnC,IAAA,sBAAU,GAAE;IAKR,mBAAA,IAAA,kBAAM,EAAC,kCAAc,CAAC,aAAa,CAAC,CAAA;IAAE,mBAAA,IAAA,iBAAK,EAAC,iCAAiB,CAAC,GAAG,CAAC,CAAA;IAClE,mBAAA,IAAA,kBAAM,EAAC,kCAAc,CAAC,kBAAkB,CAAC,CAAA;IACzC,mBAAA,IAAA,kBAAM,EAAC,0BAAU,CAAC,aAAa,CAAC,CAAA;;GANxB,uBAAuB,CAoDnC;AApDY,0DAAuB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { IBetterLogger } from "@codiac.io/codiac-common";
|
|
2
|
+
import { CloudProviderEnum, ImageRegistry } from "@codiac.io/codiac-domain";
|
|
3
|
+
import { IAuthProvider, IUserInputProvider } from "@codiac.io/codiac-ops-common";
|
|
4
|
+
import { IRegistryConfigurator } from "../i-registry-configurator";
|
|
5
|
+
export declare type AzureAcr = {
|
|
6
|
+
name: string;
|
|
7
|
+
resourceGroup: string;
|
|
8
|
+
id: string;
|
|
9
|
+
location: string;
|
|
10
|
+
loginServer: string;
|
|
11
|
+
};
|
|
12
|
+
/** Walks the user through the selection of an existing
|
|
13
|
+
* or the declaration of a new image registry.
|
|
14
|
+
*/
|
|
15
|
+
export declare class AzureRegistryConfigurator implements IRegistryConfigurator {
|
|
16
|
+
private auth;
|
|
17
|
+
private _ui;
|
|
18
|
+
private logger;
|
|
19
|
+
constructor(auth: IAuthProvider, _ui: IUserInputProvider, logger: IBetterLogger);
|
|
20
|
+
private cliExec;
|
|
21
|
+
readonly cloudProvider = CloudProviderEnum["azure"];
|
|
22
|
+
/** Currently supporting only a single reg type per cloud provider. */
|
|
23
|
+
private regType;
|
|
24
|
+
capture(): Promise<ImageRegistry>;
|
|
25
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AzureRegistryConfigurator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const inversify_1 = require("inversify");
|
|
6
|
+
const cli_tools_1 = require("@codiac.io/cli-tools");
|
|
7
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
8
|
+
const IBetterLogger_1 = require("@codiac.io/codiac-common/IBetterLogger");
|
|
9
|
+
const codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
10
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
11
|
+
/** Walks the user through the selection of an existing
|
|
12
|
+
* or the declaration of a new image registry.
|
|
13
|
+
*/
|
|
14
|
+
let AzureRegistryConfigurator = class AzureRegistryConfigurator {
|
|
15
|
+
constructor(auth, _ui, logger) {
|
|
16
|
+
this.auth = auth;
|
|
17
|
+
this._ui = _ui;
|
|
18
|
+
this.logger = logger;
|
|
19
|
+
this.cloudProvider = codiac_domain_1.CloudProviderEnum.azure;
|
|
20
|
+
/** Currently supporting only a single reg type per cloud provider. */
|
|
21
|
+
this.regType = codiac_domain_1.ImageRegistryTypes.AzureCr;
|
|
22
|
+
this.cliExec = new cli_tools_1.CliExec(this.logger);
|
|
23
|
+
}
|
|
24
|
+
capture() {
|
|
25
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
try {
|
|
28
|
+
let registry;
|
|
29
|
+
// get authenticator
|
|
30
|
+
// authenticator.Login as needed
|
|
31
|
+
let azUser = yield this.auth.currentUserName();
|
|
32
|
+
if (!azUser)
|
|
33
|
+
throw new Error(`Cannot capture an azure container registry: No ${this.cloudProvider} account has been authenticated.`);
|
|
34
|
+
// Select subscription from the ones the user has access to
|
|
35
|
+
let cmdSubs = `az account list -o json`;
|
|
36
|
+
let subs = yield this.cliExec.execAsyncJson(cmdSubs, { cwd: process.cwd() }, IBetterLogger_1.LogLevel.debug);
|
|
37
|
+
let subxChoices = subs.filter(s => s.user.name === azUser)
|
|
38
|
+
.map(s => { return { name: `${s.name} (...${s.id.substring(s.id.length - 4)})`, value: s.id }; });
|
|
39
|
+
let subxId = (yield this._ui.promptSelect("subx", "Azure Subscription: ", subxChoices));
|
|
40
|
+
// Select a container registry
|
|
41
|
+
// let cmdRegs = `az acr list --query [].name --subscription ${subxId} -o json`;
|
|
42
|
+
let cmdRegs = `az acr list --subscription ${subxId} -o json --query "[].{ id: id, name: name, resourceGroup: resourceGroup, location: location, loginServer: loginServer }"`;
|
|
43
|
+
let regs = yield this.cliExec.execAsyncJson(cmdRegs, { cwd: process.cwd() }, IBetterLogger_1.LogLevel.debug);
|
|
44
|
+
let regChoices = regs.map(r => { return { name: `${r.name} (resource group: ${r.resourceGroup})`, value: r.id }; });
|
|
45
|
+
let regId = (yield this._ui.promptSelect("reg", "Container Registry: ", regChoices));
|
|
46
|
+
let reg = (regs.find(r => r.id === regId)); // The "!" operator is ok - We just selected from the list.
|
|
47
|
+
// az acr list --query [].name --subscription 37dbb924-5ee5-470b-b2a3-187e9dea7008
|
|
48
|
+
// select container registry (login, select subscription), then from that get the scope/registryUrl
|
|
49
|
+
// let acrName = await this._ui.prompt<string>('scope', 'Name of the ACR: ', true, /* registry.scope || defaults.scope */);
|
|
50
|
+
// // regCode = registry.scope;
|
|
51
|
+
// let serverUrl = `${acrName}.azurecr.io`; // <--- HACK!!!!! Replace this with an ACR selector!!!
|
|
52
|
+
// TODO: Consider: new AzureContainerRegistry(reg.name, reg.loginServer, this.cloudProvider, this.regType, reg.subscription, reg.location, reg.id, reg.tenantId);
|
|
53
|
+
registry = new codiac_domain_1.ImageRegistry(reg.name, reg.loginServer, this.cloudProvider, this.regType);
|
|
54
|
+
resolve(registry);
|
|
55
|
+
}
|
|
56
|
+
catch (err) {
|
|
57
|
+
reject(err);
|
|
58
|
+
}
|
|
59
|
+
}));
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
AzureRegistryConfigurator = tslib_1.__decorate([
|
|
64
|
+
(0, inversify_1.injectable)(),
|
|
65
|
+
tslib_1.__param(0, (0, inversify_1.inject)(codiac_ops_common_1.INTERFACES_OPS.IAuthProvider)),
|
|
66
|
+
tslib_1.__param(0, (0, inversify_1.named)(codiac_domain_1.CloudProviderEnum.azure)),
|
|
67
|
+
tslib_1.__param(1, (0, inversify_1.inject)(codiac_ops_common_1.INTERFACES_OPS.IUserInputProvider)),
|
|
68
|
+
tslib_1.__param(2, (0, inversify_1.inject)(codiac_common_1.INTERFACES.IBetterLogger)),
|
|
69
|
+
tslib_1.__metadata("design:paramtypes", [Object, Object, Object])
|
|
70
|
+
], AzureRegistryConfigurator);
|
|
71
|
+
exports.AzureRegistryConfigurator = AzureRegistryConfigurator;
|
|
72
|
+
//# sourceMappingURL=azure-registry-configurator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"azure-registry-configurator.js","sourceRoot":"","sources":["../../../src/uilogic/registry-configurators/azure-registry-configurator.ts"],"names":[],"mappings":";;;;AAAA,yCAAsD;AAGtD,oDAA+C;AAE/C,4DAAqE;AACrE,0EAAkE;AAClE,4DAAuH;AACvH,oEAA+I;AAS/I;;GAEG;AAEH,IAAa,yBAAyB,GAAtC,MAAa,yBAAyB;IAGpC,YACgF,IAAmB,EAC9C,GAAuB,EAChC,MAAqB;QAFe,SAAI,GAAJ,IAAI,CAAe;QAC9C,QAAG,GAAH,GAAG,CAAoB;QAChC,WAAM,GAAN,MAAM,CAAe;QAOjD,kBAAa,GAAG,iCAAiB,CAAC,KAAK,CAAC;QAExD,sEAAsE;QAC9D,YAAO,GAAG,kCAAkB,CAAC,OAAO,CAAC;QAR3C,IAAI,CAAC,OAAO,GAAG,IAAI,mBAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IASY,OAAO;;YAClB,OAAO,IAAI,OAAO,CAAgB,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1D,IAAI;oBACF,IAAI,QAAuB,CAAC;oBAE5B,oBAAoB;oBACpB,gCAAgC;oBAEhC,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;oBAC/C,IAAI,CAAC,MAAM;wBAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,IAAI,CAAC,aAAa,kCAAkC,CAAC,CAAC;oBAErI,2DAA2D;oBAC3D,IAAI,OAAO,GAAG,yBAAyB,CAAC;oBACxC,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAoB,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,wBAAQ,CAAC,KAAK,CAAC,CAAC;oBAChH,IAAI,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;yBACvD,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;oBAClG,IAAI,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,sBAAsB,EAAE,WAAW,CAAC,CAAC,CAAC;oBAExF,8BAA8B;oBAC9B,gFAAgF;oBAChF,IAAI,OAAO,GAAG,8BAA8B,MAAM,0HAA0H,CAAC;oBAC7K,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAa,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,wBAAQ,CAAC,KAAK,CAAC,CAAC;oBACzG,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,aAAa,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAA,CAAC,CAAC,CAAC,CAAA;oBAClH,IAAI,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,sBAAsB,EAAE,UAAU,CAAC,CAAE,CAAC;oBACtF,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAE,CAAC,CAAE,2DAA2D;oBAGzG,kFAAkF;oBAElF,mGAAmG;oBACnG,2HAA2H;oBAC3H,+BAA+B;oBAC/B,qGAAqG;oBAGrG,oKAAoK;oBACpK,QAAQ,GAAG,IAAI,6BAAa,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBAE1F,OAAO,CAAC,QAAQ,CAAC,CAAC;iBACnB;gBAAC,OAAO,GAAG,EAAE;oBACZ,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YACH,CAAC,CAAA,CAAC,CAAC;QACL,CAAC;KAAA;CAGF,CAAA;AAhEY,yBAAyB;IADrC,IAAA,sBAAU,GAAE;IAKR,mBAAA,IAAA,kBAAM,EAAC,kCAAc,CAAC,aAAa,CAAC,CAAA;IAAE,mBAAA,IAAA,iBAAK,EAAC,iCAAiB,CAAC,KAAK,CAAC,CAAA;IACpE,mBAAA,IAAA,kBAAM,EAAC,kCAAc,CAAC,kBAAkB,CAAC,CAAA;IACzC,mBAAA,IAAA,kBAAM,EAAC,0BAAU,CAAC,aAAa,CAAC,CAAA;;GANxB,yBAAyB,CAgErC;AAhEY,8DAAyB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { CodiacClient } from "@codiac.io/codiac-api-client";
|
|
2
|
+
import { IBetterLogger } from "@codiac.io/codiac-common";
|
|
3
|
+
import { CloudProviderEnum, ImageRegistry } from "@codiac.io/codiac-domain";
|
|
4
|
+
import { IUserInputProvider } from "@codiac.io/codiac-ops-common";
|
|
5
|
+
import { IRegistryConfigurator } from "../i-registry-configurator";
|
|
6
|
+
/** Walks the user through the selection of an existing
|
|
7
|
+
* or the declaration of a new image registry.
|
|
8
|
+
*/
|
|
9
|
+
export declare class DockerHubRegistryConfigurator implements IRegistryConfigurator {
|
|
10
|
+
private _codiacApi;
|
|
11
|
+
private _ui;
|
|
12
|
+
private logger;
|
|
13
|
+
constructor(_codiacApi: CodiacClient, _ui: IUserInputProvider, logger: IBetterLogger);
|
|
14
|
+
readonly cloudProvider = CloudProviderEnum["dockerHub"];
|
|
15
|
+
/** Currently supporting only a single reg type per cloud provider. */
|
|
16
|
+
private regType;
|
|
17
|
+
capture(): Promise<ImageRegistry>;
|
|
18
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DockerHubRegistryConfigurator = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const codiac_api_client_1 = require("@codiac.io/codiac-api-client");
|
|
6
|
+
const codiac_common_1 = require("@codiac.io/codiac-common");
|
|
7
|
+
const codiac_domain_1 = require("@codiac.io/codiac-domain");
|
|
8
|
+
const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
|
|
9
|
+
const inversify_1 = require("inversify");
|
|
10
|
+
/** Walks the user through the selection of an existing
|
|
11
|
+
* or the declaration of a new image registry.
|
|
12
|
+
*/
|
|
13
|
+
let DockerHubRegistryConfigurator = class DockerHubRegistryConfigurator {
|
|
14
|
+
constructor(_codiacApi, _ui, logger) {
|
|
15
|
+
this._codiacApi = _codiacApi;
|
|
16
|
+
this._ui = _ui;
|
|
17
|
+
this.logger = logger;
|
|
18
|
+
this.cloudProvider = codiac_domain_1.CloudProviderEnum.dockerHub;
|
|
19
|
+
/** Currently supporting only a single reg type per cloud provider. */
|
|
20
|
+
this.regType = codiac_domain_1.ImageRegistryTypes.DockerHub;
|
|
21
|
+
}
|
|
22
|
+
capture() {
|
|
23
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
let registry;
|
|
26
|
+
try {
|
|
27
|
+
let scope = "library";
|
|
28
|
+
// let isOfficial = await this._ui.promptConfirm("regDockerIsOfficial", "For official images?:", true);
|
|
29
|
+
// if (!isOfficial) {
|
|
30
|
+
// let dockerIsPrivate = await this._ui.promptConfirm("regDockerIsPublic", "For private images?:", true);
|
|
31
|
+
// if (dockerIsPrivate) {
|
|
32
|
+
// scope = (await this._ui.prompt("scope", `Enter the image scope (aka: the prefix):`, true))!;
|
|
33
|
+
// }
|
|
34
|
+
// let isPublic = !dockerIsPrivate; // This is NOT a registry-scoped attribute - it's an IMAGE-scoped attribute.
|
|
35
|
+
// }
|
|
36
|
+
registry = new codiac_domain_1.ImageRegistry(scope, "n/a", this.cloudProvider, this.regType);
|
|
37
|
+
resolve(registry);
|
|
38
|
+
}
|
|
39
|
+
catch (err) {
|
|
40
|
+
// this.logger.error(`${err.name ?? ''} ${err.message ?? ''}`, err.stack);
|
|
41
|
+
reject(err);
|
|
42
|
+
}
|
|
43
|
+
}));
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
DockerHubRegistryConfigurator = tslib_1.__decorate([
|
|
48
|
+
(0, inversify_1.injectable)(),
|
|
49
|
+
tslib_1.__param(0, (0, inversify_1.inject)(codiac_api_client_1.CodiacClient)),
|
|
50
|
+
tslib_1.__param(1, (0, inversify_1.inject)(codiac_ops_common_1.INTERFACES_OPS.IUserInputProvider)),
|
|
51
|
+
tslib_1.__param(2, (0, inversify_1.inject)(codiac_common_1.INTERFACES.IBetterLogger)),
|
|
52
|
+
tslib_1.__metadata("design:paramtypes", [codiac_api_client_1.CodiacClient, Object, Object])
|
|
53
|
+
], DockerHubRegistryConfigurator);
|
|
54
|
+
exports.DockerHubRegistryConfigurator = DockerHubRegistryConfigurator;
|
|
55
|
+
//# sourceMappingURL=docker-hub-registry-configurator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker-hub-registry-configurator.js","sourceRoot":"","sources":["../../../src/uilogic/registry-configurators/docker-hub-registry-configurator.ts"],"names":[],"mappings":";;;;AAAA,oEAA4D;AAC5D,4DAAqE;AACrE,4DAAgG;AAChG,oEAA+G;AAC/G,yCAA+C;AAG/C;;GAEG;AAEH,IAAa,6BAA6B,GAA1C,MAAa,6BAA6B;IAGxC,YACgC,UAAwB,EACH,GAAuB,EAChC,MAAqB;QAFjC,eAAU,GAAV,UAAU,CAAc;QACH,QAAG,GAAH,GAAG,CAAoB;QAChC,WAAM,GAAN,MAAM,CAAe;QAIjD,kBAAa,GAAG,iCAAiB,CAAC,SAAS,CAAC;QAE5D,sEAAsE;QAC9D,YAAO,GAAG,kCAAkB,CAAC,SAAS,CAAC;IAL/C,CAAC;IAOY,OAAO;;YAClB,OAAO,IAAI,OAAO,CAAgB,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1D,IAAI,QAAuB,CAAC;gBAC5B,IAAI;oBAEF,IAAI,KAAK,GAAG,SAAS,CAAC;oBACtB,uGAAuG;oBAEvG,qBAAqB;oBACrB,2GAA2G;oBAC3G,2BAA2B;oBAC3B,mGAAmG;oBACnG,MAAM;oBACN,mHAAmH;oBACnH,IAAI;oBAEJ,QAAQ,GAAG,IAAI,6BAAa,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBAE7E,OAAO,CAAC,QAAQ,CAAC,CAAC;iBACnB;gBAAC,OAAO,GAAG,EAAE;oBACZ,0EAA0E;oBAC1E,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;YACH,CAAC,CAAA,CAAC,CAAC;QAEL,CAAC;KAAA;CAEF,CAAA;AA1CY,6BAA6B;IADzC,IAAA,sBAAU,GAAE;IAKR,mBAAA,IAAA,kBAAM,EAAC,gCAAY,CAAC,CAAA;IACpB,mBAAA,IAAA,kBAAM,EAAC,kCAAc,CAAC,kBAAkB,CAAC,CAAA;IACzC,mBAAA,IAAA,kBAAM,EAAC,0BAAU,CAAC,aAAa,CAAC,CAAA;6CAFS,gCAAY;GAJ7C,6BAA6B,CA0CzC;AA1CY,sEAA6B"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CodiacClient } from "@codiac.io/codiac-api-client";
|
|
2
|
+
import { IBetterLogger } from "@codiac.io/codiac-common";
|
|
3
|
+
import { CloudProviderEnum, ImageRegistry } from "@codiac.io/codiac-domain";
|
|
4
|
+
import { IUserInputProvider } from "@codiac.io/codiac-ops-common";
|
|
5
|
+
import { IRegistryConfigurator } from "../i-registry-configurator";
|
|
6
|
+
/** Walks the user through the selection of an existing
|
|
7
|
+
* or the declaration of a new image registry.
|
|
8
|
+
*/
|
|
9
|
+
export declare class HelmRegistryConfigurator implements IRegistryConfigurator {
|
|
10
|
+
private _codiacApi;
|
|
11
|
+
private _ui;
|
|
12
|
+
private logger;
|
|
13
|
+
constructor(_codiacApi: CodiacClient, _ui: IUserInputProvider, logger: IBetterLogger);
|
|
14
|
+
readonly cloudProvider = CloudProviderEnum["other"];
|
|
15
|
+
capture(): Promise<ImageRegistry>;
|
|
16
|
+
}
|