@capuchoo/cli 0.7.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +231 -22
- package/bin/run.js +22 -0
- package/dist/cli/members.d.ts +23 -0
- package/dist/cli/members.d.ts.map +1 -0
- package/dist/cli/members.js +38 -0
- package/dist/cli/members.js.map +1 -0
- package/dist/cli/menu.d.ts +38 -0
- package/dist/cli/menu.d.ts.map +1 -0
- package/dist/cli/menu.js +62 -0
- package/dist/cli/menu.js.map +1 -0
- package/dist/cli/onboarding.d.ts +41 -0
- package/dist/cli/onboarding.d.ts.map +1 -0
- package/dist/cli/onboarding.js +94 -0
- package/dist/cli/onboarding.js.map +1 -0
- package/dist/cli/prompts.d.ts +15 -0
- package/dist/cli/prompts.d.ts.map +1 -1
- package/dist/cli/prompts.js +42 -0
- package/dist/cli/prompts.js.map +1 -1
- package/dist/cli/team.d.ts +16 -0
- package/dist/cli/team.d.ts.map +1 -0
- package/dist/cli/team.js +32 -0
- package/dist/cli/team.js.map +1 -0
- package/dist/commands/app/grant.d.ts +11 -0
- package/dist/commands/app/grant.d.ts.map +1 -0
- package/dist/commands/app/grant.js +31 -0
- package/dist/commands/app/grant.js.map +1 -0
- package/dist/commands/app/list.d.ts.map +1 -1
- package/dist/commands/app/list.js +2 -1
- package/dist/commands/app/list.js.map +1 -1
- package/dist/commands/app/revoke.d.ts +13 -0
- package/dist/commands/app/revoke.d.ts.map +1 -0
- package/dist/commands/app/revoke.js +40 -0
- package/dist/commands/app/revoke.js.map +1 -0
- package/dist/commands/app/roles.d.ts +7 -0
- package/dist/commands/app/roles.d.ts.map +1 -0
- package/dist/commands/app/roles.js +30 -0
- package/dist/commands/app/roles.js.map +1 -0
- package/dist/commands/auth/issue.d.ts +12 -0
- package/dist/commands/auth/issue.d.ts.map +1 -0
- package/dist/commands/auth/issue.js +52 -0
- package/dist/commands/auth/issue.js.map +1 -0
- package/dist/commands/auth/keys.d.ts +7 -0
- package/dist/commands/auth/keys.d.ts.map +1 -0
- package/dist/commands/auth/keys.js +39 -0
- package/dist/commands/auth/keys.js.map +1 -0
- package/dist/commands/auth/login.d.ts +20 -0
- package/dist/commands/auth/login.d.ts.map +1 -1
- package/dist/commands/auth/login.js +90 -11
- package/dist/commands/auth/login.js.map +1 -1
- package/dist/commands/auth/revoke.d.ts +13 -0
- package/dist/commands/auth/revoke.d.ts.map +1 -0
- package/dist/commands/auth/revoke.js +48 -0
- package/dist/commands/auth/revoke.js.map +1 -0
- package/dist/commands/auth/whoami.d.ts.map +1 -1
- package/dist/commands/auth/whoami.js +2 -1
- package/dist/commands/auth/whoami.js.map +1 -1
- package/dist/commands/channel/list.d.ts.map +1 -1
- package/dist/commands/channel/list.js +2 -1
- package/dist/commands/channel/list.js.map +1 -1
- package/dist/commands/doctor.d.ts +2 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +86 -13
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts +35 -3
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +121 -29
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/menu.d.ts +42 -0
- package/dist/commands/menu.d.ts.map +1 -0
- package/dist/commands/menu.js +185 -0
- package/dist/commands/menu.js.map +1 -0
- package/dist/commands/org/invite.d.ts +14 -0
- package/dist/commands/org/invite.d.ts.map +1 -0
- package/dist/commands/org/invite.js +52 -0
- package/dist/commands/org/invite.js.map +1 -0
- package/dist/commands/org/members.d.ts +10 -0
- package/dist/commands/org/members.d.ts.map +1 -0
- package/dist/commands/org/members.js +49 -0
- package/dist/commands/org/members.js.map +1 -0
- package/dist/deploy/execute.d.ts.map +1 -1
- package/dist/deploy/execute.js +25 -5
- package/dist/deploy/execute.js.map +1 -1
- package/dist/deploy/signing.d.ts +24 -0
- package/dist/deploy/signing.d.ts.map +1 -0
- package/dist/deploy/signing.js +57 -0
- package/dist/deploy/signing.js.map +1 -0
- package/dist/pipeline/android-signing.d.ts +41 -0
- package/dist/pipeline/android-signing.d.ts.map +1 -0
- package/dist/pipeline/android-signing.js +82 -0
- package/dist/pipeline/android-signing.js.map +1 -0
- package/dist/pipeline/app-identity.d.ts +35 -0
- package/dist/pipeline/app-identity.d.ts.map +1 -0
- package/dist/pipeline/app-identity.js +109 -0
- package/dist/pipeline/app-identity.js.map +1 -0
- package/dist/pipeline/capacitor-support.d.ts +1 -1
- package/dist/pipeline/capacitor-support.js +1 -1
- package/dist/services/cloud.d.ts +82 -2
- package/dist/services/cloud.d.ts.map +1 -1
- package/dist/services/cloud.js +85 -4
- package/dist/services/cloud.js.map +1 -1
- package/dist/utils/http.d.ts +5 -0
- package/dist/utils/http.d.ts.map +1 -1
- package/dist/utils/http.js +13 -2
- package/dist/utils/http.js.map +1 -1
- package/oclif.manifest.json +397 -84
- package/package.json +5 -5
|
@@ -15,5 +15,25 @@ export default class AuthLogin extends BaseCommand {
|
|
|
15
15
|
* whether a failed login ends the process or just ends the login step.
|
|
16
16
|
*/
|
|
17
17
|
static performLogin(flagEndpoint?: string, flagApiKey?: string): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Turns a sign-in failure into something actionable.
|
|
20
|
+
*
|
|
21
|
+
* There is deliberately no `capuchoo auth register`: confirming an email is a
|
|
22
|
+
* browser round-trip, so a CLI signup could only ever end with "now go and
|
|
23
|
+
* check your email". Accounts are created in the dashboard, and an unconfirmed
|
|
24
|
+
* one is the state most likely to bring someone here confused.
|
|
25
|
+
*/
|
|
26
|
+
static explainSignInFailure(error: unknown): string;
|
|
27
|
+
/**
|
|
28
|
+
* Gets an API key, by signing in or by being handed one.
|
|
29
|
+
*
|
|
30
|
+
* Signing in is the default because pasting a key could not be the first step:
|
|
31
|
+
* keys are made in the dashboard, and an app-scoped one cannot create apps -
|
|
32
|
+
* so a new user had no way to reach a working state from the terminal at all.
|
|
33
|
+
*
|
|
34
|
+
* The token from `/auth/login` is used once, to mint a key, and then dropped.
|
|
35
|
+
* A JWT expires; a key does not, so you sign in once per machine.
|
|
36
|
+
*/
|
|
37
|
+
private static obtainKey;
|
|
18
38
|
}
|
|
19
39
|
//# sourceMappingURL=login.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/login.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/login.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAIpD,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAChD,OAAgB,WAAW,SAAmC;IAE9D,OAAgB,QAAQ,WAGtB;IAEF,OAAgB,KAAK;;;MAMnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAK1B;;;;;;OAMG;WACU,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuCpF;;;;;;;OAOG;IACH,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAqBnD;;;;;;;;;OASG;mBACkB,SAAS;CAmE/B"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { hostname } from "node:os";
|
|
2
|
+
import { askSecret, askText, isInteractive, selectOne } from "../../cli/prompts.js";
|
|
2
3
|
import { Flags } from "@oclif/core";
|
|
3
4
|
import chalk from "chalk";
|
|
4
5
|
import ora from "ora";
|
|
5
6
|
import { CloudClient } from "../../services/cloud.js";
|
|
7
|
+
import { TimeoutError } from "../../utils/http.js";
|
|
6
8
|
import { readGlobalConfig, updateGlobalConfig } from "../../utils/config.js";
|
|
7
9
|
import { BaseCommand } from "../../base-command.js";
|
|
8
10
|
const DEFAULT_ENDPOINT = "https://capuchoo-back.onrender.com";
|
|
9
11
|
export default class AuthLogin extends BaseCommand {
|
|
10
|
-
static description = "
|
|
12
|
+
static description = "Sign in to a Capuchoo backend";
|
|
11
13
|
static examples = [
|
|
12
14
|
"<%= config.bin %> auth login",
|
|
13
15
|
"<%= config.bin %> auth login --endpoint https://capucho.internal --api-key cap_...",
|
|
@@ -40,15 +42,7 @@ export default class AuthLogin extends BaseCommand {
|
|
|
40
42
|
})))
|
|
41
43
|
.trim()
|
|
42
44
|
.replace(/\/+$/, "");
|
|
43
|
-
|
|
44
|
-
if (!apiKey) {
|
|
45
|
-
process.stderr.write(chalk.dim(`\n Create a key under Settings > API Keys at ${endpoint}\n\n`));
|
|
46
|
-
// Only a length check. The previous version required the key to start with
|
|
47
|
-
// "cap_", which is a server-side format decision the CLI has no business
|
|
48
|
-
// enforcing - a rotated prefix would have locked users out.
|
|
49
|
-
apiKey = await askSecret("API key");
|
|
50
|
-
}
|
|
51
|
-
apiKey = apiKey.trim();
|
|
45
|
+
const apiKey = (flagApiKey ?? (await AuthLogin.obtainKey(endpoint))).trim();
|
|
52
46
|
const spinner = ora({ text: "Verifying", stream: process.stderr }).start();
|
|
53
47
|
const profile = await new CloudClient(endpoint, apiKey).whoami();
|
|
54
48
|
if (!profile) {
|
|
@@ -67,5 +61,90 @@ export default class AuthLogin extends BaseCommand {
|
|
|
67
61
|
authenticatedAt: new Date().toISOString(),
|
|
68
62
|
});
|
|
69
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Turns a sign-in failure into something actionable.
|
|
66
|
+
*
|
|
67
|
+
* There is deliberately no `capuchoo auth register`: confirming an email is a
|
|
68
|
+
* browser round-trip, so a CLI signup could only ever end with "now go and
|
|
69
|
+
* check your email". Accounts are created in the dashboard, and an unconfirmed
|
|
70
|
+
* one is the state most likely to bring someone here confused.
|
|
71
|
+
*/
|
|
72
|
+
static explainSignInFailure(error) {
|
|
73
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
74
|
+
if (/not confirmed/i.test(message)) {
|
|
75
|
+
return ("That account exists but its email has not been confirmed yet. Open the " +
|
|
76
|
+
"link in the sign-up email, then run this again.");
|
|
77
|
+
}
|
|
78
|
+
if (/invalid login credentials/i.test(message)) {
|
|
79
|
+
return ("That email and password were not accepted. If you have not signed up yet, " +
|
|
80
|
+
"create the account in the dashboard first - there is no signup here, " +
|
|
81
|
+
"because confirming an email needs a browser.");
|
|
82
|
+
}
|
|
83
|
+
return message;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Gets an API key, by signing in or by being handed one.
|
|
87
|
+
*
|
|
88
|
+
* Signing in is the default because pasting a key could not be the first step:
|
|
89
|
+
* keys are made in the dashboard, and an app-scoped one cannot create apps -
|
|
90
|
+
* so a new user had no way to reach a working state from the terminal at all.
|
|
91
|
+
*
|
|
92
|
+
* The token from `/auth/login` is used once, to mint a key, and then dropped.
|
|
93
|
+
* A JWT expires; a key does not, so you sign in once per machine.
|
|
94
|
+
*/
|
|
95
|
+
static async obtainKey(endpoint) {
|
|
96
|
+
if (!isInteractive()) {
|
|
97
|
+
throw new Error("Not a terminal, so there is nobody to ask. Pass --api-key, or set " +
|
|
98
|
+
"CAPUCHOO_ENDPOINT and CAPUCHOO_API_KEY.");
|
|
99
|
+
}
|
|
100
|
+
const method = await selectOne("How would you like to sign in?", [
|
|
101
|
+
{ value: "password", label: "Email and password", hint: "creates a key for this machine" },
|
|
102
|
+
{ value: "key", label: "Paste an API key", hint: "from the dashboard" },
|
|
103
|
+
], "--api-key");
|
|
104
|
+
if (method === "key") {
|
|
105
|
+
process.stderr.write(chalk.dim(`\n Create a key under Settings > API Keys at ${endpoint}\n\n`));
|
|
106
|
+
// Length only. Requiring a "cap_" prefix is a server-side format decision
|
|
107
|
+
// the CLI has no business enforcing.
|
|
108
|
+
return askSecret("API key");
|
|
109
|
+
}
|
|
110
|
+
const email = await askText("Email", { flag: "--api-key" });
|
|
111
|
+
// Never a flag: a password in argv is a password in shell history and CI logs.
|
|
112
|
+
const password = await askSecret("Password");
|
|
113
|
+
const spinner = ora({ text: "Signing in", stream: process.stderr }).start();
|
|
114
|
+
let session;
|
|
115
|
+
try {
|
|
116
|
+
session = await CloudClient.login(endpoint, email.trim(), password);
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
// A sign-in is usually the first request of a session, so it meets the
|
|
120
|
+
// backend at its coldest - and a host that sleeps when idle can take
|
|
121
|
+
// longer than the default timeout to answer. The second attempt lands on
|
|
122
|
+
// a service that is now awake.
|
|
123
|
+
if (!(error instanceof TimeoutError)) {
|
|
124
|
+
spinner.fail("Sign-in failed");
|
|
125
|
+
throw new Error(AuthLogin.explainSignInFailure(error));
|
|
126
|
+
}
|
|
127
|
+
spinner.text = "The backend was asleep - waking it and retrying";
|
|
128
|
+
try {
|
|
129
|
+
session = await CloudClient.login(endpoint, email.trim(), password, 120_000);
|
|
130
|
+
}
|
|
131
|
+
catch (retried) {
|
|
132
|
+
spinner.fail("Sign-in failed");
|
|
133
|
+
throw new Error(AuthLogin.explainSignInFailure(retried));
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
spinner.text = "Creating a key for this machine";
|
|
137
|
+
try {
|
|
138
|
+
const { key } = await new CloudClient(endpoint, session.token).createApiKey({
|
|
139
|
+
name: `capuchoo-cli ${hostname()}`,
|
|
140
|
+
});
|
|
141
|
+
spinner.succeed("Created a key for this machine");
|
|
142
|
+
return key;
|
|
143
|
+
}
|
|
144
|
+
catch (error) {
|
|
145
|
+
spinner.fail("Signed in, but could not create an API key");
|
|
146
|
+
throw new Error(error instanceof Error ? error.message : String(error));
|
|
147
|
+
}
|
|
148
|
+
}
|
|
70
149
|
}
|
|
71
150
|
//# sourceMappingURL=login.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../../src/commands/auth/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,gBAAgB,GAAG,oCAAoC,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,WAAW;IAChD,MAAM,CAAU,WAAW,GAAG,+BAA+B,CAAC;IAE9D,MAAM,CAAU,QAAQ,GAAG;QACzB,8BAA8B;QAC9B,oFAAoF;KACrF,CAAC;IAEF,MAAM,CAAU,KAAK,GAAG;QACtB,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC;YACtB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,mDAAmD;SACjE,CAAC;QACF,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;KACvE,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACjE,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,YAAqB,EAAE,UAAmB;QAClE,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;QAEpC,MAAM,QAAQ,GAAG,CACf,YAAY;YACZ,CAAC,MAAM,OAAO,CAAC,aAAa,EAAE;gBAC5B,OAAO,EAAE,QAAQ,CAAC,QAAQ,IAAI,gBAAgB;gBAC9C,IAAI,EAAE,YAAY;gBAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAClB,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,qCAAqC;aAC1F,CAAC,CAAC,CACJ;aACE,IAAI,EAAE;aACN,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAEvB,MAAM,MAAM,GAAG,CAAC,UAAU,IAAI,CAAC,MAAM,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAE5E,MAAM,OAAO,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QAC3E,MAAM,OAAO,GAAG,MAAM,IAAI,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;QAEjE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,0DAA0D,CAAC,CAAC;QACzF,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,gBAAgB,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAEtD,uEAAuE;QACvE,4EAA4E;QAC5E,2EAA2E;QAC3E,gEAAgE;QAChE,kBAAkB,CAAC;YACjB,QAAQ;YACR,MAAM;YACN,IAAI,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE;YACxD,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAC1C,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,oBAAoB,CAAC,KAAc;QACxC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEvE,IAAI,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,OAAO,CACL,yEAAyE;gBACzE,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,IAAI,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/C,OAAO,CACL,4EAA4E;gBAC5E,uEAAuE;gBACvE,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;;;OASG;IACK,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,QAAgB;QAC7C,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,oEAAoE;gBAClE,yCAAyC,CAC5C,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,gCAAgC,EAChC;YACE,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,gCAAgC,EAAE;YAC1F,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE,oBAAoB,EAAE;SACxE,EACD,WAAW,CACZ,CAAC;QAEF,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,KAAK,CAAC,GAAG,CAAC,iDAAiD,QAAQ,MAAM,CAAC,CAC3E,CAAC;YACF,0EAA0E;YAC1E,qCAAqC;YACrC,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAC5D,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC;QAE7C,MAAM,OAAO,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QAE5E,IAAI,OAAO,CAAC;QACZ,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uEAAuE;YACvE,qEAAqE;YACrE,yEAAyE;YACzE,+BAA+B;YAC/B,IAAI,CAAC,CAAC,KAAK,YAAY,YAAY,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC;YACzD,CAAC;YAED,OAAO,CAAC,IAAI,GAAG,iDAAiD,CAAC;YACjE,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC/E,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBACjB,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAED,OAAO,CAAC,IAAI,GAAG,iCAAiC,CAAC;QAEjD,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC;gBAC1E,IAAI,EAAE,gBAAgB,QAAQ,EAAE,EAAE;aACnC,CAAC,CAAC;YACH,OAAO,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;YAClD,OAAO,GAAG,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseCommand } from "../../base-command.js";
|
|
2
|
+
export default class AuthRevoke extends BaseCommand {
|
|
3
|
+
static description: string;
|
|
4
|
+
static examples: string[];
|
|
5
|
+
static args: {
|
|
6
|
+
id: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
};
|
|
8
|
+
static flags: {
|
|
9
|
+
yes: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
|
+
};
|
|
11
|
+
run(): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=revoke.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"revoke.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/revoke.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAKpD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,OAAgB,WAAW,SAAuB;IAElD,OAAgB,QAAQ,WAA0C;IAElE,OAAgB,IAAI;;MAElB;IAEF,OAAgB,KAAK;;MAEnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAuC3B"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Args, Flags } from "@oclif/core";
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
import { BaseCommand } from "../../base-command.js";
|
|
4
|
+
import { confirm, isInteractive, whileWaiting } from "../../cli/prompts.js";
|
|
5
|
+
import { requireCloud } from "../../cli/team.js";
|
|
6
|
+
import { resolveCredentials } from "../../utils/config.js";
|
|
7
|
+
export default class AuthRevoke extends BaseCommand {
|
|
8
|
+
static description = "Revoke an API key";
|
|
9
|
+
static examples = ["<%= config.bin %> auth revoke <id>"];
|
|
10
|
+
static args = {
|
|
11
|
+
id: Args.string({ description: "Key id, from capuchoo auth keys", required: true }),
|
|
12
|
+
};
|
|
13
|
+
static flags = {
|
|
14
|
+
yes: Flags.boolean({ char: "y", default: false, description: "Skip the confirmation" }),
|
|
15
|
+
};
|
|
16
|
+
async run() {
|
|
17
|
+
const { args, flags } = await this.parse(AuthRevoke);
|
|
18
|
+
const cloud = requireCloud(this);
|
|
19
|
+
const current = resolveCredentials();
|
|
20
|
+
const keys = await whileWaiting("Reading keys...", cloud.apiKeys());
|
|
21
|
+
const key = keys.find((candidate) => candidate.id === args.id);
|
|
22
|
+
if (!key) {
|
|
23
|
+
this.error(`No key with id "${args.id}". Run ${chalk.cyan("capuchoo auth keys")} to see them.`);
|
|
24
|
+
}
|
|
25
|
+
// Revoking the key in use signs this machine out, which is worth saying
|
|
26
|
+
// before it happens rather than after.
|
|
27
|
+
const isCurrent = key.key_prefix ? current?.apiKey.startsWith(key.key_prefix) : false;
|
|
28
|
+
if (!flags.yes) {
|
|
29
|
+
if (!isInteractive()) {
|
|
30
|
+
this.error(`Refusing to revoke "${key.name}" unattended. Pass --yes.`);
|
|
31
|
+
}
|
|
32
|
+
if (isCurrent) {
|
|
33
|
+
this.log("");
|
|
34
|
+
this.log(chalk.yellow(" This is the key this machine uses. Revoking it signs you out here."));
|
|
35
|
+
}
|
|
36
|
+
const proceed = await confirm(`Revoke "${key.name}"?`, { default: false });
|
|
37
|
+
if (!proceed)
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
await whileWaiting("Revoking...", cloud.revokeApiKey(key.id));
|
|
41
|
+
this.log("");
|
|
42
|
+
this.log(` ${chalk.green("Revoked")} ${key.name}`);
|
|
43
|
+
if (isCurrent)
|
|
44
|
+
this.log(chalk.dim(" Sign in again with: capuchoo auth login"));
|
|
45
|
+
this.log("");
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=revoke.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"revoke.js","sourceRoot":"","sources":["../../../src/commands/auth/revoke.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/whoami.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../../src/commands/auth/whoami.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,OAAgB,WAAW,SACiD;IAE5E,OAAgB,KAAK;;MAEnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAuG3B"}
|
|
@@ -2,6 +2,7 @@ import { Flags } from "@oclif/core";
|
|
|
2
2
|
import chalk from "chalk";
|
|
3
3
|
import { CloudClient } from "../../services/cloud.js";
|
|
4
4
|
import { resolveCredentials } from "../../utils/config.js";
|
|
5
|
+
import { whileWaiting } from "../../cli/prompts.js";
|
|
5
6
|
import { BaseCommand } from "../../base-command.js";
|
|
6
7
|
export default class AuthWhoami extends BaseCommand {
|
|
7
8
|
static description = "Show the signed-in account, and the organizations and apps it can reach";
|
|
@@ -26,7 +27,7 @@ export default class AuthWhoami extends BaseCommand {
|
|
|
26
27
|
// from the local config file - which login never wrote - so it always said
|
|
27
28
|
// "No apps found", and it reported a session as valid without checking.
|
|
28
29
|
const cloud = new CloudClient(credentials.endpoint, credentials.apiKey);
|
|
29
|
-
const profile = await cloud.whoami();
|
|
30
|
+
const profile = await whileWaiting("Reaching the backend...", cloud.whoami());
|
|
30
31
|
if (!profile) {
|
|
31
32
|
if (flags.json) {
|
|
32
33
|
this.log(JSON.stringify({ authenticated: false, endpoint: credentials.endpoint }, null, 2));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../../src/commands/auth/whoami.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAU,WAAW,GACzB,yEAAyE,CAAC;IAE5E,MAAM,CAAU,KAAK,GAAG;QACtB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,yBAAyB,EAAE,CAAC;KAChF,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC/C,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;QAEzC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC5D,OAAO;YACT,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACxD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QAED,yEAAyE;QACzE,2EAA2E;QAC3E,wEAAwE;QACxE,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../../src/commands/auth/whoami.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/channel/list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/channel/list.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,OAAgB,WAAW,SAAkD;IAE7E,OAAgB,KAAK;;MAEnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA6C3B"}
|
|
@@ -2,6 +2,7 @@ import { Flags } from "@oclif/core";
|
|
|
2
2
|
import chalk from "chalk";
|
|
3
3
|
import { CloudClient } from "../../services/cloud.js";
|
|
4
4
|
import { requireProjectConfig, resolveCredentials } from "../../utils/config.js";
|
|
5
|
+
import { whileWaiting } from "../../cli/prompts.js";
|
|
5
6
|
import { BaseCommand } from "../../base-command.js";
|
|
6
7
|
export default class ChannelList extends BaseCommand {
|
|
7
8
|
static description = "List this app's channels and what they serve";
|
|
@@ -16,7 +17,7 @@ export default class ChannelList extends BaseCommand {
|
|
|
16
17
|
this.error(`Not authenticated. Run ${chalk.cyan("capuchoo auth login")}.`);
|
|
17
18
|
}
|
|
18
19
|
const cloud = new CloudClient(credentials.endpoint, credentials.apiKey);
|
|
19
|
-
const channels = await cloud.channels(project.cloudAppId);
|
|
20
|
+
const channels = await whileWaiting("Reading channels...", cloud.channels(project.cloudAppId));
|
|
20
21
|
if (flags.json) {
|
|
21
22
|
this.log(JSON.stringify(channels, null, 2));
|
|
22
23
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/channel/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAClD,MAAM,CAAU,WAAW,GAAG,8CAA8C,CAAC;IAE7E,MAAM,CAAU,KAAK,GAAG;QACtB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,yBAAyB,EAAE,CAAC;KAChF,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAEpD,MAAM,WAAW,GAAG,kBAAkB,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,0BAA0B,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,WAAW,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QACxE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/channel/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,8 @@ export default class Doctor extends BaseCommand {
|
|
|
21
21
|
* they install, and that is invisible until it happens on a device.
|
|
22
22
|
*/
|
|
23
23
|
private checkRuntimeWiring;
|
|
24
|
+
/** Whether a release build could be signed. Never blocking: debug and unsigned are valid choices. */
|
|
25
|
+
private checkReleaseSigning;
|
|
24
26
|
/** Shallow-ish walk: enough to find an import, cheap enough to run always. */
|
|
25
27
|
private sourceFiles;
|
|
26
28
|
private report;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAgBjD;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,WAAW;IAC7C,OAAgB,WAAW,SAAsE;IAEjG,OAAgB,QAAQ,WAAgC;IAElD,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAiO1B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IA6D1B,qGAAqG;IACrG,OAAO,CAAC,mBAAmB;IA2C3B,8EAA8E;IAC9E,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,MAAM;CA0Bf"}
|
package/dist/commands/doctor.js
CHANGED
|
@@ -2,7 +2,10 @@ import { canPublishTo, hasEnvironmentMismatch, normaliseProjectConfig, suggestEn
|
|
|
2
2
|
import chalk from "chalk";
|
|
3
3
|
import fs from "node:fs";
|
|
4
4
|
import path from "node:path";
|
|
5
|
+
import { whileWaiting } from "../cli/prompts.js";
|
|
5
6
|
import { BaseCommand } from "../base-command.js";
|
|
7
|
+
import { describeSigning } from "../pipeline/android-signing.js";
|
|
8
|
+
import { androidSigningState } from "../deploy/signing.js";
|
|
6
9
|
import { CloudClient } from "../services/cloud.js";
|
|
7
10
|
import { readProjectConfig, resolveCredentials } from "../utils/config.js";
|
|
8
11
|
/**
|
|
@@ -29,15 +32,32 @@ export default class Doctor extends BaseCommand {
|
|
|
29
32
|
}
|
|
30
33
|
findings.push({ level: "ok", what: "Endpoint", detail: credentials.endpoint });
|
|
31
34
|
const cloud = new CloudClient(credentials.endpoint, credentials.apiKey);
|
|
32
|
-
|
|
35
|
+
// Unreachable and rejected are different problems with different fixes, and
|
|
36
|
+
// conflating them is worse than saying nothing. This reported "Credentials
|
|
37
|
+
// rejected - the endpoint did not accept the stored API key" for a backend
|
|
38
|
+
// that was merely asleep: the key was valid, the very next run proved it,
|
|
39
|
+
// and the message had sent someone looking at credentials with confidence.
|
|
40
|
+
let profile;
|
|
41
|
+
try {
|
|
42
|
+
profile = await whileWaiting("Reaching the backend...", cloud.whoami());
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
findings.push({
|
|
46
|
+
level: "fail",
|
|
47
|
+
what: "The backend could not be reached",
|
|
48
|
+
detail: `${credentials.endpoint} - ${error instanceof Error ? error.message : String(error)}`,
|
|
49
|
+
fix: "Check the endpoint and the connection, then run doctor again. A host " +
|
|
50
|
+
"that sleeps when idle can time out on its first request and answer the second.",
|
|
51
|
+
});
|
|
52
|
+
this.report(findings);
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
33
55
|
if (!profile) {
|
|
34
56
|
findings.push({
|
|
35
57
|
level: "fail",
|
|
36
58
|
what: "Credentials rejected",
|
|
37
|
-
detail: `${credentials.endpoint}
|
|
38
|
-
|
|
39
|
-
// /health but validates nothing.
|
|
40
|
-
fix: `capuchoo config set endpoint <url> (or capuchoo auth login)`,
|
|
59
|
+
detail: `${credentials.endpoint} answered, and refused the stored API key`,
|
|
60
|
+
fix: `capuchoo auth login (or capuchoo config set endpoint <url>)`,
|
|
41
61
|
});
|
|
42
62
|
this.report(findings);
|
|
43
63
|
return;
|
|
@@ -66,7 +86,8 @@ export default class Doctor extends BaseCommand {
|
|
|
66
86
|
// An app-scoped key lists every app the account owns and is refused only by
|
|
67
87
|
// the endpoints that publish - so without this check the first sign of a
|
|
68
88
|
// mismatch is a 403 at step 7 of 7, after a full build and zip.
|
|
69
|
-
|
|
89
|
+
const outOfScope = !canPublishTo(profile, project.cloudAppId);
|
|
90
|
+
if (outOfScope) {
|
|
70
91
|
const scoped = profile.apps.find((app) => app.id === profile.credential?.app_id);
|
|
71
92
|
findings.push({
|
|
72
93
|
level: "fail",
|
|
@@ -78,14 +99,25 @@ export default class Doctor extends BaseCommand {
|
|
|
78
99
|
});
|
|
79
100
|
}
|
|
80
101
|
// --- channels ------------------------------------------------------------
|
|
81
|
-
const channels = await cloud.channels(project.cloudAppId).catch(() => null);
|
|
102
|
+
const channels = await whileWaiting("Reading channels...", cloud.channels(project.cloudAppId)).catch(() => null);
|
|
82
103
|
if (!channels) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
104
|
+
// An out-of-scope key is refused by this endpoint too, and blaming the app
|
|
105
|
+
// for that is a second wrong diagnosis on top of a correct one: doctor
|
|
106
|
+
// reported "deleted, or belongs to another account" for an app that exists
|
|
107
|
+
// and is fine, one line after correctly saying the key was for another app.
|
|
108
|
+
findings.push(outOfScope
|
|
109
|
+
? {
|
|
110
|
+
level: "fail",
|
|
111
|
+
what: "This app's channels could not be read",
|
|
112
|
+
detail: "The same key restriction reported above also blocks reading them",
|
|
113
|
+
fix: "capuchoo auth login (with a key for this app, or an unscoped one)",
|
|
114
|
+
}
|
|
115
|
+
: {
|
|
116
|
+
level: "fail",
|
|
117
|
+
what: "The linked cloud app could not be read",
|
|
118
|
+
detail: `cloudAppId ${project.cloudAppId} - deleted, or belongs to another account`,
|
|
119
|
+
fix: "capuchoo init --force",
|
|
120
|
+
});
|
|
89
121
|
this.report(findings);
|
|
90
122
|
return;
|
|
91
123
|
}
|
|
@@ -175,6 +207,7 @@ export default class Doctor extends BaseCommand {
|
|
|
175
207
|
});
|
|
176
208
|
}
|
|
177
209
|
findings.push(...this.checkRuntimeWiring(appDir));
|
|
210
|
+
findings.push(...this.checkReleaseSigning(appDir));
|
|
178
211
|
this.report(findings);
|
|
179
212
|
}
|
|
180
213
|
/**
|
|
@@ -234,6 +267,46 @@ export default class Doctor extends BaseCommand {
|
|
|
234
267
|
}
|
|
235
268
|
return findings;
|
|
236
269
|
}
|
|
270
|
+
/** Whether a release build could be signed. Never blocking: debug and unsigned are valid choices. */
|
|
271
|
+
checkReleaseSigning(appDir) {
|
|
272
|
+
const status = androidSigningState(appDir);
|
|
273
|
+
if (!status)
|
|
274
|
+
return [];
|
|
275
|
+
if (status.kind === "unconfigured") {
|
|
276
|
+
return [
|
|
277
|
+
{
|
|
278
|
+
level: "warn",
|
|
279
|
+
what: "Release signing is not configured",
|
|
280
|
+
detail: describeSigning(status),
|
|
281
|
+
fix: `Add ${status.missing.join(", ")} to android/local.properties, or deploy with --type debug`,
|
|
282
|
+
},
|
|
283
|
+
];
|
|
284
|
+
}
|
|
285
|
+
if (status.kind === "unsigned") {
|
|
286
|
+
return [
|
|
287
|
+
{
|
|
288
|
+
level: "warn",
|
|
289
|
+
what: "The release build type signs with nothing",
|
|
290
|
+
detail: describeSigning(status),
|
|
291
|
+
fix: "Add a signingConfig to android/app/build.gradle, or deploy with --type debug",
|
|
292
|
+
},
|
|
293
|
+
];
|
|
294
|
+
}
|
|
295
|
+
if (status.storeFile) {
|
|
296
|
+
const resolved = path.resolve(appDir, "android", "app", status.storeFile);
|
|
297
|
+
if (!fs.existsSync(resolved)) {
|
|
298
|
+
return [
|
|
299
|
+
{
|
|
300
|
+
level: "warn",
|
|
301
|
+
what: "The release keystore is missing",
|
|
302
|
+
detail: `signingConfigs.${status.configName} points at ${status.storeFile}, which does not exist`,
|
|
303
|
+
fix: `Put the keystore at ${resolved}, or correct the path in android/local.properties`,
|
|
304
|
+
},
|
|
305
|
+
];
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
return [{ level: "ok", what: "Release signing", detail: describeSigning(status) }];
|
|
309
|
+
}
|
|
237
310
|
/** Shallow-ish walk: enough to find an import, cheap enough to run always. */
|
|
238
311
|
sourceFiles(dir, depth = 0) {
|
|
239
312
|
if (depth > 3 || !fs.existsSync(dir))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -13,15 +13,47 @@ export default class Init extends BaseCommand {
|
|
|
13
13
|
};
|
|
14
14
|
run(): Promise<void>;
|
|
15
15
|
/**
|
|
16
|
-
* Creates the
|
|
17
|
-
*
|
|
18
|
-
*
|
|
16
|
+
* Creates the channels a linked app needs before anything can be deployed.
|
|
17
|
+
*
|
|
18
|
+
* Without `--channel` this creates the standard three - prod, staging and dev,
|
|
19
|
+
* each on its matching environment. That is the pipeline every app wants, and
|
|
20
|
+
* an app that had none failed its first deploy on a channel/environment
|
|
21
|
+
* pairing the user had to work out from an error message.
|
|
22
|
+
*
|
|
23
|
+
* `--channel <name>` still creates exactly one, because naming a channel is a
|
|
24
|
+
* statement of intent: a per-client or A/B channel is an audience rather than
|
|
25
|
+
* a stage, and belongs on the prod environment rather than in a set of three.
|
|
19
26
|
*/
|
|
20
27
|
private offerFirstChannel;
|
|
28
|
+
/**
|
|
29
|
+
* Creates prod, staging and dev, each on its matching environment.
|
|
30
|
+
*
|
|
31
|
+
* Created rather than offered one at a time: an app with no channel cannot be
|
|
32
|
+
* deployed to at all, and these three are never the wrong answer - they are
|
|
33
|
+
* the environments the CLI already builds for. Asking "channel name?" made the
|
|
34
|
+
* first thing a new user saw a question they had no basis to answer.
|
|
35
|
+
*
|
|
36
|
+
* Each is attempted independently. A partial result is useful, and one
|
|
37
|
+
* failure - a name already taken, say - should not cost the other two.
|
|
38
|
+
*/
|
|
39
|
+
private createDefaultChannels;
|
|
40
|
+
/** Reads the files that declare an app's identity, skipping any that are absent. */
|
|
41
|
+
private projectFiles;
|
|
42
|
+
private detectIdentity;
|
|
43
|
+
private conflictingIds;
|
|
21
44
|
/** Detects which flavours the project actually has files for. */
|
|
22
45
|
private detectFlavours;
|
|
23
46
|
/** Reads `webDir` out of capacitor.config.* so the CLI zips the right folder. */
|
|
24
47
|
private detectWebDir;
|
|
48
|
+
/**
|
|
49
|
+
* Whether to link or create, answered by the project rather than asked.
|
|
50
|
+
*
|
|
51
|
+
* "Existing app, or a new one?" was the first question `init` asked, and the
|
|
52
|
+
* project already knows: the bundle id it declares either exists on the
|
|
53
|
+
* account or it does not. Only an ambiguous project - no detectable id - is
|
|
54
|
+
* still a question.
|
|
55
|
+
*/
|
|
56
|
+
private resolveMode;
|
|
25
57
|
private linkExisting;
|
|
26
58
|
private createNew;
|
|
27
59
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAoCA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AASjD,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,WAAW;IAC3C,OAAgB,WAAW,SACgD;IAE3E,OAAgB,QAAQ,WAKtB;IAEF,OAAgB,KAAK;;;;;;;;MAqCnB;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAsJ1B;;;;;;;;;;;OAWG;YACW,iBAAiB;IAiD/B;;;;;;;;;;OAUG;YACW,qBAAqB;IAyCnC,oFAAoF;IACpF,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,cAAc;IAItB,iEAAiE;IACjE,OAAO,CAAC,cAAc;IAatB,iFAAiF;IACjF,OAAO,CAAC,YAAY;IAYpB;;;;;;;OAOG;YACW,WAAW;YAkCX,YAAY;YA2BZ,SAAS;CAsGxB"}
|