@catladder/cli 0.0.0-main-ef2d95a2 → 0.0.0-main-05a96e20

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.
Files changed (30) hide show
  1. package/dist/apps/cli/cli.js +6 -11
  2. package/dist/apps/cli/cli.js.map +1 -1
  3. package/dist/apps/cli/commands/project/commandConfigSecrets.js +0 -1
  4. package/dist/apps/cli/commands/project/commandConfigSecrets.js.map +1 -1
  5. package/dist/apps/cli/commands/project/commandReloadConfig.d.ts +3 -0
  6. package/dist/apps/cli/commands/project/commandReloadConfig.js +62 -0
  7. package/dist/apps/cli/commands/project/commandReloadConfig.js.map +1 -0
  8. package/dist/apps/cli/commands/project/index.js +2 -0
  9. package/dist/apps/cli/commands/project/index.js.map +1 -1
  10. package/dist/apps/cli/commands/project/utils/showProjectBanner.d.ts +2 -0
  11. package/dist/apps/cli/commands/project/utils/showProjectBanner.js +58 -0
  12. package/dist/apps/cli/commands/project/utils/showProjectBanner.js.map +1 -0
  13. package/dist/apps/cli/verify/index.js +30 -11
  14. package/dist/apps/cli/verify/index.js.map +1 -1
  15. package/dist/config/getProjectConfig.d.ts +1 -0
  16. package/dist/config/getProjectConfig.js +3 -1
  17. package/dist/config/getProjectConfig.js.map +1 -1
  18. package/dist/tsconfig.tsbuildinfo +1 -1
  19. package/dist/utils/gitlab.d.ts +2 -0
  20. package/dist/utils/gitlab.js +35 -11
  21. package/dist/utils/gitlab.js.map +1 -1
  22. package/package.json +2 -2
  23. package/src/apps/cli/cli.ts +6 -7
  24. package/src/apps/cli/commands/project/commandConfigSecrets.ts +0 -2
  25. package/src/apps/cli/commands/project/commandReloadConfig.ts +12 -0
  26. package/src/apps/cli/commands/project/index.ts +2 -0
  27. package/src/apps/cli/commands/project/utils/showProjectBanner.ts +11 -0
  28. package/src/apps/cli/verify/index.ts +10 -0
  29. package/src/config/getProjectConfig.ts +2 -0
  30. package/src/utils/gitlab.ts +37 -28
@@ -1,5 +1,7 @@
1
1
  import memoizee from "memoizee";
2
2
  import { CommandInstance } from "vorpal";
3
+ export declare const hasGitlabToken: () => Promise<boolean>;
4
+ export declare const setupGitlabToken: (vorpal: CommandInstance) => Promise<void>;
3
5
  export declare const getGitlabToken: (vorpal: CommandInstance) => Promise<any>;
4
6
  export declare const doGitlabRequest: <T = any>(vorpal: CommandInstance, path: string, data?: any, update?: boolean) => Promise<T>;
5
7
  export declare const getProjectInfo: (vorpal: CommandInstance) => Promise<{
@@ -48,7 +48,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
48
48
  return (mod && mod.__esModule) ? mod : { "default": mod };
49
49
  };
50
50
  exports.__esModule = true;
51
- exports.upsertAllVariables = exports.getAllVariables = exports.getProjectInfo = exports.doGitlabRequest = exports.getGitlabToken = void 0;
51
+ exports.upsertAllVariables = exports.getAllVariables = exports.getProjectInfo = exports.doGitlabRequest = exports.getGitlabToken = exports.setupGitlabToken = exports.hasGitlabToken = void 0;
52
52
  var child_process_promise_1 = require("child-process-promise");
53
53
  var lodash_1 = require("lodash");
54
54
  var memoizee_1 = __importDefault(require("memoizee"));
@@ -56,13 +56,18 @@ var node_fetch_1 = __importDefault(require("node-fetch"));
56
56
  var open_1 = __importDefault(require("open"));
57
57
  var preferences_1 = require("./preferences");
58
58
  var TOKEN_KEY = "gitlab-personal-access-token";
59
- var getGitlabToken = function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
59
+ var hasGitlabToken = function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
60
+ switch (_a.label) {
61
+ case 0: return [4 /*yield*/, (0, preferences_1.hasPreference)(TOKEN_KEY)];
62
+ case 1: return [2 /*return*/, _a.sent()];
63
+ }
64
+ }); }); };
65
+ exports.hasGitlabToken = hasGitlabToken;
66
+ var setupGitlabToken = function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
60
67
  var shouldContinue, personalToken;
61
68
  return __generator(this, function (_a) {
62
69
  switch (_a.label) {
63
- case 0: return [4 /*yield*/, (0, preferences_1.hasPreference)(TOKEN_KEY)];
64
- case 1:
65
- if (!!(_a.sent())) return [3 /*break*/, 5];
70
+ case 0:
66
71
  vorpal.log("");
67
72
  vorpal.log("☝ in order to access the api, we need a personal access token");
68
73
  vorpal.log("Its best to create one specifically for catladder");
@@ -75,7 +80,7 @@ var getGitlabToken = function (vorpal) { return __awaiter(void 0, void 0, void 0
75
80
  name: "shouldContinue",
76
81
  type: "prompt"
77
82
  })];
78
- case 2:
83
+ case 1:
79
84
  shouldContinue = (_a.sent()).shouldContinue;
80
85
  (0, open_1["default"])("https://git.panter.ch/-/profile/personal_access_tokens");
81
86
  vorpal.log("Please type in gitlab's personal access token");
@@ -85,14 +90,33 @@ var getGitlabToken = function (vorpal) { return __awaiter(void 0, void 0, void 0
85
90
  "default": "",
86
91
  message: "Your personal access token "
87
92
  })];
88
- case 3:
93
+ case 2:
89
94
  personalToken = (_a.sent()).personalToken;
90
- if (!personalToken) return [3 /*break*/, 5];
95
+ if (!personalToken) return [3 /*break*/, 4];
91
96
  return [4 /*yield*/, (0, preferences_1.setPreference)(TOKEN_KEY, personalToken)];
92
- case 4:
97
+ case 3:
93
98
  _a.sent();
94
- _a.label = 5;
95
- case 5: return [2 /*return*/, (0, preferences_1.getPreference)(TOKEN_KEY)];
99
+ _a.label = 4;
100
+ case 4: return [2 /*return*/];
101
+ }
102
+ });
103
+ }); };
104
+ exports.setupGitlabToken = setupGitlabToken;
105
+ var getGitlabToken = function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
106
+ return __generator(this, function (_a) {
107
+ switch (_a.label) {
108
+ case 0: return [4 /*yield*/, (0, exports.hasGitlabToken)()];
109
+ case 1:
110
+ if (!!(_a.sent())) return [3 /*break*/, 3];
111
+ if (!vorpal) {
112
+ console.error("⚠️ gitlab token missing, please run catladder to set it up");
113
+ process.exit(1);
114
+ }
115
+ return [4 /*yield*/, (0, exports.setupGitlabToken)(vorpal)];
116
+ case 2:
117
+ _a.sent();
118
+ _a.label = 3;
119
+ case 3: return [2 /*return*/, (0, preferences_1.getPreference)(TOKEN_KEY)];
96
120
  }
97
121
  });
98
122
  }); };
@@ -1 +1 @@
1
- {"version":3,"file":"gitlab.js","sourceRoot":"","sources":["../../src/utils/gitlab.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitlab.js","sourceRoot":"","sources":["../../src/utils/gitlab.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "@bitwarden/cli": "^1.8.0",
20
- "@catladder/pipeline": "0.0.0-main-ef2d95a2",
20
+ "@catladder/pipeline": "0.0.0-main-05a96e20",
21
21
  "@kubernetes/client-node": "^0.16.1",
22
22
  "child-process-promise": "^2.2.1",
23
23
  "clipboardy": "^2.2.0",
@@ -60,6 +60,6 @@
60
60
  "eslint": "^8.7.0",
61
61
  "typescript": "^4.5.4"
62
62
  },
63
- "version": "0.0.0-main-ef2d95a2",
63
+ "version": "0.0.0-main-05a96e20",
64
64
  "stableVersion": "0.0.0-test7"
65
65
  }
@@ -10,12 +10,12 @@ import theStuffThatReallyMatters from "./commands/theStuffThatReallyMatters";
10
10
 
11
11
  import { getProjectConfig } from "../../config/getProjectConfig";
12
12
  import { verify } from "./verify";
13
+ import { showProjectBanner } from "./commands/project/utils/showProjectBanner";
13
14
 
14
15
  export default async () => {
15
16
  const vorpal = new Vorpal();
16
- verify(vorpal);
17
+
17
18
  const welcomeMessage = `catladder 2022 😻 version ${packageInfos.version}`;
18
- const projectConfig = await getProjectConfig();
19
19
 
20
20
  vorpal
21
21
  .delimiter("catladder $") // emoji messes with cursor :-( https://github.com/dthree/vorpal/issues/332
@@ -24,11 +24,10 @@ export default async () => {
24
24
  .log("")
25
25
  .log(welcomeMessage)
26
26
  .log("");
27
- if (projectConfig) {
28
- vorpal.log("project: " + projectConfig.appName);
29
- vorpal.log("customer: " + projectConfig.customerName);
30
- vorpal.log("");
31
- }
27
+
28
+ await showProjectBanner(vorpal);
29
+
30
+ verify(vorpal);
32
31
 
33
32
  general(vorpal);
34
33
  project(vorpal);
@@ -105,8 +105,6 @@ const doItFor = async (
105
105
  }
106
106
  }
107
107
 
108
- console.log(JSON.stringify(valuesToEdit, null, 2));
109
-
110
108
  for (const componentName of components) {
111
109
  await upsertAllVariables(
112
110
  this,
@@ -0,0 +1,12 @@
1
+ import Vorpal from "vorpal";
2
+ import { reloadConfig } from "../../../../config/getProjectConfig";
3
+ import { showProjectBanner } from "./utils/showProjectBanner";
4
+
5
+ export default async (vorpal: Vorpal) =>
6
+ vorpal
7
+ .command("project-reload-config", "reloads the config")
8
+
9
+ .action(async function () {
10
+ await reloadConfig();
11
+ await showProjectBanner(vorpal);
12
+ });
@@ -24,8 +24,10 @@ import commandPortForward from "./commandPortForward";
24
24
  import commandTriggerCronjob from "./commandTriggerCronjob";
25
25
 
26
26
  import commandOpenGrafanaPod from "./commandOpenGrafanaPod";
27
+ import commandReloadConfig from "./commandReloadConfig";
27
28
 
28
29
  export default async (vorpal: Vorpal) => {
30
+ commandReloadConfig(vorpal);
29
31
  commandInitProject(vorpal);
30
32
  commandInitGitlab(vorpal);
31
33
  commandEnvVars(vorpal);
@@ -0,0 +1,11 @@
1
+ import Vorpal from "vorpal";
2
+ import { getProjectConfig } from "../../../../../config/getProjectConfig";
3
+
4
+ export const showProjectBanner = async (vorpal: Vorpal) => {
5
+ const projectConfig = await getProjectConfig();
6
+ if (projectConfig) {
7
+ vorpal.log("project: " + projectConfig.appName);
8
+ vorpal.log("customer: " + projectConfig.customerName);
9
+ vorpal.log("");
10
+ }
11
+ };
@@ -3,9 +3,19 @@ import {
3
3
  getGitlabCi,
4
4
  getProjectConfig,
5
5
  } from "../../../config/getProjectConfig";
6
+ import { hasGitlabToken, setupGitlabToken } from "../../../utils/gitlab";
6
7
  import { migrateV2 } from "./migration/fromv2";
7
8
 
8
9
  export const verify = async (vorpal: Vorpal) => {
10
+ // check if has all settings
11
+
12
+ if (!(await hasGitlabToken())) {
13
+ vorpal.command("setup-gitlab-token").action(async function () {
14
+ await setupGitlabToken(this);
15
+ });
16
+ vorpal.exec("setup-gitlab-token");
17
+ }
18
+
9
19
  const projectConfig = await getProjectConfig();
10
20
  try {
11
21
  const gitlabCi = getGitlabCi();
@@ -25,6 +25,8 @@ export const getProjectConfig = memoizee(
25
25
  { promise: true }
26
26
  );
27
27
 
28
+ export const reloadConfig = () => getProjectConfig.clear();
29
+
28
30
  export const getGitlabCiFilePath = async () => {
29
31
  const gitRoot = await getGitRoot();
30
32
  return gitRoot + "/.gitlab-ci.yml";
@@ -7,36 +7,45 @@ import { CommandInstance } from "vorpal";
7
7
  import { getPreference, hasPreference, setPreference } from "./preferences";
8
8
 
9
9
  const TOKEN_KEY = "gitlab-personal-access-token";
10
+
11
+ export const hasGitlabToken = async () => await hasPreference(TOKEN_KEY);
12
+ export const setupGitlabToken = async (vorpal: CommandInstance) => {
13
+ vorpal.log("");
14
+ vorpal.log("☝ in order to access the api, we need a personal access token");
15
+ vorpal.log("Its best to create one specifically for catladder");
16
+ vorpal.log("");
17
+ vorpal.log("☝ we open up the settings page for you!");
18
+ vorpal.log("");
19
+ const { shouldContinue } = await vorpal.prompt({
20
+ default: true,
21
+ message: "Ok",
22
+ name: "shouldContinue",
23
+ type: "prompt",
24
+ });
25
+
26
+ open("https://git.panter.ch/-/profile/personal_access_tokens");
27
+
28
+ vorpal.log("Please type in gitlab's personal access token");
29
+
30
+ const { personalToken } = await vorpal.prompt({
31
+ type: "string",
32
+ name: "personalToken",
33
+ default: "",
34
+ message: "Your personal access token ",
35
+ });
36
+ if (personalToken) {
37
+ await setPreference(TOKEN_KEY, personalToken);
38
+ }
39
+ };
10
40
  export const getGitlabToken = async (vorpal: CommandInstance) => {
11
- if (!(await hasPreference(TOKEN_KEY))) {
12
- vorpal.log("");
13
- vorpal.log(
14
- "☝ in order to access the api, we need a personal access token"
15
- );
16
- vorpal.log("Its best to create one specifically for catladder");
17
- vorpal.log("");
18
- vorpal.log("☝ we open up the settings page for you!");
19
- vorpal.log("");
20
- const { shouldContinue } = await vorpal.prompt({
21
- default: true,
22
- message: "Ok",
23
- name: "shouldContinue",
24
- type: "prompt",
25
- });
26
-
27
- open("https://git.panter.ch/-/profile/personal_access_tokens");
28
-
29
- vorpal.log("Please type in gitlab's personal access token");
30
-
31
- const { personalToken } = await vorpal.prompt({
32
- type: "string",
33
- name: "personalToken",
34
- default: "",
35
- message: "Your personal access token ",
36
- });
37
- if (personalToken) {
38
- await setPreference(TOKEN_KEY, personalToken);
41
+ if (!(await hasGitlabToken())) {
42
+ if (!vorpal) {
43
+ console.error(
44
+ "⚠️ gitlab token missing, please run catladder to set it up"
45
+ );
46
+ process.exit(1);
39
47
  }
48
+ await setupGitlabToken(vorpal);
40
49
  }
41
50
  return getPreference(TOKEN_KEY);
42
51
  };