trigger.dev 3.0.0-beta.37 → 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 +20 -14
- 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 +4 -1
- package/dist/workers/prod/worker-facade.js +43 -11
- package/dist/workers/prod/worker-setup.js +1 -1
- package/package.json +6 -5
|
@@ -9,7 +9,9 @@ import {
|
|
|
9
9
|
getEnvVar,
|
|
10
10
|
logLevels,
|
|
11
11
|
OtelTaskLogger,
|
|
12
|
-
ConsoleInterceptor
|
|
12
|
+
ConsoleInterceptor,
|
|
13
|
+
usage,
|
|
14
|
+
DevUsageManager
|
|
13
15
|
} from "@trigger.dev/core/v3/workers";
|
|
14
16
|
import {
|
|
15
17
|
TaskRunErrorCodes,
|
|
@@ -27,6 +29,7 @@ __WORKER_SETUP__;
|
|
|
27
29
|
__IMPORTED_PROJECT_CONFIG__;
|
|
28
30
|
var durableClock = new DurableClock();
|
|
29
31
|
clock.setGlobalClock(durableClock);
|
|
32
|
+
usage.setGlobalUsageManager(new DevUsageManager());
|
|
30
33
|
var tracer = new TriggerTracer({ tracer: otelTracer, logger: otelLogger });
|
|
31
34
|
var consoleInterceptor = new ConsoleInterceptor(
|
|
32
35
|
otelLogger,
|
|
@@ -76,6 +79,9 @@ var handler = new ZodMessageHandler({
|
|
|
76
79
|
error: {
|
|
77
80
|
type: "INTERNAL_ERROR",
|
|
78
81
|
code: TaskRunErrorCodes.TASK_ALREADY_RUNNING
|
|
82
|
+
},
|
|
83
|
+
usage: {
|
|
84
|
+
durationMs: 0
|
|
79
85
|
}
|
|
80
86
|
}
|
|
81
87
|
});
|
|
@@ -93,6 +99,9 @@ var handler = new ZodMessageHandler({
|
|
|
93
99
|
error: {
|
|
94
100
|
type: "INTERNAL_ERROR",
|
|
95
101
|
code: TaskRunErrorCodes.COULD_NOT_FIND_EXECUTOR
|
|
102
|
+
},
|
|
103
|
+
usage: {
|
|
104
|
+
durationMs: 0
|
|
96
105
|
}
|
|
97
106
|
}
|
|
98
107
|
});
|
|
@@ -109,10 +118,17 @@ var handler = new ZodMessageHandler({
|
|
|
109
118
|
try {
|
|
110
119
|
_execution = execution;
|
|
111
120
|
_isRunning = true;
|
|
112
|
-
const
|
|
121
|
+
const measurement = usage.start();
|
|
122
|
+
const { result } = await executor.execute(execution, metadata, traceContext, measurement);
|
|
123
|
+
const usageSample = usage.stop(measurement);
|
|
113
124
|
return sender.send("TASK_RUN_COMPLETED", {
|
|
114
125
|
execution,
|
|
115
|
-
result
|
|
126
|
+
result: {
|
|
127
|
+
...result,
|
|
128
|
+
usage: {
|
|
129
|
+
durationMs: usageSample.cpuTime
|
|
130
|
+
}
|
|
131
|
+
}
|
|
116
132
|
});
|
|
117
133
|
} finally {
|
|
118
134
|
_execution = void 0;
|
|
@@ -8,7 +8,7 @@ import { ZodMessageSender } from "@trigger.dev/core/v3/zodMessageHandler";
|
|
|
8
8
|
import "source-map-support/register.js";
|
|
9
9
|
|
|
10
10
|
// package.json
|
|
11
|
-
var version = "3.0.0-beta.
|
|
11
|
+
var version = "3.0.0-beta.38";
|
|
12
12
|
|
|
13
13
|
// src/workers/dev/worker-setup.ts
|
|
14
14
|
__SETUP_IMPORTED_PROJECT_CONFIG__;
|
|
@@ -686,7 +686,10 @@ var TaskRunProcess = class {
|
|
|
686
686
|
const killParentProcess = kill && !killChildProcess;
|
|
687
687
|
console.log("Cleaning up task run process", {
|
|
688
688
|
killChildProcess,
|
|
689
|
-
killParentProcess
|
|
689
|
+
killParentProcess,
|
|
690
|
+
ipc: this._ipc,
|
|
691
|
+
childPid: this._childPid,
|
|
692
|
+
realChildPid: this._child?.pid
|
|
690
693
|
});
|
|
691
694
|
await this._ipc?.sendWithAck(
|
|
692
695
|
"CLEANUP",
|
|
@@ -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,9 +51,9 @@
|
|
|
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/core-apps": "3.0.0-beta.
|
|
56
|
+
"@trigger.dev/core-apps": "3.0.0-beta.38",
|
|
57
57
|
"@trigger.dev/tsconfig": "0.0.0"
|
|
58
58
|
},
|
|
59
59
|
"dependencies": {
|
|
@@ -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
|
}
|