Skip to content

Commit f565829

Browse files
committed
v3: Copy over more of the project's package.json keys into the deployed package.json (support for custom config like zenstack)
1 parent d57dec6 commit f565829

File tree

4 files changed

+60
-6
lines changed

4 files changed

+60
-6
lines changed

.changeset/silly-forks-kiss.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"trigger.dev": patch
3+
---
4+
5+
v3: Copy over more of the project's package.json keys into the deployed package.json (support for custom config like zenstack)

packages/cli-v3/src/commands/deploy.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1317,9 +1317,7 @@ async function compileProject(
13171317
logger.debug("gatherRequiredDependencies()", { dependencies });
13181318

13191319
const packageJsonContents = {
1320-
name: "trigger-worker",
1321-
version: "0.0.0",
1322-
description: "",
1320+
...javascriptProject.allowedPackageJson,
13231321
dependencies,
13241322
scripts: {
13251323
...javascriptProject.scripts,

packages/cli-v3/src/utilities/javascriptProject.ts

Lines changed: 51 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,58 @@ export class JavascriptProject {
2626
return this._packageJson;
2727
}
2828

29+
public get allowedPackageJson(): Record<string, unknown> {
30+
const disallowedKeys = [
31+
"scripts",
32+
"devDependencies",
33+
"dependencies",
34+
"peerDependencies",
35+
"author",
36+
"contributors",
37+
"funding",
38+
"bugs",
39+
"files",
40+
"keywords",
41+
"main",
42+
"module",
43+
"type",
44+
"bin",
45+
"browser",
46+
"man",
47+
"directories",
48+
"repository",
49+
"peerDependenciesMeta",
50+
"optionalDependencies",
51+
"engines",
52+
"os",
53+
"cpu",
54+
"private",
55+
"publishConfig",
56+
"workspaces",
57+
];
58+
59+
return Object.keys(this.packageJson).reduce(
60+
(acc, key) => {
61+
if (!disallowedKeys.includes(key)) {
62+
acc[key] = this.packageJson[key];
63+
}
64+
65+
return acc;
66+
},
67+
{} as Record<string, unknown>
68+
);
69+
}
70+
2971
public get scripts(): Record<string, string> {
30-
return {
31-
postinstall: this.packageJson.scripts?.postinstall ?? "",
32-
};
72+
return this.#filterScripts();
73+
}
74+
75+
#filterScripts(): Record<string, string> {
76+
if (!this.packageJson.scripts || typeof this.packageJson.scripts !== "object") {
77+
return {};
78+
}
79+
80+
return this.packageJson.scripts as Record<string, string>;
3381
}
3482

3583
async install(): Promise<void> {

references/v3-catalog/package.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
"name": "@references/v3-catalog",
33
"version": "0.1.0",
44
"private": true,
5+
"zenstack": {
6+
"schema": "./prisma/schema.zmodel"
7+
},
58
"scripts": {
69
"dev:trigger": "triggerdev dev",
710
"management": "ts-node -r tsconfig-paths/register ./src/management.ts",

0 commit comments

Comments
 (0)