@codiac.io/codiac-cli 1.3.8 → 1.3.10

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 CHANGED
@@ -21,7 +21,7 @@ $ npm install -g @codiac.io/codiac-cli
21
21
  $ codiac COMMAND
22
22
  running command...
23
23
  $ codiac (--version|-v)
24
- @codiac.io/codiac-cli/1.3.8 linux-x64 node-v16.17.1
24
+ @codiac.io/codiac-cli/1.3.10 linux-x64 node-v16.17.1
25
25
  $ codiac --help [COMMAND]
26
26
  USAGE
27
27
  $ codiac COMMAND
@@ -491,9 +491,13 @@ export interface ClusterAccessGrantRequest {
491
491
  users: AccessGrant | string[];
492
492
  }
493
493
  export interface ClusterConnectionRequest {
494
- enterprise: string;
495
- environment: string;
496
- cabinet: string;
494
+ cluster?: string;
495
+ cabinet?: {
496
+ enterprise: string;
497
+ environment: string;
498
+ cabinet: string;
499
+ };
500
+ forceRefresh?: boolean | undefined;
497
501
  }
498
502
  /** The specs for a kubernetes cluster to be managed by the Codiac team.
499
503
  * This class is used to programmatically put up and take down clusters. */
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../../src/apis/codiac-relay/gen/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../../src/apis/codiac-relay/gen/contracts.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,8 @@ export declare const DEFAULT_APP_SETTINGS_FILENAME = "app-config.json";
13
13
  export declare class CliConstants {
14
14
  /** Just the folder name: contains NO PATH SEGMENTS in it. */
15
15
  static readonly LOCAL_CONFIG_FOLDER_NAME = ".codiac";
16
+ /** Relative pathname to the kube config file on the local machine. This path can be overwritten by the "KUBECONFIG" environment variable. */
17
+ static readonly LOCAL_KUBE_CONFIG_PATH_NAME = ".kube/config";
16
18
  /** File in which user state is retained between commands.
17
19
  * This file is only used by the ClI. */
18
20
  static readonly USER_CONTEXT_FILENAME = "usercontext.json";
@@ -18,6 +18,8 @@ class CliConstants {
18
18
  exports.CliConstants = CliConstants;
19
19
  /** Just the folder name: contains NO PATH SEGMENTS in it. */
20
20
  CliConstants.LOCAL_CONFIG_FOLDER_NAME = ".codiac";
21
+ /** Relative pathname to the kube config file on the local machine. This path can be overwritten by the "KUBECONFIG" environment variable. */
22
+ CliConstants.LOCAL_KUBE_CONFIG_PATH_NAME = ".kube/config";
21
23
  /** File in which user state is retained between commands.
22
24
  * This file is only used by the ClI. */
23
25
  CliConstants.USER_CONTEXT_FILENAME = "usercontext.json";
@@ -1 +1 @@
1
- {"version":3,"file":"codiac-constants.js","sourceRoot":"","sources":["../src/codiac-constants.ts"],"names":[],"mappings":";;;AAEA,sCAAsC;AACzB,QAAA,oBAAoB,GAAG,4BAA4B,CAAC;AAEjE;iFACiF;AACpE,QAAA,aAAa,GAAG,OAAO,CAAC;AAErC;;iFAEiF;AACpE,QAAA,eAAe,GAAG,SAAS,CAAC;AAGzC;iCACiC;AACpB,QAAA,6BAA6B,GAAG,iBAAiB,CAAC;AAG/D,MAAa,YAAY;;AAAzB,oCA0CC;AAxCC,6DAA6D;AACtC,qCAAwB,GAAG,SAAS,CAAC;AAE5D;wCACwC;AACjB,kCAAqB,GAAG,kBAAkB,CAAC;AAElE;;4DAE4D;AACrC,iCAAoB,GAAG,GAAG,CAAC;AAElD;;4DAE4D;AACrC,uCAA0B,GAAG,IAAI,CAAC;AAEzD;;uFAEuF;AAChE,iCAAoB,GAAG,kBAAkB,CAAC;AAEjE;;wEAEwE;AACjD,iCAAoB,GAAG,WAAW,CAAC;AAE1D;;uEAEuE;AAChD,wCAA2B,GAAG,mBAAmB,CAAC;AAEzE,oBAAoB;AACG,yBAAY,GAAG,GAAG,CAAC;AAG1C;4GAC4G;AACrF,mCAAsB,GAAG,KAAK,CAAC;AAKxD,MAAa,YAAY;;AAAzB,oCAMC;AAJwB,6BAAgB,GAAG,WAAW,CAAC;AAE/B,gCAAmB,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"codiac-constants.js","sourceRoot":"","sources":["../src/codiac-constants.ts"],"names":[],"mappings":";;;AAEA,sCAAsC;AACzB,QAAA,oBAAoB,GAAG,4BAA4B,CAAC;AAEjE;iFACiF;AACpE,QAAA,aAAa,GAAG,OAAO,CAAC;AAErC;;iFAEiF;AACpE,QAAA,eAAe,GAAG,SAAS,CAAC;AAGzC;iCACiC;AACpB,QAAA,6BAA6B,GAAG,iBAAiB,CAAC;AAG/D,MAAa,YAAY;;AAAzB,oCA6CC;AA3CC,6DAA6D;AACtC,qCAAwB,GAAG,SAAS,CAAC;AAE5D,8IAA8I;AACvH,wCAA2B,GAAG,cAAc,CAAC;AAEpE;wCACwC;AACjB,kCAAqB,GAAG,kBAAkB,CAAC;AAElE;;4DAE4D;AACrC,iCAAoB,GAAG,GAAG,CAAC;AAElD;;4DAE4D;AACrC,uCAA0B,GAAG,IAAI,CAAC;AAEzD;;uFAEuF;AAChE,iCAAoB,GAAG,kBAAkB,CAAC;AAEjE;;wEAEwE;AACjD,iCAAoB,GAAG,WAAW,CAAC;AAE1D;;uEAEuE;AAChD,wCAA2B,GAAG,mBAAmB,CAAC;AAEzE,oBAAoB;AACG,yBAAY,GAAG,GAAG,CAAC;AAG1C;4GAC4G;AACrF,mCAAsB,GAAG,KAAK,CAAC;AAKxD,MAAa,YAAY;;AAAzB,oCAMC;AAJwB,6BAAgB,GAAG,WAAW,CAAC;AAE/B,gCAAmB,GAAG,cAAc,CAAC"}
@@ -11,6 +11,7 @@ import { RootMap } from '../../apis/codiac-api/contracts';
11
11
  import { AssetReplicaContext, K8sContainerContext } from '../../relay/contracts';
12
12
  import { LogOptions } from '../../apis/codiac-relay/contracts';
13
13
  import { ConfigUiUtils, SpecialConfigTypes } from "../../uilogic/config-ui-utils";
14
+ import { K8sUtils } from "../../ops/k8s/k8s-utils";
14
15
  /** The value provided as input that indicates
15
16
  * a user's desire to be prompted with a list from which choose the value(s),
16
17
  * instead of entering them manually or taking a default. */
@@ -97,6 +98,8 @@ export default class AssetView extends CommandBaseEnterprise {
97
98
  private takeDefaults;
98
99
  protected get configUtils(): ConfigUiUtils;
99
100
  private _configUtils_backer;
101
+ protected get k8sUtils(): K8sUtils;
102
+ private _k8sUtils_backer;
100
103
  protected bootstrap(): void;
101
104
  run(): Promise<void>;
102
105
  captureArgs(enterpriseCode: string): Promise<[AtLeast<AssetContentRequest, "enterprise">, (InteractionModes | undefined), boolean]>;
@@ -122,8 +125,6 @@ export default class AssetView extends CommandBaseEnterprise {
122
125
  */
123
126
  protected promptForReplica(replicas: k8s.V1Pod[], ctrInPod: string | undefined, defaultValue?: string | undefined): Promise<K8sContainerContext>;
124
127
  renderSelectedContent(context: AssetReplicaContext, contentType: AssetContentType, k8sEntities: K8sContainerContext, contentOptions?: ContentArguments | undefined, replicas?: k8s.V1Pod[] | undefined): Promise<void>;
125
- protected getKubeConfig(context: AssetReplicaContext): Promise<k8s.KubeConfig>;
126
- protected getK8sClient(context: AssetReplicaContext, kube?: k8s.KubeConfig | undefined): Promise<k8s.CoreV1Api>;
127
128
  /** Gets the cluster cnxn specs from the relay, then makes the k8s call from the cli.
128
129
  *
129
130
  * Throws any errors. */
@@ -29,6 +29,7 @@ const ops_1 = require("../../ops");
29
29
  const log_update_wrapper_1 = require("../../log-update-wrapper");
30
30
  const codiac_constants_1 = require("../../codiac-constants");
31
31
  const config_ui_utils_1 = require("../../uilogic/config-ui-utils");
32
+ const k8s_utils_1 = require("../../ops/k8s/k8s-utils");
32
33
  // const { selectFiles, COMPLETED, CANCELLED } = require('select-files-cli'); // gd js wo ts...
33
34
  // const { selectFiles, COMPLETED, CANCELLED } = require('../../uilogic/file-selector'); // gd js wo ts...
34
35
  /** The value provided as input that indicates
@@ -86,11 +87,18 @@ class AssetView extends command_base_enterprise_1.CommandBaseEnterprise {
86
87
  }
87
88
  return this._configUtils_backer;
88
89
  }
90
+ get k8sUtils() {
91
+ if (this._k8sUtils_backer === undefined) {
92
+ this._k8sUtils_backer = this.ioc.get(k8s_utils_1.K8sUtils);
93
+ }
94
+ return this._k8sUtils_backer;
95
+ }
89
96
  // --------------------------------------------------------------------
90
97
  bootstrap() {
91
98
  super.bootstrap();
92
99
  cloud_provider_contextualizer_1.CloudProviderContextualizer.bootstrap(this.ioc); // (idempotent) this is a dependency of the configurators
93
100
  this.ioc.bind(config_ui_utils_1.ConfigUiUtils).toSelf();
101
+ this.ioc.bind(k8s_utils_1.K8sUtils).toSelf();
94
102
  }
95
103
  run() {
96
104
  var _a, _b, _c;
@@ -941,40 +949,36 @@ class AssetView extends command_base_enterprise_1.CommandBaseEnterprise {
941
949
  }
942
950
  });
943
951
  }
944
- getKubeConfig(context) {
945
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
946
- // Retrieve cluster connection specs
947
- let res = yield this.genRelayClient.Call.getClusterConnectionSpecs({
948
- enterprise: context.enterprise,
949
- environment: context.environment,
950
- cabinet: context.cabinet
951
- });
952
- if (res.error)
953
- throw res.error;
954
- if (res.output == undefined || _.isEmpty(res.output)) {
955
- this.log(`Failed loading cluster spec: ${res.message}.`);
956
- throw new Error(`Failed loading cluster spec: ${res.message}.`);
957
- }
958
- // Create the k8s client
959
- let k8sConfig = new client_node_1.KubeConfig();
960
- k8sConfig.loadFromString(res.output);
961
- return k8sConfig;
962
- });
963
- }
964
- getK8sClient(context, kube) {
965
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
966
- let k8sConfig = kube !== null && kube !== void 0 ? kube : (yield this.getKubeConfig(context));
967
- let theirApi = k8sConfig.makeApiClient(k8s.CoreV1Api);
968
- return theirApi;
969
- });
970
- }
952
+ // COMMENTED OUT BC: Moved to K8sUtils
953
+ // protected async getKubeConfig(context: AssetReplicaContext): Promise<k8s.KubeConfig> {
954
+ // // Retrieve cluster connection specs
955
+ // let res = await this.genRelayClient.Call.getClusterConnectionSpecs({
956
+ // enterprise: context.enterprise,
957
+ // environment: context.environment,
958
+ // cabinet: context.cabinet
959
+ // });
960
+ // if (res.error) throw res.error;
961
+ // if (res.output == undefined || _.isEmpty(res.output)) {
962
+ // this.log(`Failed loading cluster spec: ${res.message}.`);
963
+ // throw new Error(`Failed loading cluster spec: ${res.message}.`);
964
+ // }
965
+ // // Create the k8s client
966
+ // let k8sConfig = new KubeConfig();
967
+ // k8sConfig.loadFromString(res.output);
968
+ // return k8sConfig;
969
+ // }
970
+ // protected async getK8sClient(context: AssetReplicaContext, kube?: k8s.KubeConfig | undefined): Promise<k8s.CoreV1Api> {
971
+ // let k8sConfig = kube ?? (await this.getKubeConfig(context));
972
+ // let theirApi = k8sConfig.makeApiClient(k8s.CoreV1Api);
973
+ // return theirApi;
974
+ // }
971
975
  /** Gets the cluster cnxn specs from the relay, then makes the k8s call from the cli.
972
976
  *
973
977
  * Throws any errors. */
974
978
  fetchReplicas(context, namespace, k8sClient) {
975
979
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
976
980
  try {
977
- let theirApi = k8sClient !== null && k8sClient !== void 0 ? k8sClient : yield this.getK8sClient(context);
981
+ let theirApi = k8sClient !== null && k8sClient !== void 0 ? k8sClient : yield this.k8sUtils.getK8sClient(context);
978
982
  // Fetch from the cluster
979
983
  let podResult = yield theirApi.listNamespacedPod(namespace, undefined, undefined, undefined, undefined, `${codiac_constants_1.CodiacLabels.LABEL_ASSET_NAME}=${context.asset}`);
980
984
  let replicas = podResult.body.items;
@@ -1009,8 +1013,8 @@ class AssetView extends command_base_enterprise_1.CommandBaseEnterprise {
1009
1013
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1010
1014
  // let selector = `${CodiacLabels.LABEL_ASSET_NAME}=${context.asset}`;
1011
1015
  let selector = `app=${context.asset}`;
1012
- let kube = yield this.getKubeConfig(context);
1013
- let k8sClient = yield this.getK8sClient(context);
1016
+ let kube = yield this.k8sUtils.getKubeConfig(context);
1017
+ let k8sClient = yield this.k8sUtils.getK8sClient(context);
1014
1018
  (0, log_update_wrapper_1.logUpdate)(`Watching ${this._styler.hilite(context.asset)} in ${context.environment}/${context.cabinet}... (ctrl-c to quit)`);
1015
1019
  log_update_wrapper_1.logUpdate.done();
1016
1020
  (0, log_update_wrapper_1.logUpdate)(`...empty...`);
@@ -1067,7 +1071,7 @@ class AssetView extends command_base_enterprise_1.CommandBaseEnterprise {
1067
1071
  watchReplicaSet(context, namespace, replicaSets) {
1068
1072
  var _a, _b, _c, _d, _e, _f, _g;
1069
1073
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1070
- let k8sConfig = (yield this.getKubeConfig(context));
1074
+ let k8sConfig = (yield this.k8sUtils.getKubeConfig(context));
1071
1075
  let k8sClient = k8sConfig.makeApiClient(k8s.AppsV1Api);
1072
1076
  // let selector = `${CodiacLabels.LABEL_ASSET_NAME}=${context.asset}`;
1073
1077
  let selector = `app=${context.asset}`;
@@ -1099,7 +1103,7 @@ class AssetView extends command_base_enterprise_1.CommandBaseEnterprise {
1099
1103
  var _a, _b, _c, _d, _e, _f, _g;
1100
1104
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1101
1105
  let watch = true;
1102
- let k8sClient = yield this.getK8sClient(context);
1106
+ let k8sClient = yield this.k8sUtils.getK8sClient(context);
1103
1107
  let pods = replicas;
1104
1108
  let spinChars = ["|", "/", "-", "\\"];
1105
1109
  let spinIndex = -1;
@@ -1246,7 +1250,7 @@ class AssetView extends command_base_enterprise_1.CommandBaseEnterprise {
1246
1250
  var _a, _b, _c;
1247
1251
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1248
1252
  try {
1249
- let k8sClient = k8sApi !== null && k8sApi !== void 0 ? k8sApi : yield this.getK8sClient(context);
1253
+ let k8sClient = k8sApi !== null && k8sApi !== void 0 ? k8sApi : yield this.k8sUtils.getK8sClient(context);
1250
1254
  let pods = replicas !== null && replicas !== void 0 ? replicas : yield this.fetchReplicas(context, namespace, k8sClient);
1251
1255
  if (pods && pods.length > 0) {
1252
1256
  // let deployed = res.successes[0].currentVersion.deployed;
@@ -1316,7 +1320,7 @@ class AssetView extends command_base_enterprise_1.CommandBaseEnterprise {
1316
1320
  runExec(context, execArgs, k8sEntities) {
1317
1321
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
1318
1322
  try {
1319
- let k8sCnxnResult = yield this.genRelayClient.Call.getClusterConnectionSpecs(context);
1323
+ let k8sCnxnResult = yield this.genRelayClient.Call.getClusterConnectionSpecs({ cabinet: context });
1320
1324
  if (k8sCnxnResult.error)
1321
1325
  throw k8sCnxnResult.error;
1322
1326
  if (k8sCnxnResult.output === undefined || _.isEmpty(k8sCnxnResult.output))
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/commands/asset/view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/commands/asset/view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import { InteractionModes } from '../../uilogic/config-ui-utils';
2
+ import { CommandBaseExecTenant } from '../../command-base-exec-tenant';
3
+ import { K8sUtils } from '../../ops/k8s/k8s-utils';
4
+ export type IClusterRequest = {
5
+ cluster: string;
6
+ };
7
+ export default class ClusterConnect extends CommandBaseExecTenant<IClusterRequest> {
8
+ static hidden: boolean;
9
+ static description: string;
10
+ static aliases: never[];
11
+ static examples: string[];
12
+ static flags: {
13
+ silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
14
+ echo: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
15
+ "to-script": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
16
+ "take-defaults": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
17
+ };
18
+ static args: {
19
+ cluster: import("@oclif/core/lib/interfaces/parser").Arg<string | undefined, Record<string, unknown>>;
20
+ };
21
+ protected adminOnly: boolean;
22
+ protected get k8sUtils(): K8sUtils;
23
+ private _k8sUtils_backer;
24
+ protected bootstrap(): void;
25
+ captureArgs(): Promise<[Partial<IClusterRequest>, InteractionModes | undefined, boolean]>;
26
+ buildCandidate_silently(partial: Partial<IClusterRequest>): Promise<IClusterRequest | undefined>;
27
+ buildCandidate_interactively(partial: Partial<IClusterRequest>, takeDefaults: boolean): Promise<IClusterRequest | undefined>;
28
+ buildCommandString(candidate: IClusterRequest, cmd: string[]): string[];
29
+ executeTask(candidate: IClusterRequest): Promise<void>;
30
+ private loadClusters;
31
+ /** Renders a user-friendly cluster description. */
32
+ private describe;
33
+ /** Returns the name of the selected cluster.
34
+ */
35
+ private promptForCluster;
36
+ }
@@ -0,0 +1,165 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const fs = require("fs");
5
+ const path = require("path");
6
+ const core_1 = require("@oclif/core");
7
+ const _ = require("lodash");
8
+ const config_ui_utils_1 = require("../../uilogic/config-ui-utils");
9
+ const command_base_exec_tenant_1 = require("../../command-base-exec-tenant");
10
+ const k8s_utils_1 = require("../../ops/k8s/k8s-utils");
11
+ const client_node_1 = require("@kubernetes/client-node");
12
+ const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
13
+ const codiac_constants_1 = require("../../codiac-constants");
14
+ const clusterProjxn = { pathsIncluded: ["id", "name", "provider", "locationName", "instance", "modified", "modifiedBy"], pathsExcluded: [] };
15
+ class ClusterConnect extends command_base_exec_tenant_1.CommandBaseExecTenant {
16
+ constructor() {
17
+ super(...arguments);
18
+ this.adminOnly = true;
19
+ }
20
+ // --------------------------------------------------------------------
21
+ // Lazy-loaded properties
22
+ get k8sUtils() {
23
+ if (this._k8sUtils_backer === undefined) {
24
+ this._k8sUtils_backer = this.ioc.get(k8s_utils_1.K8sUtils);
25
+ }
26
+ return this._k8sUtils_backer;
27
+ }
28
+ // --------------------------------------------------------------------
29
+ bootstrap() {
30
+ super.bootstrap();
31
+ this.ioc.bind(k8s_utils_1.K8sUtils).toSelf();
32
+ }
33
+ captureArgs() {
34
+ var _a, _b;
35
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
36
+ const { args, flags } = yield this.parse(ClusterConnect);
37
+ let partial = {};
38
+ if (args.cluster)
39
+ partial.cluster = args.cluster;
40
+ // ---------------------------------------------------------------
41
+ // TODO: move everything from here down into the base class
42
+ // ---------------------------------------------------------------
43
+ const interactionMode = (this.pipedInput) ? config_ui_utils_1.InteractionModes.silent : (_b = (_a = undefined !== null && undefined !== void 0 ? undefined : (flags.echo ? config_ui_utils_1.InteractionModes.echo : undefined)) !== null && _a !== void 0 ? _a : (flags["to-script"] ? config_ui_utils_1.InteractionModes.toscript : undefined)) !== null && _b !== void 0 ? _b : (flags.silent ? config_ui_utils_1.InteractionModes.silent : undefined);
44
+ const takeDefaults = flags['take-defaults'];
45
+ return [partial, interactionMode, takeDefaults];
46
+ });
47
+ }
48
+ // /** Throws on invalid */
49
+ // private validate(partial: Partial<IAuthRoleDef>): void {
50
+ // if (partial.name == undefined || _.isEmpty(partial.name)) throw new Error("Missing name");
51
+ // let rxName = /^[a-zA-Z][a-zA-Z0-9-]{2,50}$/;
52
+ // if (!rxName.test(partial.name)) throw new Error("Invalid name: must be 3- to 50-character string of alphanumerics and hyphens, starting with a letter.");
53
+ // }
54
+ buildCandidate_silently(partial) {
55
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
56
+ if (partial.cluster == undefined || _.isEmpty(partial.cluster))
57
+ throw new Error("Must specify cluster.");
58
+ let candidate = {
59
+ cluster: partial.cluster,
60
+ };
61
+ return candidate;
62
+ });
63
+ }
64
+ buildCandidate_interactively(partial, takeDefaults) {
65
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
66
+ let clusters = yield this.loadClusters();
67
+ let selected;
68
+ if (clusters.length == 1 && (takeDefaults == true)) {
69
+ selected = clusters[0];
70
+ }
71
+ else {
72
+ selected = yield this.promptForCluster(clusters, partial.cluster);
73
+ }
74
+ partial.cluster = selected.name;
75
+ // Prompt for output format
76
+ return yield this.buildCandidate_silently(partial);
77
+ });
78
+ }
79
+ buildCommandString(candidate, cmd) {
80
+ cmd.push("--silent");
81
+ cmd.push(candidate.cluster);
82
+ return cmd;
83
+ }
84
+ executeTask(candidate) {
85
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
86
+ let k8sConfig = yield this.k8sUtils.getKubeConfigForCluster(candidate.cluster);
87
+ // Write it to the local kubeconfig
88
+ let machineConfig = new client_node_1.KubeConfig();
89
+ machineConfig.loadFromDefault();
90
+ machineConfig.mergeConfig(k8sConfig, false);
91
+ machineConfig.setCurrentContext(k8sConfig.currentContext);
92
+ let targetFile = process.env["KUBECONFIG"];
93
+ if (!targetFile) {
94
+ let homeDir = "~/"; // path.posix.resolve("~/"); // NOTE: This tilde (~) may not be valid on a windows box.
95
+ let pathName = path.posix.join(codiac_ops_common_1.OpsUtils.resolveHomeDir(homeDir), codiac_constants_1.CliConstants.LOCAL_KUBE_CONFIG_PATH_NAME);
96
+ let json = machineConfig.exportConfig();
97
+ if (!fs.existsSync(path.dirname(pathName))) {
98
+ yield fs.promises.mkdir(path.dirname(pathName), { recursive: true });
99
+ }
100
+ yield fs.promises.writeFile(pathName, json);
101
+ this._ui.userMessage("current k8s context set to ".concat(machineConfig.currentContext, "."));
102
+ }
103
+ return;
104
+ });
105
+ }
106
+ // TODO: Move these fxns to a shared class (along w their copies in `cod cluster journal`)
107
+ loadClusters() {
108
+ var _a, _b;
109
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
110
+ try {
111
+ // TODO: use rootmap instead...
112
+ let readResult = yield this._codiacApi.ClusterDef.tryReadMany({ all: true }, { projection: clusterProjxn });
113
+ let clusterDefs = (_b = (_a = readResult.output) === null || _a === void 0 ? void 0 : _a.map(c => c)) !== null && _b !== void 0 ? _b : [];
114
+ clusterDefs = _.orderBy(clusterDefs, c => c.name);
115
+ return clusterDefs;
116
+ }
117
+ catch (err) {
118
+ throw err;
119
+ }
120
+ });
121
+ }
122
+ /** Renders a user-friendly cluster description. */
123
+ describe(cluster) {
124
+ return `${cluster.name} ${this._styler.dim("(" + cluster.provider + (cluster.locationName ? ", " + cluster.locationName : "") + ")")}`;
125
+ }
126
+ /** Returns the name of the selected cluster.
127
+ */
128
+ promptForCluster(clusters, defaultValue) {
129
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
130
+ let output;
131
+ let keep = false;
132
+ if (defaultValue && clusters.find(c => c.name === defaultValue)) {
133
+ keep = yield this._ui.promptConfirm("clusterNameConfirm", `Target Cluster: [${this._styler.hilite(defaultValue)}]`, true);
134
+ }
135
+ if (keep === true) {
136
+ output = clusters.find(c => c.name === defaultValue);
137
+ }
138
+ else {
139
+ let choices = clusters
140
+ .map(c => { return { name: this.describe(c), value: c.name }; });
141
+ let selectedName = (yield this._ui.promptSelect("clusterName", "Select the target cluster:", choices));
142
+ output = clusters.find(c => c.name === selectedName);
143
+ }
144
+ return output;
145
+ });
146
+ }
147
+ }
148
+ exports.default = ClusterConnect;
149
+ ClusterConnect.hidden = true; // Until the kubeconfig merge works properly.
150
+ ClusterConnect.description = 'Downloads the kube config context for the current user on the given cluster.';
151
+ ClusterConnect.aliases = [];
152
+ ClusterConnect.examples = [
153
+ '<%= config.bin %> <%= command.id %> my-fav-cluster'
154
+ ];
155
+ ClusterConnect.flags = {
156
+ // TODO: Move these into the base class
157
+ silent: core_1.Flags.boolean({ exclusive: ["echo", "to-script"], description: 'Non-Interactive mode; executes without any user interaction and fails on any missing or invalid arguments.' }),
158
+ echo: core_1.Flags.boolean({ exclusive: ["to-script", "silent"], description: 'Echo interaction mode; renders the equivalent non-interactive cli command for future use before final execution.' }),
159
+ "to-script": core_1.Flags.boolean({ exclusive: ["echo", "silent"], description: 'Toscript interaction mode; renders the equivalent non-interactive cli command WITHOUT any execution.' }),
160
+ "take-defaults": core_1.Flags.boolean({ exclusive: ["silent"], description: "Setting this to true prevents prompting for confirmation on parameters that were passed in or were automatically set to default values (Irrelevant in --silent mode). This behavior does NOT apply to scenarios that the command needs to override invalid user input; such cases will always prompt for confirmation. eg: when no argument was provided for file or type, and only one exists, the system will render the autoselected file unless this flag is set." })
161
+ };
162
+ ClusterConnect.args = {
163
+ cluster: core_1.Args.string({ description: 'Name of the cluster in Codiac. You can use `cod cluster list` to see the names of your codiac clusters.' }),
164
+ };
165
+ //# sourceMappingURL=connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/commands/cluster/connect.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import * as k8s from "@kubernetes/client-node";
2
+ import { IBetterLogger } from "@codiac.io/codiac-common";
3
+ import { RelayClient } from "../../apis/codiac-relay";
4
+ import { AssetReplicaContext } from '../../relay/contracts';
5
+ /** Shallow front-end-layer utility functions for connecting to a k8s cluster. */
6
+ export declare class K8sUtils {
7
+ private relayClient;
8
+ private logger;
9
+ constructor(relayClient: RelayClient, logger: IBetterLogger);
10
+ getKubeConfigForCluster(cluster: string): Promise<k8s.KubeConfig>;
11
+ getKubeConfig(context: AssetReplicaContext): Promise<k8s.KubeConfig>;
12
+ getK8sClient(context: AssetReplicaContext, kube?: k8s.KubeConfig | undefined): Promise<k8s.CoreV1Api>;
13
+ }
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.K8sUtils = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const inversify_1 = require("inversify");
6
+ const _ = require("lodash");
7
+ const client_node_1 = require("@kubernetes/client-node");
8
+ const k8s = require("@kubernetes/client-node");
9
+ const codiac_common_1 = require("@codiac.io/codiac-common");
10
+ const codiac_relay_1 = require("../../apis/codiac-relay");
11
+ /** Shallow front-end-layer utility functions for connecting to a k8s cluster. */
12
+ let K8sUtils = class K8sUtils {
13
+ constructor(relayClient, logger) {
14
+ this.relayClient = relayClient;
15
+ this.logger = logger;
16
+ }
17
+ getKubeConfigForCluster(cluster) {
18
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
19
+ // Retrieve cluster connection specs
20
+ let res = yield this.relayClient.Call.getClusterConnectionSpecs({ cluster: cluster });
21
+ if (res.error)
22
+ throw res.error;
23
+ if (res.output == undefined || _.isEmpty(res.output)) {
24
+ this.logger.error(`Failed loading cluster spec: ${res.message}.`);
25
+ throw new Error(`Failed loading cluster spec: ${res.message}.`);
26
+ }
27
+ // Create the k8s client
28
+ let k8sConfig = new client_node_1.KubeConfig();
29
+ k8sConfig.loadFromString(res.output);
30
+ return k8sConfig;
31
+ });
32
+ }
33
+ getKubeConfig(context) {
34
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
35
+ // Retrieve cluster connection specs
36
+ let res = yield this.relayClient.Call.getClusterConnectionSpecs({
37
+ cabinet: {
38
+ cabinet: context.cabinet,
39
+ enterprise: context.enterprise,
40
+ environment: context.environment,
41
+ }
42
+ });
43
+ if (res.error)
44
+ throw res.error;
45
+ if (res.output == undefined || _.isEmpty(res.output)) {
46
+ this.logger.error(`Failed loading cluster spec: ${res.message}.`);
47
+ throw new Error(`Failed loading cluster spec: ${res.message}.`);
48
+ }
49
+ // Create the k8s client
50
+ let k8sConfig = new client_node_1.KubeConfig();
51
+ k8sConfig.loadFromString(res.output);
52
+ return k8sConfig;
53
+ });
54
+ }
55
+ getK8sClient(context, kube) {
56
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
57
+ let k8sConfig = kube !== null && kube !== void 0 ? kube : (yield this.getKubeConfig(context));
58
+ let theirApi = k8sConfig.makeApiClient(k8s.CoreV1Api);
59
+ return theirApi;
60
+ });
61
+ }
62
+ };
63
+ K8sUtils = tslib_1.__decorate([
64
+ (0, inversify_1.injectable)(),
65
+ tslib_1.__param(0, (0, inversify_1.inject)(codiac_relay_1.RelayClient)),
66
+ tslib_1.__param(1, (0, inversify_1.inject)(codiac_common_1.INTERFACES.IBetterLogger)),
67
+ tslib_1.__metadata("design:paramtypes", [codiac_relay_1.RelayClient, Object])
68
+ ], K8sUtils);
69
+ exports.K8sUtils = K8sUtils;
70
+ //# sourceMappingURL=k8s-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"k8s-utils.js","sourceRoot":"","sources":["../../../src/ops/k8s/k8s-utils.ts"],"names":[],"mappings":";;;;AAAA,yCAA+C;AAC/C,4BAA6B;AAC7B,yDAAqD;AACrD,+CAA+C;AAC/C,4DAAqE;AACrE,0DAAsD;AAGtD,iFAAiF;AAE1E,IAAM,QAAQ,GAAd,MAAM,QAAQ;IACnB,YAC+B,WAAwB,EACX,MAAqB;QADlC,gBAAW,GAAX,WAAW,CAAa;QACX,WAAM,GAAN,MAAM,CAAe;IAGjE,CAAC;IAIY,uBAAuB,CAAC,OAAe;;YAClD,oCAAoC;YACpC,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,yBAAyB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YACtF,IAAI,GAAG,CAAC,KAAK;gBAAE,MAAM,GAAG,CAAC,KAAK,CAAC;YAC/B,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;gBAClE,MAAM,IAAI,KAAK,CAAC,gCAAgC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;aACjE;YAED,wBAAwB;YACxB,IAAI,SAAS,GAAG,IAAI,wBAAU,EAAE,CAAC;YACjC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAErC,OAAO,SAAS,CAAC;QACnB,CAAC;KAAA;IAGY,aAAa,CAAC,OAA4B;;YACrD,oCAAoC;YACpC,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,yBAAyB,CAAC;gBAC9D,OAAO,EAAE;oBACP,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,WAAW,EAAE,OAAO,CAAC,WAAW;iBACjC;aACF,CAAC,CAAC;YACH,IAAI,GAAG,CAAC,KAAK;gBAAE,MAAM,GAAG,CAAC,KAAK,CAAC;YAC/B,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;gBAClE,MAAM,IAAI,KAAK,CAAC,gCAAgC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;aACjE;YAED,wBAAwB;YACxB,IAAI,SAAS,GAAG,IAAI,wBAAU,EAAE,CAAC;YACjC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAErC,OAAO,SAAS,CAAC;QACnB,CAAC;KAAA;IAGY,YAAY,CAAC,OAA4B,EAAE,IAAiC;;YAEvF,IAAI,SAAS,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;YAC5D,IAAI,QAAQ,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAEtD,OAAO,QAAQ,CAAC;QAClB,CAAC;KAAA;CAGF,CAAA;AA3DY,QAAQ;IADpB,IAAA,sBAAU,GAAE;IAGR,mBAAA,IAAA,kBAAM,EAAC,0BAAW,CAAC,CAAA;IACnB,mBAAA,IAAA,kBAAM,EAAC,0BAAU,CAAC,aAAa,CAAC,CAAA;6CADS,0BAAW;GAF5C,QAAQ,CA2DpB;AA3DY,4BAAQ"}
@@ -16,7 +16,7 @@ const IBetterLogger_1 = require("@codiac.io/codiac-common/IBetterLogger");
16
16
  const cli_tools_1 = require("@codiac.io/cli-tools");
17
17
  const INTERFACES_CLI_1 = require("../ops/INTERFACES_CLI");
18
18
  const DEFAULT_IMAGE_NAME = "codiacimages/codiac-relay";
19
- const DEFAULT_IMAGE_TAG = "1.3.13";
19
+ const DEFAULT_IMAGE_TAG = "1.3.14";
20
20
  const DEFUALT_CONTIANER_NAME = "codiac-relay";
21
21
  const DEFAULT_HEALTH_CHECK_URL = "http://localhost:5799/heartbeat-json"; // /ready-state";
22
22
  const DEFAULT_RETRY_TIMOUT_IN_MINUTES = 1;
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.3.8",
2
+ "version": "1.3.10",
3
3
  "commands": {
4
4
  "branch": {
5
5
  "id": "branch",
@@ -2288,6 +2288,67 @@
2288
2288
  }
2289
2289
  }
2290
2290
  },
2291
+ "cluster:connect": {
2292
+ "id": "cluster:connect",
2293
+ "description": "Downloads the kube config context for the current user on the given cluster.",
2294
+ "strict": true,
2295
+ "pluginName": "@codiac.io/codiac-cli",
2296
+ "pluginAlias": "@codiac.io/codiac-cli",
2297
+ "pluginType": "core",
2298
+ "hidden": true,
2299
+ "aliases": [],
2300
+ "hiddenAliases": [],
2301
+ "examples": [
2302
+ "<%= config.bin %> <%= command.id %> my-fav-cluster"
2303
+ ],
2304
+ "flags": {
2305
+ "silent": {
2306
+ "name": "silent",
2307
+ "type": "boolean",
2308
+ "description": "Non-Interactive mode; executes without any user interaction and fails on any missing or invalid arguments.",
2309
+ "allowNo": false,
2310
+ "exclusive": [
2311
+ "echo",
2312
+ "to-script"
2313
+ ]
2314
+ },
2315
+ "echo": {
2316
+ "name": "echo",
2317
+ "type": "boolean",
2318
+ "description": "Echo interaction mode; renders the equivalent non-interactive cli command for future use before final execution.",
2319
+ "allowNo": false,
2320
+ "exclusive": [
2321
+ "to-script",
2322
+ "silent"
2323
+ ]
2324
+ },
2325
+ "to-script": {
2326
+ "name": "to-script",
2327
+ "type": "boolean",
2328
+ "description": "Toscript interaction mode; renders the equivalent non-interactive cli command WITHOUT any execution.",
2329
+ "allowNo": false,
2330
+ "exclusive": [
2331
+ "echo",
2332
+ "silent"
2333
+ ]
2334
+ },
2335
+ "take-defaults": {
2336
+ "name": "take-defaults",
2337
+ "type": "boolean",
2338
+ "description": "Setting this to true prevents prompting for confirmation on parameters that were passed in or were automatically set to default values (Irrelevant in --silent mode). This behavior does NOT apply to scenarios that the command needs to override invalid user input; such cases will always prompt for confirmation. eg: when no argument was provided for file or type, and only one exists, the system will render the autoselected file unless this flag is set.",
2339
+ "allowNo": false,
2340
+ "exclusive": [
2341
+ "silent"
2342
+ ]
2343
+ }
2344
+ },
2345
+ "args": {
2346
+ "cluster": {
2347
+ "name": "cluster",
2348
+ "description": "Name of the cluster in Codiac. You can use `cod cluster list` to see the names of your codiac clusters."
2349
+ }
2350
+ }
2351
+ },
2291
2352
  "config:add": {
2292
2353
  "id": "config:add",
2293
2354
  "description": "Adds a key value pair to the app config",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@codiac.io/codiac-cli",
3
3
  "description": "Local command line interface for managing enterprise assets and environments",
4
- "version": "1.3.8",
4
+ "version": "1.3.10",
5
5
  "author": "Codiac",
6
6
  "bin": {
7
7
  "codiac": "./bin/run",