trigger.dev 0.0.0-v3-prerelease-20240628191401 → 0.0.0-v3-prerelease-20240701153550
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.
|
@@ -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 = "0.0.0-v3-prerelease-
|
|
11
|
+
var version = "0.0.0-v3-prerelease-20240701153550";
|
|
12
12
|
|
|
13
13
|
// src/workers/dev/worker-setup.ts
|
|
14
14
|
__SETUP_IMPORTED_PROJECT_CONFIG__;
|
|
@@ -3,7 +3,8 @@ import {
|
|
|
3
3
|
CoordinatorToProdWorkerMessages,
|
|
4
4
|
PostStartCauses,
|
|
5
5
|
PreStopCauses,
|
|
6
|
-
ProdWorkerToCoordinatorMessages
|
|
6
|
+
ProdWorkerToCoordinatorMessages,
|
|
7
|
+
TaskRunErrorCodes as TaskRunErrorCodes2
|
|
7
8
|
} from "@trigger.dev/core/v3";
|
|
8
9
|
import { ZodSocketConnection } from "@trigger.dev/core/v3/zodSocket";
|
|
9
10
|
|
|
@@ -65,6 +66,10 @@ var SimpleLogger = class {
|
|
|
65
66
|
}
|
|
66
67
|
};
|
|
67
68
|
|
|
69
|
+
// ../core-apps/src/process.ts
|
|
70
|
+
var EXIT_CODE_ALREADY_HANDLED = 111;
|
|
71
|
+
var EXIT_CODE_CHILD_NONZERO = 112;
|
|
72
|
+
|
|
68
73
|
// src/workers/prod/entry-point.ts
|
|
69
74
|
import { readFile } from "node:fs/promises";
|
|
70
75
|
import { createServer } from "node:http";
|
|
@@ -131,7 +136,7 @@ var GracefulExitTimeoutError = class extends Error {
|
|
|
131
136
|
this.name = "GracefulExitTimeoutError";
|
|
132
137
|
}
|
|
133
138
|
};
|
|
134
|
-
function getFriendlyErrorMessage(code, signal, stderr) {
|
|
139
|
+
function getFriendlyErrorMessage(code, signal, stderr, dockerMode = true) {
|
|
135
140
|
const message = (text) => {
|
|
136
141
|
if (signal) {
|
|
137
142
|
return `[${signal}] ${text}`;
|
|
@@ -139,7 +144,18 @@ function getFriendlyErrorMessage(code, signal, stderr) {
|
|
|
139
144
|
return text;
|
|
140
145
|
}
|
|
141
146
|
};
|
|
142
|
-
if (code === 137
|
|
147
|
+
if (code === 137) {
|
|
148
|
+
if (dockerMode) {
|
|
149
|
+
return message(
|
|
150
|
+
"Process ran out of memory! Try choosing a machine preset with more memory for this task."
|
|
151
|
+
);
|
|
152
|
+
} else {
|
|
153
|
+
return message(
|
|
154
|
+
"Process most likely ran out of memory, but we can't be certain. Try choosing a machine preset with more memory for this task."
|
|
155
|
+
);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
if (stderr?.includes("OOMErrorHandler")) {
|
|
143
159
|
return message(
|
|
144
160
|
"Process ran out of memory! Try choosing a machine preset with more memory for this task."
|
|
145
161
|
);
|
|
@@ -877,10 +893,10 @@ var ProdWorker = class {
|
|
|
877
893
|
}
|
|
878
894
|
logger.log("Unhandled signal", { signal });
|
|
879
895
|
}
|
|
880
|
-
async #exitGracefully(gracefulExitTimeoutElapsed = false) {
|
|
896
|
+
async #exitGracefully(gracefulExitTimeoutElapsed = false, exitCode = 0) {
|
|
881
897
|
await this.#backgroundWorker.close(gracefulExitTimeoutElapsed);
|
|
882
898
|
if (!gracefulExitTimeoutElapsed) {
|
|
883
|
-
process.exit(
|
|
899
|
+
process.exit(exitCode);
|
|
884
900
|
}
|
|
885
901
|
}
|
|
886
902
|
async #reconnect(isPostStart = false, reconnectImmediately = false) {
|
|
@@ -1043,13 +1059,13 @@ var ProdWorker = class {
|
|
|
1043
1059
|
}
|
|
1044
1060
|
}
|
|
1045
1061
|
}
|
|
1046
|
-
async #prepareForRetry(willCheckpointAndRestore, shouldExit) {
|
|
1062
|
+
async #prepareForRetry(willCheckpointAndRestore, shouldExit, exitCode) {
|
|
1047
1063
|
logger.log("prepare for retry", { willCheckpointAndRestore, shouldExit });
|
|
1048
1064
|
if (shouldExit) {
|
|
1049
1065
|
if (willCheckpointAndRestore) {
|
|
1050
1066
|
logger.log("WARNING: Will checkpoint but also requested exit. This won't end well.");
|
|
1051
1067
|
}
|
|
1052
|
-
await this.#exitGracefully();
|
|
1068
|
+
await this.#exitGracefully(false, exitCode);
|
|
1053
1069
|
return;
|
|
1054
1070
|
}
|
|
1055
1071
|
this.paused = false;
|
|
@@ -1195,7 +1211,8 @@ var ProdWorker = class {
|
|
|
1195
1211
|
completion
|
|
1196
1212
|
});
|
|
1197
1213
|
logger.log("completion acknowledged", { willCheckpointAndRestore, shouldExit });
|
|
1198
|
-
|
|
1214
|
+
const exitCode = !completion.ok && completion.error.type === "INTERNAL_ERROR" && completion.error.code === TaskRunErrorCodes2.TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE ? EXIT_CODE_CHILD_NONZERO : 0;
|
|
1215
|
+
this.#prepareForRetry(willCheckpointAndRestore, shouldExit, exitCode);
|
|
1199
1216
|
} catch (error) {
|
|
1200
1217
|
const completion = {
|
|
1201
1218
|
ok: false,
|
|
@@ -1277,6 +1294,13 @@ var ProdWorker = class {
|
|
|
1277
1294
|
return;
|
|
1278
1295
|
}
|
|
1279
1296
|
if (process.env.INDEX_TASKS === "true") {
|
|
1297
|
+
const failIndex = (error) => {
|
|
1298
|
+
socket.emit("INDEXING_FAILED", {
|
|
1299
|
+
version: "v1",
|
|
1300
|
+
deploymentId: this.deploymentId,
|
|
1301
|
+
error
|
|
1302
|
+
});
|
|
1303
|
+
};
|
|
1280
1304
|
try {
|
|
1281
1305
|
const taskResources = await this.#initializeWorker();
|
|
1282
1306
|
const { success } = await socket.emitWithAck("INDEX_TASKS", {
|
|
@@ -1299,15 +1323,11 @@ var ProdWorker = class {
|
|
|
1299
1323
|
zodIssues: e.zodIssues,
|
|
1300
1324
|
tasks: e.tasks
|
|
1301
1325
|
});
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
message: "There was an error parsing the task metadata",
|
|
1308
|
-
stack: JSON.stringify({ zodIssues: e.zodIssues, tasks: e.tasks }),
|
|
1309
|
-
stderr
|
|
1310
|
-
}
|
|
1326
|
+
failIndex({
|
|
1327
|
+
name: "TaskMetadataParseError",
|
|
1328
|
+
message: "There was an error parsing the task metadata",
|
|
1329
|
+
stack: JSON.stringify({ zodIssues: e.zodIssues, tasks: e.tasks }),
|
|
1330
|
+
stderr
|
|
1311
1331
|
});
|
|
1312
1332
|
} else if (e instanceof UncaughtExceptionError) {
|
|
1313
1333
|
const error = {
|
|
@@ -1317,11 +1337,7 @@ var ProdWorker = class {
|
|
|
1317
1337
|
stderr
|
|
1318
1338
|
};
|
|
1319
1339
|
logger2.error("uncaught exception", { originalError: error });
|
|
1320
|
-
|
|
1321
|
-
version: "v1",
|
|
1322
|
-
deploymentId: this.deploymentId,
|
|
1323
|
-
error
|
|
1324
|
-
});
|
|
1340
|
+
failIndex(error);
|
|
1325
1341
|
} else if (e instanceof Error) {
|
|
1326
1342
|
const error = {
|
|
1327
1343
|
name: e.name,
|
|
@@ -1330,36 +1346,24 @@ var ProdWorker = class {
|
|
|
1330
1346
|
stderr
|
|
1331
1347
|
};
|
|
1332
1348
|
logger2.error("error", { error });
|
|
1333
|
-
|
|
1334
|
-
version: "v1",
|
|
1335
|
-
deploymentId: this.deploymentId,
|
|
1336
|
-
error
|
|
1337
|
-
});
|
|
1349
|
+
failIndex(error);
|
|
1338
1350
|
} else if (typeof e === "string") {
|
|
1339
1351
|
logger2.error("string error", { error: { message: e } });
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
name: "Error",
|
|
1345
|
-
message: e,
|
|
1346
|
-
stderr
|
|
1347
|
-
}
|
|
1352
|
+
failIndex({
|
|
1353
|
+
name: "Error",
|
|
1354
|
+
message: e,
|
|
1355
|
+
stderr
|
|
1348
1356
|
});
|
|
1349
1357
|
} else {
|
|
1350
1358
|
logger2.error("unknown error", { error: e });
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
name: "Error",
|
|
1356
|
-
message: "Unknown error",
|
|
1357
|
-
stderr
|
|
1358
|
-
}
|
|
1359
|
+
failIndex({
|
|
1360
|
+
name: "Error",
|
|
1361
|
+
message: "Unknown error",
|
|
1362
|
+
stderr
|
|
1359
1363
|
});
|
|
1360
1364
|
}
|
|
1361
1365
|
await setTimeout2(200);
|
|
1362
|
-
process.exit(
|
|
1366
|
+
process.exit(EXIT_CODE_ALREADY_HANDLED);
|
|
1363
1367
|
}
|
|
1364
1368
|
}
|
|
1365
1369
|
if (this.executing) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "trigger.dev",
|
|
3
|
-
"version": "0.0.0-v3-prerelease-
|
|
3
|
+
"version": "0.0.0-v3-prerelease-20240701153550",
|
|
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",
|
|
@@ -53,8 +53,8 @@
|
|
|
53
53
|
"typescript": "^5.3.3",
|
|
54
54
|
"vitest": "^1.6.0",
|
|
55
55
|
"xdg-app-paths": "^8.3.0",
|
|
56
|
-
"@trigger.dev/
|
|
57
|
-
"@trigger.dev/
|
|
56
|
+
"@trigger.dev/core-apps": "0.0.0-v3-prerelease-20240701153550",
|
|
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": "0.0.0-v3-prerelease-
|
|
75
|
+
"@trigger.dev/core": "0.0.0-v3-prerelease-20240701153550",
|
|
76
76
|
"@types/degit": "^2.8.3",
|
|
77
77
|
"chalk": "^5.2.0",
|
|
78
78
|
"chokidar": "^3.5.3",
|