helloruntime 0.0.3 → 0.0.4
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/dist/cli/index.js +1 -1
- package/dist/cli/packager.d.ts.map +1 -1
- package/dist/cli/packager.js +13 -3
- package/dist/cli/packager.js.map +1 -1
- package/helloruntime.schema.json +5 -11
- package/package.json +2 -2
package/dist/cli/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import { destroyCommand } from "./destroy.js";
|
|
|
5
5
|
import { loginCommand } from "./login.js";
|
|
6
6
|
import { cronList, cronTrigger, jobsList, jobsTrigger } from "./triggers.js";
|
|
7
7
|
const program = new Command();
|
|
8
|
-
program.name("helloruntime").description("Deploy server-rendered JS/TS apps to Helloruntime").version("0.0.
|
|
8
|
+
program.name("helloruntime").description("Deploy server-rendered JS/TS apps to Helloruntime").version("0.0.4");
|
|
9
9
|
program
|
|
10
10
|
.command("login")
|
|
11
11
|
.description("Authenticate via the browser (device flow)")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packager.d.ts","sourceRoot":"","sources":["../../src/cli/packager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"packager.d.ts","sourceRoot":"","sources":["../../src/cli/packager.ts"],"names":[],"mappings":"AA2BA,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkB3E;AAgBD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAKD,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CA4CxE"}
|
package/dist/cli/packager.js
CHANGED
|
@@ -8,6 +8,9 @@ import { pipeline } from "node:stream/promises";
|
|
|
8
8
|
import * as tar from "tar";
|
|
9
9
|
const OUTPUT_DIR = ".output";
|
|
10
10
|
const ENTRY = join(OUTPUT_DIR, "server", "index.mjs");
|
|
11
|
+
// Drizzle migrations live here by convention; packaged alongside .output so the platform
|
|
12
|
+
// migrator (run as a pre-cutover Job) can apply them against the managed database.
|
|
13
|
+
const MIGRATIONS_DIR = join("db", "migrations");
|
|
11
14
|
// Detect the package manager from the lockfile so `<pm> run build` matches what the
|
|
12
15
|
// developer uses. Defaults to npm.
|
|
13
16
|
function detectPackageManager(files) {
|
|
@@ -67,12 +70,19 @@ export async function packageBundle(cwd) {
|
|
|
67
70
|
native.map((n) => ` - ${n}`).join("\n") +
|
|
68
71
|
`\nRemove the native dependency, or request it be added to the runtime image.`);
|
|
69
72
|
}
|
|
73
|
+
// Package .output and, if present, ./db/migrations (Drizzle convention) so the
|
|
74
|
+
// platform can run migrations from /app/db/migrations before cutover.
|
|
75
|
+
const entries = [OUTPUT_DIR];
|
|
76
|
+
const hasMigrations = await access(join(cwd, MIGRATIONS_DIR))
|
|
77
|
+
.then(() => true)
|
|
78
|
+
.catch(() => false);
|
|
79
|
+
if (hasMigrations)
|
|
80
|
+
entries.push(MIGRATIONS_DIR);
|
|
70
81
|
const outDir = join(cwd, ".helloruntime", "artifacts");
|
|
71
82
|
await mkdir(outDir, { recursive: true });
|
|
72
83
|
const tarPath = join(outDir, "bundle.tgz");
|
|
73
|
-
//
|
|
74
|
-
|
|
75
|
-
await tar.c({ gzip: true, file: tarPath, cwd, portable: true }, [OUTPUT_DIR]);
|
|
84
|
+
// The loader extracts to /app → /app/.output/server/index.mjs (+ /app/db/migrations).
|
|
85
|
+
await tar.c({ gzip: true, file: tarPath, cwd, portable: true }, entries);
|
|
76
86
|
const hash = createHash("sha256");
|
|
77
87
|
await pipeline(createReadStream(tarPath), new Transform({
|
|
78
88
|
transform(chunk, _enc, cb) {
|
package/dist/cli/packager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packager.js","sourceRoot":"","sources":["../../src/cli/packager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEhD,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,MAAM,UAAU,GAAG,SAAS,CAAC;AAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"packager.js","sourceRoot":"","sources":["../../src/cli/packager.ts"],"names":[],"mappings":"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"}
|
package/helloruntime.schema.json
CHANGED
|
@@ -21,17 +21,6 @@
|
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
},
|
|
24
|
-
"deploy": {
|
|
25
|
-
"type": "object",
|
|
26
|
-
"additionalProperties": false,
|
|
27
|
-
"description": "Deploy-time behavior.",
|
|
28
|
-
"properties": {
|
|
29
|
-
"release": {
|
|
30
|
-
"type": "string",
|
|
31
|
-
"description": "One-shot command run on the runtime image (with the bundle hydrated at /app) before cutover (e.g. database migrations). The deploy fails if it exits non-zero."
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
24
|
"database": {
|
|
36
25
|
"type": "object",
|
|
37
26
|
"additionalProperties": false,
|
|
@@ -41,6 +30,11 @@
|
|
|
41
30
|
"type": "boolean",
|
|
42
31
|
"default": true,
|
|
43
32
|
"description": "Provision a managed Postgres and inject DATABASE_URL. Set false to opt out."
|
|
33
|
+
},
|
|
34
|
+
"migrate": {
|
|
35
|
+
"type": "boolean",
|
|
36
|
+
"default": true,
|
|
37
|
+
"description": "Run Drizzle migrations from ./db/migrations against the managed database before cutover. The deploy fails if a migration errors. Set false to opt out."
|
|
44
38
|
}
|
|
45
39
|
}
|
|
46
40
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "helloruntime",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"description": "CLI + runtime SDK for Helloruntime — a small self-hostable PaaS for server-rendered JS/TS apps.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://helloruntime.com",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"pg": "^8.16.2",
|
|
42
42
|
"tar": "^7.4.3",
|
|
43
43
|
"zod": "^3.25.67",
|
|
44
|
-
"@helloruntime/protocol": "^0.0.
|
|
44
|
+
"@helloruntime/protocol": "^0.0.4"
|
|
45
45
|
},
|
|
46
46
|
"devDependencies": {
|
|
47
47
|
"@types/pg": "^8.15.4",
|