trigger.dev 3.0.0-beta.36 → 3.0.0-beta.38
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/index.js +91 -68
- package/dist/index.js.map +1 -1
- package/dist/workers/dev/worker-facade.js +19 -3
- package/dist/workers/dev/worker-setup.js +1 -1
- package/dist/workers/prod/entry-point.js +94 -101
- package/dist/workers/prod/worker-facade.js +43 -11
- package/dist/workers/prod/worker-setup.js +1 -1
- package/package.json +7 -6
|
@@ -6,12 +6,15 @@ import {
|
|
|
6
6
|
taskCatalog
|
|
7
7
|
} from "@trigger.dev/core/v3";
|
|
8
8
|
import {
|
|
9
|
-
|
|
9
|
+
ConsoleInterceptor,
|
|
10
|
+
DevUsageManager,
|
|
10
11
|
DurableClock,
|
|
12
|
+
OtelTaskLogger,
|
|
13
|
+
ProdUsageManager,
|
|
14
|
+
TaskExecutor,
|
|
11
15
|
getEnvVar,
|
|
12
16
|
logLevels,
|
|
13
|
-
|
|
14
|
-
ConsoleInterceptor
|
|
17
|
+
usage
|
|
15
18
|
} from "@trigger.dev/core/v3/workers";
|
|
16
19
|
import { ZodIpcConnection } from "@trigger.dev/core/v3/zodIpc";
|
|
17
20
|
import { ZodSchemaParsedError } from "@trigger.dev/core/v3/zodMessageHandler";
|
|
@@ -25,6 +28,15 @@ import {
|
|
|
25
28
|
import { ProdRuntimeManager } from "@trigger.dev/core/v3/prod";
|
|
26
29
|
__WORKER_SETUP__;
|
|
27
30
|
__IMPORTED_PROJECT_CONFIG__;
|
|
31
|
+
var heartbeatIntervalMs = getEnvVar("USAGE_HEARTBEAT_INTERVAL_MS");
|
|
32
|
+
var usageEventUrl = getEnvVar("USAGE_EVENT_URL");
|
|
33
|
+
var triggerJWT = getEnvVar("TRIGGER_JWT");
|
|
34
|
+
var prodUsageManager = new ProdUsageManager(new DevUsageManager(), {
|
|
35
|
+
heartbeatIntervalMs: heartbeatIntervalMs ? parseInt(heartbeatIntervalMs, 10) : void 0,
|
|
36
|
+
url: usageEventUrl,
|
|
37
|
+
jwt: triggerJWT
|
|
38
|
+
});
|
|
39
|
+
usage.setGlobalUsageManager(prodUsageManager);
|
|
28
40
|
var durableClock = new DurableClock();
|
|
29
41
|
clock.setGlobalClock(durableClock);
|
|
30
42
|
var tracer = new TriggerTracer({ tracer: otelTracer, logger: otelLogger });
|
|
@@ -106,10 +118,17 @@ var zodIpc = new ZodIpcConnection({
|
|
|
106
118
|
try {
|
|
107
119
|
_execution = execution;
|
|
108
120
|
_isRunning = true;
|
|
109
|
-
const
|
|
110
|
-
|
|
121
|
+
const measurement = usage.start();
|
|
122
|
+
const { result } = await executor.execute(execution, metadata, traceContext, measurement);
|
|
123
|
+
const usageSample = usage.stop(measurement);
|
|
124
|
+
return await sender.send("TASK_RUN_COMPLETED", {
|
|
111
125
|
execution,
|
|
112
|
-
result
|
|
126
|
+
result: {
|
|
127
|
+
...result,
|
|
128
|
+
usage: {
|
|
129
|
+
durationMs: usageSample.cpuTime
|
|
130
|
+
}
|
|
131
|
+
}
|
|
113
132
|
});
|
|
114
133
|
} finally {
|
|
115
134
|
_execution = void 0;
|
|
@@ -124,11 +143,11 @@ var zodIpc = new ZodIpcConnection({
|
|
|
124
143
|
},
|
|
125
144
|
CLEANUP: async ({ flush, kill }, sender) => {
|
|
126
145
|
if (kill) {
|
|
127
|
-
await tracingSDK.flush();
|
|
146
|
+
await Promise.all([prodUsageManager.flush(), tracingSDK.flush()]);
|
|
128
147
|
await sender.send("READY_TO_DISPOSE", void 0);
|
|
129
148
|
} else {
|
|
130
149
|
if (flush) {
|
|
131
|
-
await tracingSDK.flush();
|
|
150
|
+
await Promise.all([prodUsageManager.flush(), tracingSDK.flush()]);
|
|
132
151
|
}
|
|
133
152
|
}
|
|
134
153
|
}
|
|
@@ -140,10 +159,23 @@ var prodRuntimeManager = new ProdRuntimeManager(zodIpc, {
|
|
|
140
159
|
waitThresholdInMs: parseInt(process.env.TRIGGER_RUNTIME_WAIT_THRESHOLD_IN_MS ?? "30000", 10)
|
|
141
160
|
});
|
|
142
161
|
runtime.setGlobalRuntimeManager(prodRuntimeManager);
|
|
143
|
-
var
|
|
144
|
-
|
|
162
|
+
var taskMetadata = taskCatalog.getAllTaskMetadata();
|
|
163
|
+
if (typeof importedConfig?.machine === "string") {
|
|
164
|
+
taskMetadata = taskMetadata.map((task) => {
|
|
165
|
+
if (typeof task.machine?.preset !== "string") {
|
|
166
|
+
return {
|
|
167
|
+
...task,
|
|
168
|
+
machine: {
|
|
169
|
+
preset: importedConfig.machine
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
return task;
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
zodIpc.send("TASKS_READY", { tasks: taskMetadata }).catch((err) => {
|
|
145
177
|
if (err instanceof ZodSchemaParsedError) {
|
|
146
|
-
zodIpc.send("TASKS_FAILED_TO_PARSE", { zodIssues: err.error.issues, tasks:
|
|
178
|
+
zodIpc.send("TASKS_FAILED_TO_PARSE", { zodIssues: err.error.issues, tasks: taskMetadata });
|
|
147
179
|
} else {
|
|
148
180
|
console.error("Failed to send TASKS_READY message", err);
|
|
149
181
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "trigger.dev",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.38",
|
|
4
4
|
"description": "A Command-Line Interface for Trigger.dev (v3) projects",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -51,10 +51,10 @@
|
|
|
51
51
|
"tsup": "^8.0.1",
|
|
52
52
|
"type-fest": "^3.6.0",
|
|
53
53
|
"typescript": "^5.3.3",
|
|
54
|
-
"vitest": "^
|
|
54
|
+
"vitest": "^1.6.0",
|
|
55
55
|
"xdg-app-paths": "^8.3.0",
|
|
56
|
-
"@trigger.dev/
|
|
57
|
-
"@trigger.dev/
|
|
56
|
+
"@trigger.dev/core-apps": "3.0.0-beta.38",
|
|
57
|
+
"@trigger.dev/tsconfig": "0.0.0"
|
|
58
58
|
},
|
|
59
59
|
"dependencies": {
|
|
60
60
|
"@anatine/esbuild-decorators": "^0.2.19",
|
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
"@opentelemetry/sdk-trace-base": "^1.22.0",
|
|
73
73
|
"@opentelemetry/sdk-trace-node": "^1.22.0",
|
|
74
74
|
"@opentelemetry/semantic-conventions": "^1.22.0",
|
|
75
|
-
"@trigger.dev/core": "3.0.0-beta.
|
|
75
|
+
"@trigger.dev/core": "3.0.0-beta.38",
|
|
76
76
|
"@types/degit": "^2.8.3",
|
|
77
77
|
"chalk": "^5.2.0",
|
|
78
78
|
"chokidar": "^3.5.3",
|
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"dev:test": "nodemon -w src/Containerfile.prod -x npm run build:prod-containerfile",
|
|
130
130
|
"clean": "rimraf dist",
|
|
131
131
|
"start": "node dist/index.js",
|
|
132
|
-
"test": "vitest"
|
|
132
|
+
"test": "vitest",
|
|
133
|
+
"test:e2e": "vitest --run -c e2e/vite.config.js"
|
|
133
134
|
}
|
|
134
135
|
}
|