@supatype/cli 0.3.0 → 0.3.1
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/.turbo/turbo-build.log +1 -1
- package/.turbo/turbo-test.log +159 -160
- package/.turbo/turbo-typecheck.log +1 -1
- package/dist/cli-version-embedded.js +1 -1
- package/dist/commands/admin.d.ts.map +1 -1
- package/dist/commands/admin.js +21 -4
- package/dist/commands/admin.js.map +1 -1
- package/dist/commands/keys.d.ts +35 -0
- package/dist/commands/keys.d.ts.map +1 -1
- package/dist/commands/keys.js +90 -6
- package/dist/commands/keys.js.map +1 -1
- package/dist/commands/push.d.ts.map +1 -1
- package/dist/commands/push.js +9 -0
- package/dist/commands/push.js.map +1 -1
- package/dist/dev-compose.d.ts +13 -0
- package/dist/dev-compose.d.ts.map +1 -1
- package/dist/dev-compose.js +101 -9
- package/dist/dev-compose.js.map +1 -1
- package/dist/model-cache.d.ts +27 -0
- package/dist/model-cache.d.ts.map +1 -1
- package/dist/model-cache.js +61 -0
- package/dist/model-cache.js.map +1 -1
- package/dist/self-host-compose.d.ts.map +1 -1
- package/dist/self-host-compose.js +47 -3
- package/dist/self-host-compose.js.map +1 -1
- package/package.json +2 -2
- package/src/cli-version-embedded.ts +1 -1
- package/src/commands/admin.ts +23 -6
- package/src/commands/keys.ts +112 -7
- package/src/commands/push.ts +11 -0
- package/src/dev-compose.ts +133 -8
- package/src/model-cache.ts +48 -0
- package/src/self-host-compose.ts +47 -3
- package/tests/keys-write.test.ts +148 -0
- package/tsconfig.tsbuildinfo +1 -1
package/dist/commands/keys.d.ts
CHANGED
|
@@ -1,5 +1,40 @@
|
|
|
1
1
|
import type { Command } from "commander";
|
|
2
2
|
export declare function registerKeys(program: Command): void;
|
|
3
|
+
/**
|
|
4
|
+
* Every env name a minted key pair is written to, in one place.
|
|
5
|
+
*
|
|
6
|
+
* Shared with `supatype dev`, which writes the same pair when it starts a stack. They used to hold
|
|
7
|
+
* separate lists, so a front end's prefix could be written by one and forgotten by the other, and
|
|
8
|
+
* which names your `.env` ended up with depended on whichever command you happened to run last.
|
|
9
|
+
*
|
|
10
|
+
* The URL names are only included when there is a URL to write, because an empty
|
|
11
|
+
* `VITE_SUPATYPE_URL` is worse than an absent one: the client reads it, finds a blank string, and
|
|
12
|
+
* requests against the page origin without saying why.
|
|
13
|
+
*/
|
|
14
|
+
export declare function anonKeyEnvUpdates(anonKey: string, serviceKey: string, apiUrl?: string | undefined): Record<string, string>;
|
|
15
|
+
export interface WriteKeysResult {
|
|
16
|
+
/** The .env written, or null when there is none here. */
|
|
17
|
+
path: string | null;
|
|
18
|
+
written: string[];
|
|
19
|
+
kept: string[];
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Write a minted pair into `dir`'s .env.
|
|
23
|
+
*
|
|
24
|
+
* Blanks only by default. An anon key already in `.env` is held by clients this command cannot
|
|
25
|
+
* reach, and reissuing it locks them out, so filling what is empty is the useful half and
|
|
26
|
+
* replacing what is not is a decision someone has to make out loud. `--force` is how they make it,
|
|
27
|
+
* and it rewrites every name this owns rather than only the empty ones.
|
|
28
|
+
*
|
|
29
|
+
* `--force` does not rewrite the file. `.env` also holds `JWT_SECRET`, which these keys are
|
|
30
|
+
* derived from, along with the database password and whatever else the project keeps there;
|
|
31
|
+
* replacing the file would leave a project whose keys cannot be regenerated and whose stack cannot
|
|
32
|
+
* start. Every line this command does not own is left exactly as it was, comments included.
|
|
33
|
+
*/
|
|
34
|
+
export declare function writeKeysToEnv(dir: string, keys: {
|
|
35
|
+
anonKey: string;
|
|
36
|
+
serviceKey: string;
|
|
37
|
+
}, force: boolean): WriteKeysResult;
|
|
3
38
|
/** Mint a long-lived anon + service_role JWT pair from a secret. */
|
|
4
39
|
export declare function signKeyPair(secret: string, expYears?: number): {
|
|
5
40
|
anonKey: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/commands/keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/commands/keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAOxC,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmDnD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAaxB;AAED,MAAM,WAAW,eAAe;IAC9B,yDAAyD;IACzD,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,IAAI,EAAE,MAAM,EAAE,CAAA;CACf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,EACX,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAC7C,KAAK,EAAE,OAAO,GACb,eAAe,CAsBjB;AAID,oEAAoE;AACpE,wBAAgB,WAAW,CACzB,MAAM,EAAE,MAAM,EACd,QAAQ,SAAK,GACZ;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAOzC;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,EACX,QAAQ,SAAK,GACZ;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAuBhD;AAsBD,wBAAgB,aAAa,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,GAAG,SAAS,CAsB7E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,SAAK,GAAG,MAAM,EAAE,CAyBpE"}
|
package/dist/commands/keys.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { existsSync, readFileSync, writeFileSync } from "node:fs";
|
|
2
2
|
import { resolve } from "node:path";
|
|
3
|
+
import { readEnvFile, upsertEnvFile } from "../env-file.js";
|
|
3
4
|
import { signJwt } from "../jwt.js";
|
|
4
5
|
import { error, plain } from "../ui/messages.js";
|
|
5
6
|
export function registerKeys(program) {
|
|
@@ -8,6 +9,8 @@ export function registerKeys(program) {
|
|
|
8
9
|
.description("Generate ANON_KEY and SERVICE_ROLE_KEY JWTs from your JWT_SECRET")
|
|
9
10
|
.option("--secret <secret>", "JWT secret (defaults to JWT_SECRET env var or value in .env)")
|
|
10
11
|
.option("--exp-years <years>", "Token expiry in years (default: 10)", "10")
|
|
12
|
+
.option("--write", "Write the keys into .env in the current directory instead of printing them")
|
|
13
|
+
.option("--force", "With --write, replace every key already in .env rather than filling blanks")
|
|
11
14
|
.action((opts) => {
|
|
12
15
|
const secret = opts.secret ?? resolveSecret();
|
|
13
16
|
if (!secret) {
|
|
@@ -19,16 +22,93 @@ export function registerKeys(program) {
|
|
|
19
22
|
error("--exp-years must be a positive integer");
|
|
20
23
|
process.exit(1);
|
|
21
24
|
}
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
25
|
+
const { anonKey, serviceKey } = signKeyPair(secret, expYears);
|
|
26
|
+
if (opts.write) {
|
|
27
|
+
const written = writeKeysToEnv(process.cwd(), { anonKey, serviceKey }, opts.force === true);
|
|
28
|
+
if (written.path === null) {
|
|
29
|
+
error("No .env here to write to. Create one, or drop --write to print the keys.");
|
|
30
|
+
process.exit(1);
|
|
31
|
+
}
|
|
32
|
+
plain(`\nKeys valid for ${expYears} years, written to ${written.path}:\n`);
|
|
33
|
+
// The names come back from the writer rather than being restated here, which is the whole
|
|
34
|
+
// point of there being one list.
|
|
35
|
+
for (const key of written.written)
|
|
36
|
+
plain(` ${key}`);
|
|
37
|
+
if (written.kept.length > 0) {
|
|
38
|
+
plain(`\nLeft alone, because they already hold a value:\n`);
|
|
39
|
+
for (const key of written.kept)
|
|
40
|
+
plain(` ${key}`);
|
|
41
|
+
plain("\nRe-run with --force to replace them.");
|
|
42
|
+
}
|
|
43
|
+
plain("\nDo not commit .env to source control.");
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
26
46
|
plain(`\nGenerated keys (valid for ${expYears} years):\n`);
|
|
27
47
|
plain("ANON_KEY=" + anonKey);
|
|
28
48
|
plain("SERVICE_ROLE_KEY=" + serviceKey);
|
|
29
|
-
plain("\nAdd these to your .env file. Do not commit .env to source control.");
|
|
49
|
+
plain("\nAdd these to your .env file, or re-run with --write. Do not commit .env to source control.");
|
|
30
50
|
});
|
|
31
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* Every env name a minted key pair is written to, in one place.
|
|
54
|
+
*
|
|
55
|
+
* Shared with `supatype dev`, which writes the same pair when it starts a stack. They used to hold
|
|
56
|
+
* separate lists, so a front end's prefix could be written by one and forgotten by the other, and
|
|
57
|
+
* which names your `.env` ended up with depended on whichever command you happened to run last.
|
|
58
|
+
*
|
|
59
|
+
* The URL names are only included when there is a URL to write, because an empty
|
|
60
|
+
* `VITE_SUPATYPE_URL` is worse than an absent one: the client reads it, finds a blank string, and
|
|
61
|
+
* requests against the page origin without saying why.
|
|
62
|
+
*/
|
|
63
|
+
export function anonKeyEnvUpdates(anonKey, serviceKey, apiUrl) {
|
|
64
|
+
return {
|
|
65
|
+
ANON_KEY: anonKey,
|
|
66
|
+
SERVICE_ROLE_KEY: serviceKey,
|
|
67
|
+
VITE_SUPATYPE_ANON_KEY: anonKey,
|
|
68
|
+
PUBLIC_SUPATYPE_ANON_KEY: anonKey,
|
|
69
|
+
EXPO_PUBLIC_SUPATYPE_ANON_KEY: anonKey,
|
|
70
|
+
...(apiUrl !== undefined && {
|
|
71
|
+
VITE_SUPATYPE_URL: apiUrl,
|
|
72
|
+
PUBLIC_SUPATYPE_URL: apiUrl,
|
|
73
|
+
EXPO_PUBLIC_SUPATYPE_URL: apiUrl,
|
|
74
|
+
}),
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Write a minted pair into `dir`'s .env.
|
|
79
|
+
*
|
|
80
|
+
* Blanks only by default. An anon key already in `.env` is held by clients this command cannot
|
|
81
|
+
* reach, and reissuing it locks them out, so filling what is empty is the useful half and
|
|
82
|
+
* replacing what is not is a decision someone has to make out loud. `--force` is how they make it,
|
|
83
|
+
* and it rewrites every name this owns rather than only the empty ones.
|
|
84
|
+
*
|
|
85
|
+
* `--force` does not rewrite the file. `.env` also holds `JWT_SECRET`, which these keys are
|
|
86
|
+
* derived from, along with the database password and whatever else the project keeps there;
|
|
87
|
+
* replacing the file would leave a project whose keys cannot be regenerated and whose stack cannot
|
|
88
|
+
* start. Every line this command does not own is left exactly as it was, comments included.
|
|
89
|
+
*/
|
|
90
|
+
export function writeKeysToEnv(dir, keys, force) {
|
|
91
|
+
const envPath = resolve(dir, ".env");
|
|
92
|
+
if (!existsSync(envPath))
|
|
93
|
+
return { path: null, written: [], kept: [] };
|
|
94
|
+
const existing = readEnvFile(dir);
|
|
95
|
+
const apiUrl = existing["PUBLIC_SUPATYPE_URL"] || existing["API_EXTERNAL_URL"] || undefined;
|
|
96
|
+
const candidates = anonKeyEnvUpdates(keys.anonKey, keys.serviceKey, apiUrl);
|
|
97
|
+
const updates = {};
|
|
98
|
+
const kept = [];
|
|
99
|
+
for (const [name, value] of Object.entries(candidates)) {
|
|
100
|
+
// Blank counts as absent: a template ships `ANON_KEY=` and that is exactly the line to fill.
|
|
101
|
+
const current = existing[name]?.trim() ?? "";
|
|
102
|
+
if (!force && current !== "") {
|
|
103
|
+
kept.push(name);
|
|
104
|
+
continue;
|
|
105
|
+
}
|
|
106
|
+
updates[name] = value;
|
|
107
|
+
}
|
|
108
|
+
if (Object.keys(updates).length > 0)
|
|
109
|
+
upsertEnvFile(dir, updates);
|
|
110
|
+
return { path: envPath, written: Object.keys(updates), kept };
|
|
111
|
+
}
|
|
32
112
|
// ─── Helpers ─────────────────────────────────────────────────────────────────
|
|
33
113
|
/** Mint a long-lived anon + service_role JWT pair from a secret. */
|
|
34
114
|
export function signKeyPair(secret, expYears = 10) {
|
|
@@ -73,6 +153,10 @@ function upsertEnvVar(content, key, value) {
|
|
|
73
153
|
const sep = content.endsWith("\n") || content.length === 0 ? "" : "\n";
|
|
74
154
|
return `${content}${sep}${key}=${value}\n`;
|
|
75
155
|
}
|
|
156
|
+
/** Whether `.env` declares `key` at all, with or without a value. */
|
|
157
|
+
function hasEnvLine(content, key) {
|
|
158
|
+
return new RegExp(`^${key}=`, "m").test(content);
|
|
159
|
+
}
|
|
76
160
|
function readEnvVar(content, key) {
|
|
77
161
|
const re = new RegExp(`^${key}=(.*)$`, "m");
|
|
78
162
|
const match = re.exec(content);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/commands/keys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/commands/keys.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA0DxC,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsDnD"}
|
package/dist/commands/push.js
CHANGED
|
@@ -3,6 +3,7 @@ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
|
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { loadConfig, loadSchemaAst } from "../config.js";
|
|
5
5
|
import { syncManifestHooks, validateModelHooks, validateModelValidators, writeHooksModule, } from "../model-hooks.js";
|
|
6
|
+
import { syncRowCacheEnv } from "../model-cache.js";
|
|
6
7
|
import { adapterEntry, readHookUpload } from "../hook-upload.js";
|
|
7
8
|
import { checkServiceRoleRoutes, serviceRoleProblemLines } from "../service-role-check.js";
|
|
8
9
|
import { fatalError } from "../ui/fatal.js";
|
|
@@ -222,6 +223,14 @@ async function generateTypesLocal(ast, config) {
|
|
|
222
223
|
// The server watches this file, so a changed hook takes effect without a restart.
|
|
223
224
|
if (syncManifestHooks(cwd, ast))
|
|
224
225
|
info("Hook map written to .supatype/manifest.json");
|
|
226
|
+
// The row cache is configured at postmaster start, so this is the one cache setting a push
|
|
227
|
+
// cannot make take effect on its own.
|
|
228
|
+
const rowCache = syncRowCacheEnv(cwd, ast);
|
|
229
|
+
if (rowCache !== null) {
|
|
230
|
+
info(`Row cache switched ${rowCache} in .env. Recreate the database container for it to take ` +
|
|
231
|
+
"effect: the image writes pg_keyspace.conf at start, so a running Postgres keeps the " +
|
|
232
|
+
"setting it booted with.");
|
|
233
|
+
}
|
|
225
234
|
if (!config.output?.types && !config.output?.client)
|
|
226
235
|
return;
|
|
227
236
|
// The CLI writes these, it does not ask the engine to. Passing types_path and client_path and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../src/commands/push.ts"],"names":[],"mappings":"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"}
|
package/dist/dev-compose.d.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* `supatype dev` when `provider: docker`, full self-host Compose stack (Kong gateway).
|
|
3
3
|
*/
|
|
4
4
|
import { type SupatypeProjectConfig } from "./project-config.js";
|
|
5
|
+
import { type SelfHostComposePaths } from "./self-host-compose.js";
|
|
5
6
|
import type { DockerBrandOptions } from "./docker-runtime.js";
|
|
6
7
|
import { type DiffResult } from "./engine-client.js";
|
|
7
8
|
/** Sync optional Docker image pins from config into `.env` (no JWT rotation). */
|
|
@@ -41,4 +42,16 @@ export declare function diffSchemaDocker(cwd: string, config: SupatypeProjectCon
|
|
|
41
42
|
*/
|
|
42
43
|
export declare function pushSchemaDocker(cwd: string, config: SupatypeProjectConfig): Promise<void>;
|
|
43
44
|
export declare function runDevCompose(cwd: string, config: SupatypeProjectConfig, opts: DevComposeOptions): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Write `admin-config.json` and the generated types using the in-compose engine.
|
|
47
|
+
*
|
|
48
|
+
* The fallback for a host engine that could not be fetched. Without it, a `supatype dev` that
|
|
49
|
+
* applied the schema perfectly well still left no `admin-config.json`, and Studio reads that file
|
|
50
|
+
* to decide whether a schema exists: the stack came up, every table was live, the API served them,
|
|
51
|
+
* and Studio said **"No schema has been pushed yet."** The warning that preceded it named the
|
|
52
|
+
* download, not the consequence, so nothing connected the two.
|
|
53
|
+
*
|
|
54
|
+
* Returns true when the admin config was written, which is the file Studio actually needs.
|
|
55
|
+
*/
|
|
56
|
+
export declare function generateViaComposeEngine(paths: SelfHostComposePaths, cwd: string, composeProject: string, config: SupatypeProjectConfig, ast: unknown, adminConfigPath: string): Promise<boolean>;
|
|
44
57
|
//# sourceMappingURL=dev-compose.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev-compose.d.ts","sourceRoot":"","sources":["../src/dev-compose.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,EAQL,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"dev-compose.d.ts","sourceRoot":"","sources":["../src/dev-compose.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,EAQL,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAA;AAU5B,OAAO,EASL,KAAK,oBAAoB,EAC1B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAQ7D,OAAO,EAA+B,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AA4BjF,iFAAiF;AACjF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,IAAI,CASrF;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAA;CACf;AAED,kEAAkE;AAClE,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAIhD;AA+BD;;;GAGG;AACH,wBAAsB,oCAAoC,CACxD,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,qBAAqB,EAC7B,KAAK,CAAC,EAAE,kBAAkB,GACzB,OAAO,CAAC,IAAI,CAAC,CAuBf;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,qBAAqB,EAC7B,kBAAkB,CAAC,EAAE,MAAM,GAC1B,OAAO,CAOT;AAED;;;;GAIG;AACH,wBAAsB,4BAA4B,CAChD,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,qBAAqB,EAC7B,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,CAQjB;AAoED,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CAiFN;AAkiBD;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAsDtG;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8ChG;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+QtH;AAsID;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,oBAAoB,EAC3B,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,qBAAqB,EAC7B,GAAG,EAAE,OAAO,EACZ,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC,CAwBlB"}
|
package/dist/dev-compose.js
CHANGED
|
@@ -11,13 +11,15 @@ import { loadSchemaAst } from "./config.js";
|
|
|
11
11
|
import { withComposeSchemaPushLock } from "./schema-push-lock.js";
|
|
12
12
|
import { connectionString, projectRootFromConfig, resolveRuntimeProvider, hooksPathFromProject, schemaPathFromProject, usesExternalDatabase, } from "./project-config.js";
|
|
13
13
|
import { syncManifestHooks, writeHooksModule } from "./model-hooks.js";
|
|
14
|
+
import { syncRowCacheEnv } from "./model-cache.js";
|
|
15
|
+
import { anonKeyEnvUpdates } from "./commands/keys.js";
|
|
14
16
|
import { signJwt } from "./jwt.js";
|
|
15
17
|
import { ensureDevDbPort, ensureKongPort } from "./dev-ports.js";
|
|
16
18
|
import { handleComposeProjectRename } from "./compose-rename.js";
|
|
17
19
|
import { recoverStaleDevSession, writeDevSessionLock } from "./dev-session-lock.js";
|
|
18
20
|
import { endDevSession, startDevSession } from "./dev-session.js";
|
|
19
21
|
import { ensureDevApiConfig } from "./ensure-dev-api-config.js";
|
|
20
|
-
import { COMPOSE_PINNED_IMAGE_ENV_KEYS, composeDockerImageEnv, composeProjectName, exitComposeFailed, runDockerCompose, schemaEngineImageForPush, writeSelfHostCompose, } from "./self-host-compose.js";
|
|
22
|
+
import { COMPOSE_PINNED_IMAGE_ENV_KEYS, composeDockerImageEnv, composeProjectName, exitComposeFailed, runDockerCompose, schemaEngineImageForPush, writeSelfHostCompose, selfHostComposePaths, } from "./self-host-compose.js";
|
|
21
23
|
import { hasEngineOverride } from "./binary-cache.js";
|
|
22
24
|
import { STUDIO_DEV_PORT, startStudioViteDevServer } from "./studio-dev-server.js";
|
|
23
25
|
import { ensureLocalServerDockerImage, usesLocalServerImage, LOCAL_SERVER_DOCKER_IMAGE, } from "./compose-local-server-image.js";
|
|
@@ -214,13 +216,13 @@ export function upsertDevComposeEnv(cwd, config, anonKey, serviceRoleKey, kongPo
|
|
|
214
216
|
...seedMissingLocalSecrets(cwd),
|
|
215
217
|
// Project configuration, seeded not overwritten, see seedMissingDatabaseIdentity.
|
|
216
218
|
...seedMissingDatabaseIdentity(cwd),
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
219
|
+
// Shared with `supatype keys --write`, so a front end's prefix cannot be written by one and
|
|
220
|
+
// forgotten by the other. See `anonKeyEnvUpdates`.
|
|
221
|
+
//
|
|
222
|
+
// This list used to live here as well, and the two had already drifted: `dev` wrote
|
|
223
|
+
// PUBLIC_ and EXPO_PUBLIC_ URLs and no VITE_SUPATYPE_URL, so a Vite app whose `.env` had only
|
|
224
|
+
// ever been touched by `supatype dev` built against an empty string.
|
|
225
|
+
...anonKeyEnvUpdates(anonKey, serviceRoleKey, apiUrl),
|
|
224
226
|
SUPATYPE_KONG_PORT: String(kongPort),
|
|
225
227
|
API_EXTERNAL_URL: apiUrl,
|
|
226
228
|
SITE_URL: apiUrl,
|
|
@@ -469,11 +471,32 @@ async function refreshSchemaArtifacts(cwd, config, ast) {
|
|
|
469
471
|
if (syncManifestHooks(cwd, ast)) {
|
|
470
472
|
console.log("[supatype] Hook and validator maps written to .supatype/manifest.json");
|
|
471
473
|
}
|
|
474
|
+
// Written before the stack comes up, so a first run with a row cache declared starts with it on
|
|
475
|
+
// rather than needing a second `supatype dev`.
|
|
476
|
+
const rowCache = syncRowCacheEnv(cwd, ast);
|
|
477
|
+
if (rowCache !== null) {
|
|
478
|
+
console.log(`[supatype] Row cache switched ${rowCache} in .env (pg_keyspace Mode B).`);
|
|
479
|
+
}
|
|
472
480
|
try {
|
|
473
481
|
await ensureEngine();
|
|
474
482
|
}
|
|
475
483
|
catch (err) {
|
|
476
|
-
|
|
484
|
+
// The host engine is a CDN download and this machine could not complete it. The schema is
|
|
485
|
+
// already applied, so fall back to the engine in compose rather than giving up: without
|
|
486
|
+
// admin-config.json Studio reports "No schema has been pushed yet" on a stack whose schema is
|
|
487
|
+
// entirely live, which reads as a failed push rather than a missing binary.
|
|
488
|
+
const paths = selfHostComposePaths(cwd);
|
|
489
|
+
const composeProject = composeProjectName(config.project.name);
|
|
490
|
+
const wrote = await generateViaComposeEngine(paths, cwd, composeProject, config, ast, adminConfigPath).catch(() => false);
|
|
491
|
+
if (wrote) {
|
|
492
|
+
console.warn(`[supatype] Host engine unavailable (${err.message}); used the in-compose ` +
|
|
493
|
+
"engine instead.");
|
|
494
|
+
return;
|
|
495
|
+
}
|
|
496
|
+
console.warn(`[supatype] Host engine unavailable, admin/types not refreshed: ${err.message}
|
|
497
|
+
` +
|
|
498
|
+
"[supatype] Studio will report no schema until this succeeds, even though the schema is " +
|
|
499
|
+
"applied. Retry with the stack up, or run `supatype push`.");
|
|
477
500
|
return;
|
|
478
501
|
}
|
|
479
502
|
const typesPath = config.output?.types;
|
|
@@ -1054,4 +1077,73 @@ function grantAuthSchemaAccess(paths, cwd, composeProject) {
|
|
|
1054
1077
|
console.warn("[supatype] Could not grant service_role access to auth.users, Studio relation preview may fail.");
|
|
1055
1078
|
}
|
|
1056
1079
|
}
|
|
1080
|
+
/**
|
|
1081
|
+
* Run one read-only generator in the in-compose schema-engine and return its stdout.
|
|
1082
|
+
*
|
|
1083
|
+
* The same image and the same bind mount the push just used, so if the schema could be applied
|
|
1084
|
+
* this can run. It exists because the host engine is a separate binary fetched from a CDN, and a
|
|
1085
|
+
* machine that cannot fetch it is not a machine that cannot generate: the schema is already
|
|
1086
|
+
* applied, the AST is already on disk, and the container that did it is one `docker compose run`
|
|
1087
|
+
* away.
|
|
1088
|
+
*/
|
|
1089
|
+
async function runComposeEngineGenerator(paths, cwd, composeProject, config, args) {
|
|
1090
|
+
const envFile = resolve(cwd, ".env");
|
|
1091
|
+
const composeArgs = ["compose", "--progress", "quiet"];
|
|
1092
|
+
if (composeProject)
|
|
1093
|
+
composeArgs.push("-p", composeProject);
|
|
1094
|
+
composeArgs.push("--project-directory", cwd);
|
|
1095
|
+
composeArgs.push("-f", paths.composePath);
|
|
1096
|
+
if (existsSync(envFile))
|
|
1097
|
+
composeArgs.push("--env-file", envFile);
|
|
1098
|
+
composeArgs.push("--profile", "tools", "run", "--rm", "-T", "schema-engine", ...args, "-i", "/project/.supatype/schema.ast.json");
|
|
1099
|
+
const env = { ...process.env, COMPOSE_PROGRESS: "quiet" };
|
|
1100
|
+
const engineImage = await schemaEngineImageForPush(config);
|
|
1101
|
+
if (engineImage)
|
|
1102
|
+
env.SUPATYPE_ENGINE_IMAGE = engineImage;
|
|
1103
|
+
const result = spawnSync("docker", composeArgs, {
|
|
1104
|
+
cwd,
|
|
1105
|
+
encoding: "utf8",
|
|
1106
|
+
maxBuffer: 20 * 1024 * 1024,
|
|
1107
|
+
env,
|
|
1108
|
+
});
|
|
1109
|
+
if ((result.status ?? 1) !== 0)
|
|
1110
|
+
return null;
|
|
1111
|
+
return String(result.stdout ?? "");
|
|
1112
|
+
}
|
|
1113
|
+
/**
|
|
1114
|
+
* Write `admin-config.json` and the generated types using the in-compose engine.
|
|
1115
|
+
*
|
|
1116
|
+
* The fallback for a host engine that could not be fetched. Without it, a `supatype dev` that
|
|
1117
|
+
* applied the schema perfectly well still left no `admin-config.json`, and Studio reads that file
|
|
1118
|
+
* to decide whether a schema exists: the stack came up, every table was live, the API served them,
|
|
1119
|
+
* and Studio said **"No schema has been pushed yet."** The warning that preceded it named the
|
|
1120
|
+
* download, not the consequence, so nothing connected the two.
|
|
1121
|
+
*
|
|
1122
|
+
* Returns true when the admin config was written, which is the file Studio actually needs.
|
|
1123
|
+
*/
|
|
1124
|
+
export async function generateViaComposeEngine(paths, cwd, composeProject, config, ast, adminConfigPath) {
|
|
1125
|
+
const typesPath = config.output?.types;
|
|
1126
|
+
if (typeof typesPath === "string" && typesPath.trim().length > 0) {
|
|
1127
|
+
const out = await runComposeEngineGenerator(paths, cwd, composeProject, config, ["generate"]);
|
|
1128
|
+
const marker = out?.indexOf("// Generated by supatype-engine") ?? -1;
|
|
1129
|
+
if (out && out.includes("export type")) {
|
|
1130
|
+
const ts = (marker >= 0 ? out.slice(marker) : out).trimStart();
|
|
1131
|
+
const hostPath = join(cwd, typesPath);
|
|
1132
|
+
mkdirSync(dirname(hostPath), { recursive: true });
|
|
1133
|
+
writeFileSync(hostPath, ts);
|
|
1134
|
+
console.log(`[supatype] Types written to ${typesPath} (in-compose engine).`);
|
|
1135
|
+
}
|
|
1136
|
+
}
|
|
1137
|
+
const adminOut = await runComposeEngineGenerator(paths, cwd, composeProject, config, ["admin"]);
|
|
1138
|
+
if (!adminOut)
|
|
1139
|
+
return false;
|
|
1140
|
+
const parsed = parseEngineJsonOutput(adminOut);
|
|
1141
|
+
if (parsed === null)
|
|
1142
|
+
return false;
|
|
1143
|
+
const admin = withAdminRoles(parsed, config);
|
|
1144
|
+
restoreSystemRelationTargets(admin, ast);
|
|
1145
|
+
writeFileSync(adminConfigPath, `${JSON.stringify(admin, null, 2)}\n`);
|
|
1146
|
+
console.log("[supatype] Admin config written to .supatype/admin-config.json (in-compose engine).");
|
|
1147
|
+
return true;
|
|
1148
|
+
}
|
|
1057
1149
|
//# sourceMappingURL=dev-compose.js.map
|