@catladder/cli 1.16.2 → 1.16.3

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.
@@ -42,7 +42,6 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
42
42
  exports.__esModule = true;
43
43
  exports.connectToCluster = exports.getCurrentConnectedClusterName = exports.getCurrentContext = void 0;
44
44
  var zx_1 = require("zx");
45
- var k8sApi_1 = require("../k8sApi");
46
45
  var getCurrentContext = function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
47
46
  switch (_a.label) {
48
47
  case 0: return [4 /*yield*/, (0, zx_1.$)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["kubectl config current-context"], ["kubectl config current-context"])))];
@@ -65,7 +64,6 @@ var connectToCluster = function (fullname) { return __awaiter(void 0, void 0, vo
65
64
  case 0: return [4 /*yield*/, (0, zx_1.$)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["kubectl config use-context ", ""], ["kubectl config use-context ", ""])), fullname)];
66
65
  case 1:
67
66
  _a.sent();
68
- (0, k8sApi_1.reload)();
69
67
  return [2 /*return*/];
70
68
  }
71
69
  });
@@ -1 +1 @@
1
- {"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../src/utils/cluster.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yBAAuB;AACvB,oCAAmC;AAE5B,IAAM,iBAAiB,GAAG;;gBAC9B,yBAAM,MAAC,oGAAA,gCAAgC,MAAA;gBAAxC,sBAAA,CAAC,SAAuC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAA;;SAAA,CAAC;AAD7C,QAAA,iBAAiB,qBAC4B;AAEnD,IAAM,8BAA8B,GAAG;;;oBACrC,qBAAM,IAAA,yBAAiB,GAAE,EAAA;oBAAhC,sBAAO,SAAyB,EAAC;;;KAClC,CAAC;AAFW,QAAA,8BAA8B,kCAEzC;AAEK,IAAM,gBAAgB,GAAG,UAAO,QAAgB;;;oBACrD,yBAAM,MAAC,qGAAA,6BAA8B,EAAQ,EAAE,KAAV,QAAQ,GAAE;;gBAA/C,SAA+C,CAAC;gBAChD,IAAA,eAAM,GAAE,CAAC;;;;KACV,CAAC;AAHW,QAAA,gBAAgB,oBAG3B"}
1
+ {"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../src/utils/cluster.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yBAAuB;AAEhB,IAAM,iBAAiB,GAAG;;gBAC9B,yBAAM,MAAC,oGAAA,gCAAgC,MAAA;gBAAxC,sBAAA,CAAC,SAAuC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAA;;SAAA,CAAC;AAD7C,QAAA,iBAAiB,qBAC4B;AAEnD,IAAM,8BAA8B,GAAG;;;oBACrC,qBAAM,IAAA,yBAAiB,GAAE,EAAA;oBAAhC,sBAAO,SAAyB,EAAC;;;KAClC,CAAC;AAFW,QAAA,8BAA8B,kCAEzC;AAEK,IAAM,gBAAgB,GAAG,UAAO,QAAgB;;;oBACrD,yBAAM,MAAC,qGAAA,6BAA8B,EAAQ,EAAE,KAAV,QAAQ,GAAE;;gBAA/C,SAA+C,CAAC;;;;KACjD,CAAC;AAFW,QAAA,gBAAgB,oBAE3B"}
@@ -39,15 +39,12 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
39
39
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
40
40
  }
41
41
  };
42
- var __importDefault = (this && this.__importDefault) || function (mod) {
43
- return (mod && mod.__esModule) ? mod : { "default": mod };
44
- };
45
42
  exports.__esModule = true;
46
43
  exports.getProjectPodNames = exports.getProjectPvcs = exports.getProjectPods = exports.getProjectNamespace = exports.hasGitlabCiFile = exports.readRootGitlabCiFile = exports.getRootGitlabCiFile = exports.getGitRoot = void 0;
47
44
  var zx_1 = require("zx");
48
45
  var path_1 = require("path");
49
46
  var getProjectConfig_1 = require("../../config/getProjectConfig");
50
- var k8sApi_1 = __importDefault(require("../../k8sApi"));
47
+ var k8sApi_1 = require("../../k8sApi");
51
48
  var files_1 = require("../files");
52
49
  var getGitRoot = function () { return __awaiter(void 0, void 0, void 0, function () {
53
50
  return __generator(this, function (_a) {
@@ -109,13 +106,14 @@ var getProjectNamespace = function (envComponent) { return __awaiter(void 0, voi
109
106
  }); };
110
107
  exports.getProjectNamespace = getProjectNamespace;
111
108
  var getProjectPods = function (envComponent) { return __awaiter(void 0, void 0, void 0, function () {
112
- var namespace, res;
109
+ var namespace, k8sApi, res;
113
110
  return __generator(this, function (_a) {
114
111
  switch (_a.label) {
115
112
  case 0: return [4 /*yield*/, (0, exports.getProjectNamespace)(envComponent)];
116
113
  case 1:
117
114
  namespace = _a.sent();
118
- return [4 /*yield*/, k8sApi_1["default"].listNamespacedPod(namespace)];
115
+ k8sApi = (0, k8sApi_1.getk8sApi)();
116
+ return [4 /*yield*/, k8sApi.listNamespacedPod(namespace)];
119
117
  case 2:
120
118
  res = _a.sent();
121
119
  return [2 /*return*/, res.body.items];
@@ -124,13 +122,14 @@ var getProjectPods = function (envComponent) { return __awaiter(void 0, void 0,
124
122
  }); };
125
123
  exports.getProjectPods = getProjectPods;
126
124
  var getProjectPvcs = function (envComponent) { return __awaiter(void 0, void 0, void 0, function () {
127
- var namespace, res;
125
+ var namespace, k8sApi, res;
128
126
  return __generator(this, function (_a) {
129
127
  switch (_a.label) {
130
128
  case 0: return [4 /*yield*/, (0, exports.getProjectNamespace)(envComponent)];
131
129
  case 1:
132
130
  namespace = _a.sent();
133
- return [4 /*yield*/, k8sApi_1["default"].listNamespacedPersistentVolumeClaim(namespace)];
131
+ k8sApi = (0, k8sApi_1.getk8sApi)();
132
+ return [4 /*yield*/, k8sApi.listNamespacedPersistentVolumeClaim(namespace)];
134
133
  case 2:
135
134
  res = _a.sent();
136
135
  return [2 /*return*/, res.body.items];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/projects/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yBAAuB;AACvB,6BAA4B;AAC5B,kEAA8E;AAC9E,wDAAkC;AAClC,kCAA2C;AAEpC,IAAM,UAAU,GAAG;;;oBAChB,yBAAM,MAAC,mGAAA,+BAA+B,MAAA;oBAA9C,sBAAO,CAAC,SAAsC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAC;;;KAC/D,CAAC;AAFW,QAAA,UAAU,cAErB;AAEK,IAAM,mBAAmB,GAAG;;;;oBACjB,qBAAM,IAAA,kBAAU,GAAE,EAAA;;gBAA5B,OAAO,GAAG,SAAkB;gBAClC,sBAAO,IAAA,WAAI,EAAC,OAAO,EAAE,gBAAgB,CAAC,EAAC;;;KACxC,CAAC;AAHW,QAAA,mBAAmB,uBAG9B;AAEK,IAAM,oBAAoB,GAAG;;;YAClC,KAAA,uBAAe,CAAA;YAAC,qBAAM,IAAA,2BAAmB,GAAE,EAAA;gBAA3C,sBAAA,kBAAgB,SAA2B,EAAC,EAAA;;SAAA,CAAC;AADlC,QAAA,oBAAoB,wBACc;AAExC,IAAM,eAAe,GAAG;;;;oBACP,qBAAM,IAAA,4BAAoB,GAAE,EAAA;;gBAA5C,KAAgB,SAA4B,EAA3C,KAAK,QAAA,EAAE,IAAI,QAAA;gBAClB,IAAI,KAAK,EAAE;oBACT,sBAAO,KAAK,EAAC;iBACd;gBACD,sBAAO,IAAI,EAAC;;;KACb,CAAC;AANW,QAAA,eAAe,mBAM1B;AAEK,IAAM,mBAAmB,GAAG,UAAO,YAAoB;;;;;gBACpD,GAAG,GAAK,IAAA,8BAAW,EAAC,YAAY,CAAC,IAA9B,CAA+B;gBAC3B,qBAAM,IAAA,mCAAgB,GAAE,EAAA;;gBAAjC,MAAM,GAAG,SAAwB;gBACvC,sBAAO,UAAG,MAAM,CAAC,YAAY,cAAI,MAAM,CAAC,OAAO,cAAI,GAAG,CAAE,EAAC;;;KAC1D,CAAC;AAJW,QAAA,mBAAmB,uBAI9B;AAEK,IAAM,cAAc,GAAG,UAAO,YAAoB;;;;oBACrC,qBAAM,IAAA,2BAAmB,EAAC,YAAY,CAAC,EAAA;;gBAAnD,SAAS,GAAG,SAAuC;gBAC7C,qBAAM,mBAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAA;;gBAA/C,GAAG,GAAG,SAAyC;gBAErD,sBAAO,GAAG,CAAC,IAAI,CAAC,KAAK,EAAC;;;KACvB,CAAC;AALW,QAAA,cAAc,kBAKzB;AAEK,IAAM,cAAc,GAAG,UAAO,YAAoB;;;;oBACrC,qBAAM,IAAA,2BAAmB,EAAC,YAAY,CAAC,EAAA;;gBAAnD,SAAS,GAAG,SAAuC;gBAC7C,qBAAM,mBAAM,CAAC,mCAAmC,CAAC,SAAS,CAAC,EAAA;;gBAAjE,GAAG,GAAG,SAA2D;gBAEvE,sBAAO,GAAG,CAAC,IAAI,CAAC,KAAK,EAAC;;;KACvB,CAAC;AALW,QAAA,cAAc,kBAKzB;AAEK,IAAM,kBAAkB,GAAG,UAAO,YAAoB;;;;oBAC9C,qBAAM,IAAA,sBAAc,EAAC,YAAY,CAAC,EAAA;;gBAAzC,IAAI,GAAG,SAAkC;gBAC/C,sBAAO,IAAI,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAf,CAAe,CAAC,EAAC;;;KACzC,CAAC;AAHW,QAAA,kBAAkB,sBAG7B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/projects/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yBAAuB;AACvB,6BAA4B;AAC5B,kEAA8E;AAC9E,uCAAyC;AACzC,kCAA2C;AAEpC,IAAM,UAAU,GAAG;;;oBAChB,yBAAM,MAAC,mGAAA,+BAA+B,MAAA;oBAA9C,sBAAO,CAAC,SAAsC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAC;;;KAC/D,CAAC;AAFW,QAAA,UAAU,cAErB;AAEK,IAAM,mBAAmB,GAAG;;;;oBACjB,qBAAM,IAAA,kBAAU,GAAE,EAAA;;gBAA5B,OAAO,GAAG,SAAkB;gBAClC,sBAAO,IAAA,WAAI,EAAC,OAAO,EAAE,gBAAgB,CAAC,EAAC;;;KACxC,CAAC;AAHW,QAAA,mBAAmB,uBAG9B;AAEK,IAAM,oBAAoB,GAAG;;;YAClC,KAAA,uBAAe,CAAA;YAAC,qBAAM,IAAA,2BAAmB,GAAE,EAAA;gBAA3C,sBAAA,kBAAgB,SAA2B,EAAC,EAAA;;SAAA,CAAC;AADlC,QAAA,oBAAoB,wBACc;AAExC,IAAM,eAAe,GAAG;;;;oBACP,qBAAM,IAAA,4BAAoB,GAAE,EAAA;;gBAA5C,KAAgB,SAA4B,EAA3C,KAAK,QAAA,EAAE,IAAI,QAAA;gBAClB,IAAI,KAAK,EAAE;oBACT,sBAAO,KAAK,EAAC;iBACd;gBACD,sBAAO,IAAI,EAAC;;;KACb,CAAC;AANW,QAAA,eAAe,mBAM1B;AAEK,IAAM,mBAAmB,GAAG,UAAO,YAAoB;;;;;gBACpD,GAAG,GAAK,IAAA,8BAAW,EAAC,YAAY,CAAC,IAA9B,CAA+B;gBAC3B,qBAAM,IAAA,mCAAgB,GAAE,EAAA;;gBAAjC,MAAM,GAAG,SAAwB;gBACvC,sBAAO,UAAG,MAAM,CAAC,YAAY,cAAI,MAAM,CAAC,OAAO,cAAI,GAAG,CAAE,EAAC;;;KAC1D,CAAC;AAJW,QAAA,mBAAmB,uBAI9B;AAEK,IAAM,cAAc,GAAG,UAAO,YAAoB;;;;oBACrC,qBAAM,IAAA,2BAAmB,EAAC,YAAY,CAAC,EAAA;;gBAAnD,SAAS,GAAG,SAAuC;gBACnD,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;gBACf,qBAAM,MAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAA;;gBAA/C,GAAG,GAAG,SAAyC;gBAErD,sBAAO,GAAG,CAAC,IAAI,CAAC,KAAK,EAAC;;;KACvB,CAAC;AANW,QAAA,cAAc,kBAMzB;AAEK,IAAM,cAAc,GAAG,UAAO,YAAoB;;;;oBACrC,qBAAM,IAAA,2BAAmB,EAAC,YAAY,CAAC,EAAA;;gBAAnD,SAAS,GAAG,SAAuC;gBACnD,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;gBACf,qBAAM,MAAM,CAAC,mCAAmC,CAAC,SAAS,CAAC,EAAA;;gBAAjE,GAAG,GAAG,SAA2D;gBAEvE,sBAAO,GAAG,CAAC,IAAI,CAAC,KAAK,EAAC;;;KACvB,CAAC;AANW,QAAA,cAAc,kBAMzB;AAEK,IAAM,kBAAkB,GAAG,UAAO,YAAoB;;;;oBAC9C,qBAAM,IAAA,sBAAc,EAAC,YAAY,CAAC,EAAA;;gBAAzC,IAAI,GAAG,SAAkC;gBAC/C,sBAAO,IAAI,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAf,CAAe,CAAC,EAAC;;;KACzC,CAAC;AAHW,QAAA,kBAAkB,sBAG7B"}
package/package.json CHANGED
@@ -16,7 +16,7 @@
16
16
  "catladder": "./bin/catladder"
17
17
  },
18
18
  "dependencies": {
19
- "@catladder/pipeline": "1.16.2",
19
+ "@catladder/pipeline": "1.16.3",
20
20
  "@kubernetes/client-node": "^0.16.2",
21
21
  "child-process-promise": "^2.2.1",
22
22
  "command-exists-promise": "^2.0.2",
@@ -55,5 +55,5 @@
55
55
  "eslint": "^8.7.0",
56
56
  "typescript": "^4.5.4"
57
57
  },
58
- "version": "1.16.2"
58
+ "version": "1.16.3"
59
59
  }
@@ -1,10 +1,7 @@
1
1
  import memoizee from "memoizee";
2
2
  import Vorpal from "vorpal";
3
- import k8sApi from "../../../../k8sApi";
4
- import {
5
- getCurrentConnectedClusterName,
6
- getCurrentContext,
7
- } from "../../../../utils/cluster";
3
+ import { getk8sApi } from "../../../../k8sApi";
4
+ import { getCurrentContext } from "../../../../utils/cluster";
8
5
  import { logError } from "../../../../utils/log";
9
6
  import { syncBitwarden } from "../../../../utils/passwordstore";
10
7
  import {
@@ -12,13 +9,12 @@ import {
12
9
  stopPortForward,
13
10
  } from "../../../../utils/portForward";
14
11
  import { getShell } from "../../../../utils/shell";
15
- import { getGoogleAuthUserNumber } from "../../utils/getGoogleAuthUserNumber";
16
- import { openGoogleCloudLogs } from "../shared";
17
12
  import { namespaceAutoCompletion } from "./namespaceAutoCompletion";
18
13
  import portForward from "./portForward";
19
14
 
20
15
  const getAllNamespaces = memoizee(
21
16
  async () => {
17
+ const k8sApi = getk8sApi();
22
18
  const res = await k8sApi.listNamespace();
23
19
  return res.body.items;
24
20
  },
@@ -45,6 +41,7 @@ export default async (vorpal: Vorpal) => {
45
41
  .command("list-secrets <namespace>", "show secrets")
46
42
  .autocomplete(namespaceAutoCompletion)
47
43
  .action(async function ({ namespace }) {
44
+ const k8sApi = getk8sApi();
48
45
  const res = await k8sApi.listNamespacedSecret(namespace);
49
46
 
50
47
  this.log(res.body.items.map((n) => n.metadata.name).join("\n"));
@@ -59,6 +56,7 @@ export default async (vorpal: Vorpal) => {
59
56
  .command("list-pods <namespace>", "list all pods of namespace")
60
57
  .autocomplete(namespaceAutoCompletion)
61
58
  .action(async function ({ namespace }) {
59
+ const k8sApi = getk8sApi();
62
60
  const res = await k8sApi.listNamespacedPod(namespace);
63
61
  this.log(res.body.items.map((n) => n.metadata.name).join("\n"));
64
62
  });
@@ -74,6 +72,7 @@ export default async (vorpal: Vorpal) => {
74
72
  .command("get-shell <namespace>", "get a shell to a pod in the environment")
75
73
  .autocomplete(namespaceAutoCompletion)
76
74
  .action(async function ({ namespace }) {
75
+ const k8sApi = getk8sApi();
77
76
  const res = await k8sApi.listNamespacedPod(namespace);
78
77
  if (res.body.items.length === 0) {
79
78
  logError(this, "sorry, no pods found");
@@ -3,7 +3,7 @@ import { logError } from "../../../../utils/log";
3
3
 
4
4
  import { startPortForward } from "../../../../utils/portForward";
5
5
 
6
- import k8sApi from "../../../../k8sApi";
6
+ import { getk8sApi } from "../../../../k8sApi";
7
7
  import { namespaceAutoCompletion } from "./namespaceAutoCompletion";
8
8
 
9
9
  export default async (vorpal: Vorpal) =>
@@ -11,6 +11,7 @@ export default async (vorpal: Vorpal) =>
11
11
  .command("port-forward <namespace>", "start port-forwarding")
12
12
  .autocomplete(namespaceAutoCompletion)
13
13
  .action(async function ({ namespace }) {
14
+ const k8sApi = getk8sApi();
14
15
  const res = await k8sApi.listNamespacedPod(namespace);
15
16
  if (res.body.items.length === 0) {
16
17
  logError(this, "sorry, no pods found");
@@ -1,5 +1,5 @@
1
1
  import Vorpal from "vorpal";
2
- import k8sApi from "../../../../k8sApi";
2
+ import { getk8sApi } from "../../../../k8sApi";
3
3
 
4
4
  import { logError } from "../../../../utils/log";
5
5
  import {
@@ -40,6 +40,7 @@ export default async (vorpal: Vorpal) =>
40
40
  message: "Continue ? 🤔 ",
41
41
  });
42
42
  this.log("");
43
+ const k8sApi = getk8sApi();
43
44
  if (shouldContinue) {
44
45
  for (const podName of selectedPodNames) {
45
46
  await k8sApi.deleteNamespacedPod(podName, namespace, "true");
@@ -1,7 +1,7 @@
1
1
  import { V1Job, V1ObjectMeta } from "@kubernetes/client-node";
2
2
 
3
3
  import Vorpal from "vorpal";
4
- import { k8sApiBatch, k8sApiBatchBeta } from "../../../../k8sApi";
4
+ import { getk8sApiBatch, getk8sApiBatchBeta } from "../../../../k8sApi";
5
5
  import { logError } from "../../../../utils/log";
6
6
  import { namespaceAutoCompletion } from "../general/namespaceAutoCompletion";
7
7
 
@@ -12,7 +12,7 @@ import ensureCluster from "./utils/ensureCluster";
12
12
  async function triggerCronjob(namespace: string) {
13
13
  const {
14
14
  body: { items: jobs },
15
- } = await k8sApiBatchBeta.listNamespacedCronJob(namespace);
15
+ } = await getk8sApiBatchBeta().listNamespacedCronJob(namespace);
16
16
 
17
17
  const jobNames = jobs.map((j) => j.metadata.name);
18
18
 
@@ -34,7 +34,7 @@ async function triggerCronjob(namespace: string) {
34
34
  job.metadata = metadata as V1ObjectMeta;
35
35
  job.spec = jobSpec;
36
36
  try {
37
- const result = await k8sApiBatch.createNamespacedJob(namespace, job);
37
+ const result = await getk8sApiBatch().createNamespacedJob(namespace, job);
38
38
 
39
39
  this.log("");
40
40
  this.log(`yeah, you got a job, man. 😺 ${result.body.metadata.name}`);
@@ -1,6 +1,6 @@
1
1
  import { Context, getKubernetesNamespace } from "@catladder/pipeline";
2
2
  import { V1Namespace, V1ObjectMeta } from "@kubernetes/client-node";
3
- import k8sApi from "../../../../../k8sApi";
3
+ import { getk8sApi } from "../../../../../k8sApi";
4
4
 
5
5
  export default async function (context: Context) {
6
6
  const namespace = getKubernetesNamespace(
@@ -31,6 +31,7 @@ export default async function (context: Context) {
31
31
  };
32
32
 
33
33
  namespaceBody.metadata = metadata;
34
+ const k8sApi = getk8sApi();
34
35
  try {
35
36
  await k8sApi.readNamespace(namespace);
36
37
 
@@ -5,17 +5,29 @@ import {
5
5
  BatchV1beta1Api,
6
6
  } from "@kubernetes/client-node";
7
7
 
8
- const kc = new KubeConfig();
9
-
10
- export const reload = () => {
8
+ const getKubeConfig = () => {
9
+ const kc = new KubeConfig();
11
10
  kc.loadFromDefault();
11
+ return kc;
12
12
  };
13
+ /**
14
+ * get kubernetes client. avoid reusing the instance when context get changed
15
+ * @returns kuberenetes client
16
+ */
17
+ export const getk8sApi = () => {
18
+ const kc = getKubeConfig();
13
19
 
14
- reload();
20
+ return kc.makeApiClient(CoreV1Api);
21
+ };
15
22
 
16
- const k8sApi = kc.makeApiClient(CoreV1Api);
23
+ export const getk8sApiBatch = () => {
24
+ const kc = getKubeConfig();
17
25
 
18
- export const k8sApiBatch = kc.makeApiClient(BatchV1Api);
19
- export const k8sApiBatchBeta = kc.makeApiClient(BatchV1beta1Api);
26
+ return kc.makeApiClient(BatchV1Api);
27
+ };
20
28
 
21
- export default k8sApi;
29
+ export const getk8sApiBatchBeta = () => {
30
+ const kc = getKubeConfig();
31
+
32
+ return kc.makeApiClient(BatchV1beta1Api);
33
+ };
@@ -1,5 +1,4 @@
1
1
  import { $ } from "zx";
2
- import { reload } from "../k8sApi";
3
2
 
4
3
  export const getCurrentContext = async () =>
5
4
  (await $`kubectl config current-context`).stdout.trim();
@@ -10,5 +9,4 @@ export const getCurrentConnectedClusterName = async () => {
10
9
 
11
10
  export const connectToCluster = async (fullname: string) => {
12
11
  await $`kubectl config use-context ${fullname}`;
13
- reload();
14
12
  };
@@ -1,7 +1,7 @@
1
1
  import { $ } from "zx";
2
2
  import { join } from "path";
3
3
  import { getProjectConfig, parseChoice } from "../../config/getProjectConfig";
4
- import k8sApi from "../../k8sApi";
4
+ import { getk8sApi } from "../../k8sApi";
5
5
  import { readFileOrError } from "../files";
6
6
 
7
7
  export const getGitRoot = async (): Promise<string> => {
@@ -32,6 +32,7 @@ export const getProjectNamespace = async (envComponent: string) => {
32
32
 
33
33
  export const getProjectPods = async (envComponent: string) => {
34
34
  const namespace = await getProjectNamespace(envComponent);
35
+ const k8sApi = getk8sApi();
35
36
  const res = await k8sApi.listNamespacedPod(namespace);
36
37
 
37
38
  return res.body.items;
@@ -39,6 +40,7 @@ export const getProjectPods = async (envComponent: string) => {
39
40
 
40
41
  export const getProjectPvcs = async (envComponent: string) => {
41
42
  const namespace = await getProjectNamespace(envComponent);
43
+ const k8sApi = getk8sApi();
42
44
  const res = await k8sApi.listNamespacedPersistentVolumeClaim(namespace);
43
45
 
44
46
  return res.body.items;