@trigger.dev/core 3.0.13 → 3.1.0
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/commonjs/v3/apiClient/core.d.ts +1 -1
- package/dist/commonjs/v3/apiClient/core.js +9 -1
- package/dist/commonjs/v3/apiClient/core.js.map +1 -1
- package/dist/commonjs/v3/apiClient/index.d.ts +64 -36
- package/dist/commonjs/v3/apiClient/index.js +100 -4
- package/dist/commonjs/v3/apiClient/index.js.map +1 -1
- package/dist/commonjs/v3/apiClient/runStream.d.ts +50 -0
- package/dist/commonjs/v3/apiClient/runStream.js +159 -0
- package/dist/commonjs/v3/apiClient/runStream.js.map +1 -0
- package/dist/commonjs/v3/apiClient/stream.d.ts +9 -0
- package/dist/commonjs/v3/apiClient/stream.js +37 -0
- package/dist/commonjs/v3/apiClient/stream.js.map +1 -0
- package/dist/commonjs/v3/apiClient/types.d.ts +4 -0
- package/dist/commonjs/v3/apiClientManager/index.d.ts +2 -1
- package/dist/commonjs/v3/apiClientManager/index.js +18 -7
- package/dist/commonjs/v3/apiClientManager/index.js.map +1 -1
- package/dist/commonjs/v3/apiClientManager/types.d.ts +7 -0
- package/dist/commonjs/v3/apps/process.d.ts +2 -0
- package/dist/commonjs/v3/apps/process.js +2 -0
- package/dist/commonjs/v3/apps/process.js.map +1 -1
- package/dist/commonjs/v3/errors.d.ts +5 -0
- package/dist/commonjs/v3/errors.js +185 -30
- package/dist/commonjs/v3/errors.js.map +1 -1
- package/dist/commonjs/v3/index.d.ts +2 -1
- package/dist/commonjs/v3/index.js +4 -3
- package/dist/commonjs/v3/index.js.map +1 -1
- package/dist/commonjs/v3/jwt.d.ts +10 -0
- package/dist/commonjs/v3/jwt.js +34 -0
- package/dist/commonjs/v3/jwt.js.map +1 -0
- package/dist/commonjs/v3/otel/index.d.ts +2 -3
- package/dist/commonjs/v3/otel/index.js +15 -21
- package/dist/commonjs/v3/otel/index.js.map +1 -1
- package/dist/commonjs/v3/otel/utils.d.ts +2 -0
- package/dist/commonjs/v3/otel/utils.js +24 -0
- package/dist/commonjs/v3/otel/utils.js.map +1 -0
- package/dist/commonjs/v3/runMetadata/index.d.ts +8 -6
- package/dist/commonjs/v3/runMetadata/index.js +18 -39
- package/dist/commonjs/v3/runMetadata/index.js.map +1 -1
- package/dist/commonjs/v3/runMetadata/manager.d.ts +17 -0
- package/dist/commonjs/v3/runMetadata/manager.js +116 -0
- package/dist/commonjs/v3/runMetadata/manager.js.map +1 -0
- package/dist/commonjs/v3/runMetadata/noopManager.d.ts +12 -0
- package/dist/commonjs/v3/runMetadata/noopManager.js +26 -0
- package/dist/commonjs/v3/runMetadata/noopManager.js.map +1 -0
- package/dist/commonjs/v3/runMetadata/types.d.ts +11 -0
- package/dist/commonjs/v3/runMetadata/types.js +3 -0
- package/dist/commonjs/v3/runMetadata/types.js.map +1 -0
- package/dist/commonjs/v3/runtime/noopRuntimeManager.js +5 -1
- package/dist/commonjs/v3/runtime/noopRuntimeManager.js.map +1 -1
- package/dist/commonjs/v3/schemas/api.d.ts +193 -64
- package/dist/commonjs/v3/schemas/api.js +34 -4
- package/dist/commonjs/v3/schemas/api.js.map +1 -1
- package/dist/commonjs/v3/schemas/build.d.ts +12 -12
- package/dist/commonjs/v3/schemas/common.d.ts +24 -24
- package/dist/commonjs/v3/schemas/common.js +2 -0
- package/dist/commonjs/v3/schemas/common.js.map +1 -1
- package/dist/commonjs/v3/schemas/messages.d.ts +124 -123
- package/dist/commonjs/v3/schemas/messages.js +1 -0
- package/dist/commonjs/v3/schemas/messages.js.map +1 -1
- package/dist/commonjs/v3/schemas/schemas.d.ts +2 -2
- package/dist/commonjs/v3/tracer.js +2 -2
- package/dist/commonjs/v3/types/idempotencyKeys.d.ts +7 -0
- package/dist/commonjs/v3/types/idempotencyKeys.js +3 -0
- package/dist/commonjs/v3/types/idempotencyKeys.js.map +1 -0
- package/dist/commonjs/v3/types/index.d.ts +9 -63
- package/dist/commonjs/v3/types/index.js +2 -0
- package/dist/commonjs/v3/types/index.js.map +1 -1
- package/dist/commonjs/v3/types/schemas.d.ts +44 -0
- package/dist/commonjs/v3/types/schemas.js +41 -0
- package/dist/commonjs/v3/types/schemas.js.map +1 -0
- package/dist/commonjs/v3/types/tasks.d.ts +473 -0
- package/dist/commonjs/v3/types/tasks.js +42 -0
- package/dist/commonjs/v3/types/tasks.js.map +1 -0
- package/dist/commonjs/v3/utils/flattenAttributes.d.ts +2 -1
- package/dist/commonjs/v3/utils/flattenAttributes.js +39 -16
- package/dist/commonjs/v3/utils/flattenAttributes.js.map +1 -1
- package/dist/commonjs/v3/utils/getEnv.d.ts +1 -0
- package/dist/commonjs/v3/utils/getEnv.js +12 -0
- package/dist/commonjs/v3/utils/getEnv.js.map +1 -1
- package/dist/commonjs/v3/utils/globals.d.ts +2 -2
- package/dist/commonjs/v3/utils/globals.js.map +1 -1
- package/dist/commonjs/v3/utils/ioSerialization.d.ts +1 -0
- package/dist/commonjs/v3/utils/ioSerialization.js +21 -3
- package/dist/commonjs/v3/utils/ioSerialization.js.map +1 -1
- package/dist/commonjs/v3/utils/safeAsyncLocalStorage.d.ts +1 -0
- package/dist/commonjs/v3/utils/safeAsyncLocalStorage.js +3 -0
- package/dist/commonjs/v3/utils/safeAsyncLocalStorage.js.map +1 -1
- package/dist/commonjs/v3/workers/index.d.ts +2 -1
- package/dist/commonjs/v3/workers/index.js +4 -1
- package/dist/commonjs/v3/workers/index.js.map +1 -1
- package/dist/commonjs/v3/workers/taskExecutor.js +39 -7
- package/dist/commonjs/v3/workers/taskExecutor.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/esm/v3/apiClient/core.d.ts +1 -1
- package/dist/esm/v3/apiClient/core.js +9 -1
- package/dist/esm/v3/apiClient/core.js.map +1 -1
- package/dist/esm/v3/apiClient/index.d.ts +64 -36
- package/dist/esm/v3/apiClient/index.js +100 -4
- package/dist/esm/v3/apiClient/index.js.map +1 -1
- package/dist/esm/v3/apiClient/runStream.d.ts +50 -0
- package/dist/esm/v3/apiClient/runStream.js +154 -0
- package/dist/esm/v3/apiClient/runStream.js.map +1 -0
- package/dist/esm/v3/apiClient/stream.d.ts +9 -0
- package/dist/esm/v3/apiClient/stream.js +33 -0
- package/dist/esm/v3/apiClient/stream.js.map +1 -0
- package/dist/esm/v3/apiClient/types.d.ts +4 -0
- package/dist/esm/v3/apiClientManager/index.d.ts +2 -1
- package/dist/esm/v3/apiClientManager/index.js +18 -7
- package/dist/esm/v3/apiClientManager/index.js.map +1 -1
- package/dist/esm/v3/apiClientManager/types.d.ts +7 -0
- package/dist/esm/v3/apps/process.d.ts +2 -0
- package/dist/esm/v3/apps/process.js +2 -0
- package/dist/esm/v3/apps/process.js.map +1 -1
- package/dist/esm/v3/errors.d.ts +5 -0
- package/dist/esm/v3/errors.js +182 -29
- package/dist/esm/v3/errors.js.map +1 -1
- package/dist/esm/v3/index.d.ts +2 -1
- package/dist/esm/v3/index.js +2 -1
- package/dist/esm/v3/index.js.map +1 -1
- package/dist/esm/v3/jwt.d.ts +10 -0
- package/dist/esm/v3/jwt.js +29 -0
- package/dist/esm/v3/jwt.js.map +1 -0
- package/dist/esm/v3/otel/index.d.ts +2 -3
- package/dist/esm/v3/otel/index.js +1 -20
- package/dist/esm/v3/otel/index.js.map +1 -1
- package/dist/esm/v3/otel/utils.d.ts +2 -0
- package/dist/esm/v3/otel/utils.js +21 -0
- package/dist/esm/v3/otel/utils.js.map +1 -0
- package/dist/esm/v3/runMetadata/index.d.ts +8 -6
- package/dist/esm/v3/runMetadata/index.js +20 -41
- package/dist/esm/v3/runMetadata/index.js.map +1 -1
- package/dist/esm/v3/runMetadata/manager.d.ts +17 -0
- package/dist/esm/v3/runMetadata/manager.js +112 -0
- package/dist/esm/v3/runMetadata/manager.js.map +1 -0
- package/dist/esm/v3/runMetadata/noopManager.d.ts +12 -0
- package/dist/esm/v3/runMetadata/noopManager.js +22 -0
- package/dist/esm/v3/runMetadata/noopManager.js.map +1 -0
- package/dist/esm/v3/runMetadata/types.d.ts +11 -0
- package/dist/esm/v3/runMetadata/types.js +2 -0
- package/dist/esm/v3/runMetadata/types.js.map +1 -0
- package/dist/esm/v3/runtime/noopRuntimeManager.js +5 -1
- package/dist/esm/v3/runtime/noopRuntimeManager.js.map +1 -1
- package/dist/esm/v3/schemas/api.d.ts +193 -64
- package/dist/esm/v3/schemas/api.js +33 -3
- package/dist/esm/v3/schemas/api.js.map +1 -1
- package/dist/esm/v3/schemas/build.d.ts +12 -12
- package/dist/esm/v3/schemas/common.d.ts +24 -24
- package/dist/esm/v3/schemas/common.js +2 -0
- package/dist/esm/v3/schemas/common.js.map +1 -1
- package/dist/esm/v3/schemas/messages.d.ts +124 -123
- package/dist/esm/v3/schemas/messages.js +1 -0
- package/dist/esm/v3/schemas/messages.js.map +1 -1
- package/dist/esm/v3/schemas/schemas.d.ts +2 -2
- package/dist/esm/v3/tracer.js +1 -1
- package/dist/esm/v3/types/idempotencyKeys.d.ts +7 -0
- package/dist/esm/v3/types/idempotencyKeys.js +2 -0
- package/dist/esm/v3/types/idempotencyKeys.js.map +1 -0
- package/dist/esm/v3/types/index.d.ts +9 -63
- package/dist/esm/v3/types/index.js +2 -0
- package/dist/esm/v3/types/index.js.map +1 -1
- package/dist/esm/v3/types/schemas.d.ts +44 -0
- package/dist/esm/v3/types/schemas.js +38 -0
- package/dist/esm/v3/types/schemas.js.map +1 -0
- package/dist/esm/v3/types/tasks.d.ts +473 -0
- package/dist/esm/v3/types/tasks.js +37 -0
- package/dist/esm/v3/types/tasks.js.map +1 -0
- package/dist/esm/v3/utils/flattenAttributes.d.ts +2 -1
- package/dist/esm/v3/utils/flattenAttributes.js +38 -15
- package/dist/esm/v3/utils/flattenAttributes.js.map +1 -1
- package/dist/esm/v3/utils/getEnv.d.ts +1 -0
- package/dist/esm/v3/utils/getEnv.js +11 -0
- package/dist/esm/v3/utils/getEnv.js.map +1 -1
- package/dist/esm/v3/utils/globals.d.ts +2 -2
- package/dist/esm/v3/utils/globals.js.map +1 -1
- package/dist/esm/v3/utils/ioSerialization.d.ts +1 -0
- package/dist/esm/v3/utils/ioSerialization.js +20 -3
- package/dist/esm/v3/utils/ioSerialization.js.map +1 -1
- package/dist/esm/v3/utils/safeAsyncLocalStorage.d.ts +1 -0
- package/dist/esm/v3/utils/safeAsyncLocalStorage.js +3 -0
- package/dist/esm/v3/utils/safeAsyncLocalStorage.js.map +1 -1
- package/dist/esm/v3/workers/index.d.ts +2 -1
- package/dist/esm/v3/workers/index.js +2 -1
- package/dist/esm/v3/workers/index.js.map +1 -1
- package/dist/esm/v3/workers/taskExecutor.js +40 -8
- package/dist/esm/v3/workers/taskExecutor.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/package.json +35 -1
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RunSubscription = void 0;
|
|
4
|
+
exports.runShapeStream = runShapeStream;
|
|
5
|
+
const api_js_1 = require("../schemas/api.js");
|
|
6
|
+
const ioSerialization_js_1 = require("../utils/ioSerialization.js");
|
|
7
|
+
const stream_js_1 = require("./stream.js");
|
|
8
|
+
function runShapeStream(url, options) {
|
|
9
|
+
return new RunSubscription(url, options);
|
|
10
|
+
}
|
|
11
|
+
class RunSubscription {
|
|
12
|
+
url;
|
|
13
|
+
options;
|
|
14
|
+
abortController;
|
|
15
|
+
unsubscribeShape;
|
|
16
|
+
stream;
|
|
17
|
+
packetCache = new Map();
|
|
18
|
+
constructor(url, options) {
|
|
19
|
+
this.url = url;
|
|
20
|
+
this.options = options;
|
|
21
|
+
this.abortController = new AbortController();
|
|
22
|
+
const source = new ReadableStream({
|
|
23
|
+
start: async (controller) => {
|
|
24
|
+
this.unsubscribeShape = await (0, stream_js_1.zodShapeStream)(api_js_1.SubscribeRunRawShape, this.url, async (shape) => {
|
|
25
|
+
controller.enqueue(shape);
|
|
26
|
+
if (this.options?.closeOnComplete &&
|
|
27
|
+
shape.completedAt &&
|
|
28
|
+
!this.abortController.signal.aborted) {
|
|
29
|
+
controller.close();
|
|
30
|
+
this.abortController.abort();
|
|
31
|
+
}
|
|
32
|
+
}, {
|
|
33
|
+
signal: this.abortController.signal,
|
|
34
|
+
fetchClient: this.options?.fetchClient,
|
|
35
|
+
headers: this.options?.headers,
|
|
36
|
+
});
|
|
37
|
+
},
|
|
38
|
+
cancel: () => {
|
|
39
|
+
this.unsubscribe();
|
|
40
|
+
},
|
|
41
|
+
});
|
|
42
|
+
this.stream = (0, stream_js_1.createAsyncIterableStream)(source, {
|
|
43
|
+
transform: async (chunk, controller) => {
|
|
44
|
+
const run = await this.transformRunShape(chunk);
|
|
45
|
+
controller.enqueue(run);
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
unsubscribe() {
|
|
50
|
+
if (!this.abortController.signal.aborted) {
|
|
51
|
+
this.abortController.abort();
|
|
52
|
+
}
|
|
53
|
+
this.unsubscribeShape?.();
|
|
54
|
+
}
|
|
55
|
+
[Symbol.asyncIterator]() {
|
|
56
|
+
return this.stream[Symbol.asyncIterator]();
|
|
57
|
+
}
|
|
58
|
+
getReader() {
|
|
59
|
+
return this.stream.getReader();
|
|
60
|
+
}
|
|
61
|
+
async transformRunShape(row) {
|
|
62
|
+
const payloadPacket = row.payloadType
|
|
63
|
+
? { data: row.payload ?? undefined, dataType: row.payloadType }
|
|
64
|
+
: undefined;
|
|
65
|
+
const outputPacket = row.outputType
|
|
66
|
+
? { data: row.output ?? undefined, dataType: row.outputType }
|
|
67
|
+
: undefined;
|
|
68
|
+
const [payload, output] = await Promise.all([
|
|
69
|
+
{ packet: payloadPacket, key: "payload" },
|
|
70
|
+
{ packet: outputPacket, key: "output" },
|
|
71
|
+
].map(async ({ packet, key }) => {
|
|
72
|
+
if (!packet) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
const cachedResult = this.packetCache.get(`${row.friendlyId}/${key}`);
|
|
76
|
+
if (typeof cachedResult !== "undefined") {
|
|
77
|
+
return cachedResult;
|
|
78
|
+
}
|
|
79
|
+
const result = await (0, ioSerialization_js_1.conditionallyImportAndParsePacket)(packet);
|
|
80
|
+
this.packetCache.set(`${row.friendlyId}/${key}`, result);
|
|
81
|
+
return result;
|
|
82
|
+
}));
|
|
83
|
+
const metadata = row.metadata && row.metadataType
|
|
84
|
+
? await (0, ioSerialization_js_1.parsePacket)({ data: row.metadata, dataType: row.metadataType })
|
|
85
|
+
: undefined;
|
|
86
|
+
return {
|
|
87
|
+
id: row.friendlyId,
|
|
88
|
+
payload,
|
|
89
|
+
output,
|
|
90
|
+
createdAt: row.createdAt,
|
|
91
|
+
updatedAt: row.updatedAt,
|
|
92
|
+
taskIdentifier: row.taskIdentifier,
|
|
93
|
+
number: row.number,
|
|
94
|
+
status: apiStatusFromRunStatus(row.status),
|
|
95
|
+
durationMs: row.usageDurationMs,
|
|
96
|
+
costInCents: row.costInCents,
|
|
97
|
+
baseCostInCents: row.baseCostInCents,
|
|
98
|
+
tags: row.runTags ?? [],
|
|
99
|
+
idempotencyKey: row.idempotencyKey ?? undefined,
|
|
100
|
+
expiredAt: row.expiredAt ?? undefined,
|
|
101
|
+
finishedAt: row.completedAt ?? undefined,
|
|
102
|
+
startedAt: row.startedAt ?? undefined,
|
|
103
|
+
delayedUntil: row.delayUntil ?? undefined,
|
|
104
|
+
queuedAt: row.queuedAt ?? undefined,
|
|
105
|
+
error: row.error ?? undefined,
|
|
106
|
+
isTest: row.isTest,
|
|
107
|
+
metadata,
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.RunSubscription = RunSubscription;
|
|
112
|
+
function apiStatusFromRunStatus(status) {
|
|
113
|
+
switch (status) {
|
|
114
|
+
case "DELAYED": {
|
|
115
|
+
return "DELAYED";
|
|
116
|
+
}
|
|
117
|
+
case "WAITING_FOR_DEPLOY": {
|
|
118
|
+
return "WAITING_FOR_DEPLOY";
|
|
119
|
+
}
|
|
120
|
+
case "PENDING": {
|
|
121
|
+
return "QUEUED";
|
|
122
|
+
}
|
|
123
|
+
case "PAUSED":
|
|
124
|
+
case "WAITING_TO_RESUME": {
|
|
125
|
+
return "FROZEN";
|
|
126
|
+
}
|
|
127
|
+
case "RETRYING_AFTER_FAILURE": {
|
|
128
|
+
return "REATTEMPTING";
|
|
129
|
+
}
|
|
130
|
+
case "EXECUTING": {
|
|
131
|
+
return "EXECUTING";
|
|
132
|
+
}
|
|
133
|
+
case "CANCELED": {
|
|
134
|
+
return "CANCELED";
|
|
135
|
+
}
|
|
136
|
+
case "COMPLETED_SUCCESSFULLY": {
|
|
137
|
+
return "COMPLETED";
|
|
138
|
+
}
|
|
139
|
+
case "SYSTEM_FAILURE": {
|
|
140
|
+
return "SYSTEM_FAILURE";
|
|
141
|
+
}
|
|
142
|
+
case "INTERRUPTED": {
|
|
143
|
+
return "INTERRUPTED";
|
|
144
|
+
}
|
|
145
|
+
case "CRASHED": {
|
|
146
|
+
return "CRASHED";
|
|
147
|
+
}
|
|
148
|
+
case "COMPLETED_WITH_ERRORS": {
|
|
149
|
+
return "FAILED";
|
|
150
|
+
}
|
|
151
|
+
case "EXPIRED": {
|
|
152
|
+
return "EXPIRED";
|
|
153
|
+
}
|
|
154
|
+
default: {
|
|
155
|
+
throw new Error(`Unknown status: ${status}`);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
//# sourceMappingURL=runStream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runStream.js","sourceRoot":"","sources":["../../../../src/v3/apiClient/runStream.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export type ZodShapeStreamOptions = {
|
|
3
|
+
headers?: Record<string, string>;
|
|
4
|
+
fetchClient?: typeof fetch;
|
|
5
|
+
signal?: AbortSignal;
|
|
6
|
+
};
|
|
7
|
+
export declare function zodShapeStream<TShapeSchema extends z.ZodTypeAny>(schema: TShapeSchema, url: string, callback: (shape: z.output<TShapeSchema>) => void | Promise<void>, options?: ZodShapeStreamOptions): Promise<() => void>;
|
|
8
|
+
export type AsyncIterableStream<T> = AsyncIterable<T> & ReadableStream<T>;
|
|
9
|
+
export declare function createAsyncIterableStream<S, T>(source: ReadableStream<S>, transformer: Transformer<S, T>): AsyncIterableStream<T>;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.zodShapeStream = zodShapeStream;
|
|
4
|
+
exports.createAsyncIterableStream = createAsyncIterableStream;
|
|
5
|
+
async function zodShapeStream(schema, url, callback, options) {
|
|
6
|
+
const { ShapeStream, Shape } = await import("@electric-sql/client");
|
|
7
|
+
const stream = new ShapeStream({
|
|
8
|
+
url,
|
|
9
|
+
headers: options?.headers,
|
|
10
|
+
fetchClient: options?.fetchClient,
|
|
11
|
+
signal: options?.signal,
|
|
12
|
+
});
|
|
13
|
+
const shape = new Shape(stream);
|
|
14
|
+
const initialValue = await shape.value;
|
|
15
|
+
for (const shapeRow of initialValue.values()) {
|
|
16
|
+
await callback(schema.parse(shapeRow));
|
|
17
|
+
}
|
|
18
|
+
return shape.subscribe(async (newShape) => {
|
|
19
|
+
for (const shapeRow of newShape.values()) {
|
|
20
|
+
await callback(schema.parse(shapeRow));
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
function createAsyncIterableStream(source, transformer) {
|
|
25
|
+
const transformedStream = source.pipeThrough(new TransformStream(transformer));
|
|
26
|
+
transformedStream[Symbol.asyncIterator] = () => {
|
|
27
|
+
const reader = transformedStream.getReader();
|
|
28
|
+
return {
|
|
29
|
+
async next() {
|
|
30
|
+
const { done, value } = await reader.read();
|
|
31
|
+
return done ? { done: true, value: undefined } : { done: false, value };
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
return transformedStream;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=stream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../../src/v3/apiClient/stream.ts"],"names":[],"mappings":";;AAQA,wCA4BC;AAID,8DAiBC;AAjDM,KAAK,UAAU,cAAc,CAClC,MAAoB,EACpB,GAAW,EACX,QAAiE,EACjE,OAA+B;IAE/B,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAEpE,MAAM,MAAM,GAAG,IAAI,WAAW,CAAwB;QACpD,GAAG;QACH,OAAO,EAAE,OAAO,EAAE,OAAO;QACzB,WAAW,EAAE,OAAO,EAAE,WAAW;QACjC,MAAM,EAAE,OAAO,EAAE,MAAM;KACxB,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;IAEhC,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC;IAEvC,KAAK,MAAM,QAAQ,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;QAC7C,MAAM,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QACxC,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YACzC,MAAM,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAID,SAAgB,yBAAyB,CACvC,MAAyB,EACzB,WAA8B;IAE9B,MAAM,iBAAiB,GAAQ,MAAM,CAAC,WAAW,CAAC,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC;IAEpF,iBAAiB,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,GAAG,EAAE;QAC7C,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,EAAE,CAAC;QAC7C,OAAO;YACL,KAAK,CAAC,IAAI;gBACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC5C,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YAC1E,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,iBAAiB,CAAC;AAC3B,CAAC"}
|
|
@@ -31,3 +31,7 @@ export interface ListRunsQueryParams extends CursorPageParams {
|
|
|
31
31
|
export interface ListProjectRunsQueryParams extends CursorPageParams, ListRunsQueryParams {
|
|
32
32
|
env?: Array<"dev" | "staging" | "prod"> | "dev" | "staging" | "prod";
|
|
33
33
|
}
|
|
34
|
+
export interface SubscribeToRunsQueryParams {
|
|
35
|
+
tasks?: Array<string> | string;
|
|
36
|
+
tags?: Array<string> | string;
|
|
37
|
+
}
|
|
@@ -9,10 +9,11 @@ export declare class APIClientManagerAPI {
|
|
|
9
9
|
private constructor();
|
|
10
10
|
static getInstance(): APIClientManagerAPI;
|
|
11
11
|
disable(): void;
|
|
12
|
-
setGlobalAPIClientConfiguration(config: ApiClientConfiguration): boolean;
|
|
13
12
|
get baseURL(): string | undefined;
|
|
14
13
|
get accessToken(): string | undefined;
|
|
15
14
|
get client(): ApiClient | undefined;
|
|
16
15
|
clientOrThrow(): ApiClient;
|
|
16
|
+
runWithConfig<R extends (...args: any[]) => Promise<any>>(config: ApiClientConfiguration, fn: R): Promise<ReturnType<R>>;
|
|
17
|
+
setGlobalAPIClientConfiguration(config: ApiClientConfiguration): boolean;
|
|
17
18
|
apiClientMissingError(): "You need to set the TRIGGER_API_URL and TRIGGER_SECRET_KEY environment variables. See https://trigger.dev/docs/management/overview#authentication" | "You need to set the TRIGGER_API_URL environment variable. See https://trigger.dev/docs/management/overview#authentication" | "You need to set the TRIGGER_SECRET_KEY environment variable. See https://trigger.dev/docs/management/overview#authentication" | "Unknown error";
|
|
18
19
|
}
|
|
@@ -24,16 +24,16 @@ class APIClientManagerAPI {
|
|
|
24
24
|
disable() {
|
|
25
25
|
(0, globals_js_1.unregisterGlobal)(API_NAME);
|
|
26
26
|
}
|
|
27
|
-
setGlobalAPIClientConfiguration(config) {
|
|
28
|
-
return (0, globals_js_1.registerGlobal)(API_NAME, config);
|
|
29
|
-
}
|
|
30
27
|
get baseURL() {
|
|
31
|
-
const
|
|
32
|
-
return
|
|
28
|
+
const config = this.#getConfig();
|
|
29
|
+
return config?.baseURL ?? (0, getEnv_js_1.getEnvVar)("TRIGGER_API_URL") ?? "https://api.trigger.dev";
|
|
33
30
|
}
|
|
34
31
|
get accessToken() {
|
|
35
|
-
const
|
|
36
|
-
return
|
|
32
|
+
const config = this.#getConfig();
|
|
33
|
+
return (config?.secretKey ??
|
|
34
|
+
config?.accessToken ??
|
|
35
|
+
(0, getEnv_js_1.getEnvVar)("TRIGGER_SECRET_KEY") ??
|
|
36
|
+
(0, getEnv_js_1.getEnvVar)("TRIGGER_ACCESS_TOKEN"));
|
|
37
37
|
}
|
|
38
38
|
get client() {
|
|
39
39
|
if (!this.baseURL || !this.accessToken) {
|
|
@@ -47,6 +47,17 @@ class APIClientManagerAPI {
|
|
|
47
47
|
}
|
|
48
48
|
return new index_js_1.ApiClient(this.baseURL, this.accessToken);
|
|
49
49
|
}
|
|
50
|
+
runWithConfig(config, fn) {
|
|
51
|
+
const originalConfig = this.#getConfig();
|
|
52
|
+
const $config = { ...originalConfig, ...config };
|
|
53
|
+
(0, globals_js_1.registerGlobal)(API_NAME, $config, true);
|
|
54
|
+
return fn().finally(() => {
|
|
55
|
+
(0, globals_js_1.registerGlobal)(API_NAME, originalConfig, true);
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
setGlobalAPIClientConfiguration(config) {
|
|
59
|
+
return (0, globals_js_1.registerGlobal)(API_NAME, config);
|
|
60
|
+
}
|
|
50
61
|
#getConfig() {
|
|
51
62
|
return (0, globals_js_1.getGlobal)(API_NAME);
|
|
52
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v3/apiClientManager/index.ts"],"names":[],"mappings":";;;AAAA,oDAAkD;AAClD,oDAAkF;AAClF,kDAA+C;AAG/C,MAAM,QAAQ,GAAG,YAAY,CAAC;AAE9B,MAAa,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AALD,sDAKC;AAED,MAAa,mBAAmB;IACtB,MAAM,CAAC,SAAS,CAAuB;IAE/C,gBAAuB,CAAC;IAEjB,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAC7C,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEM,OAAO;QACZ,IAAA,6BAAgB,EAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v3/apiClientManager/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
import { type ApiRequestOptions } from "../apiClient/index.js";
|
|
2
2
|
export type ApiClientConfiguration = {
|
|
3
3
|
baseURL?: string;
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated Use `accessToken` instead.
|
|
6
|
+
*/
|
|
4
7
|
secretKey?: string;
|
|
8
|
+
/**
|
|
9
|
+
* The access token to authenticate with the Trigger API.
|
|
10
|
+
*/
|
|
11
|
+
accessToken?: string;
|
|
5
12
|
requestOptions?: ApiRequestOptions;
|
|
6
13
|
};
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EXIT_CODE_CHILD_NONZERO = exports.EXIT_CODE_ALREADY_HANDLED = void 0;
|
|
4
|
+
/** This was used by the old build system in case of indexing failures */
|
|
4
5
|
exports.EXIT_CODE_ALREADY_HANDLED = 111;
|
|
6
|
+
/** This means what it says and is only set once we have completed the attempt */
|
|
5
7
|
exports.EXIT_CODE_CHILD_NONZERO = 112;
|
|
6
8
|
//# sourceMappingURL=process.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process.js","sourceRoot":"","sources":["../../../../src/v3/apps/process.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"process.js","sourceRoot":"","sources":["../../../../src/v3/apps/process.ts"],"names":[],"mappings":";;;AAAA,yEAAyE;AAC5D,QAAA,yBAAyB,GAAG,GAAG,CAAC;AAC7C,iFAAiF;AACpE,QAAA,uBAAuB,GAAG,GAAG,CAAC"}
|
|
@@ -7,10 +7,15 @@ import { ExceptionEventProperties } from "./schemas/openTelemetry.js";
|
|
|
7
7
|
export declare class AbortTaskRunError extends Error {
|
|
8
8
|
constructor(message: string);
|
|
9
9
|
}
|
|
10
|
+
export declare class TaskPayloadParsedError extends Error {
|
|
11
|
+
readonly cause: unknown;
|
|
12
|
+
constructor(cause: unknown);
|
|
13
|
+
}
|
|
10
14
|
export declare function parseError(error: unknown): TaskRunError;
|
|
11
15
|
export declare function createErrorTaskError(error: TaskRunError): any;
|
|
12
16
|
export declare function createJsonErrorObject(error: TaskRunError): SerializedError;
|
|
13
17
|
export declare function sanitizeError(error: TaskRunError): TaskRunError;
|
|
18
|
+
export declare function shouldRetryError(error: TaskRunError): boolean;
|
|
14
19
|
export declare function correctErrorStackTrace(stackTrace: string, projectDir?: string, options?: {
|
|
15
20
|
removeFirstLine?: boolean;
|
|
16
21
|
isDev?: boolean;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GracefulExitTimeoutError = exports.SigKillTimeoutProcessError = exports.CancelledProcessError = exports.CleanupProcessError = exports.UnexpectedExitError = exports.TaskIndexingImportError = exports.TaskMetadataParseError = exports.UncaughtExceptionError = exports.AbortTaskRunError = void 0;
|
|
3
|
+
exports.GracefulExitTimeoutError = exports.SigKillTimeoutProcessError = exports.CancelledProcessError = exports.CleanupProcessError = exports.UnexpectedExitError = exports.TaskIndexingImportError = exports.TaskMetadataParseError = exports.UncaughtExceptionError = exports.TaskPayloadParsedError = exports.AbortTaskRunError = void 0;
|
|
4
4
|
exports.parseError = parseError;
|
|
5
5
|
exports.createErrorTaskError = createErrorTaskError;
|
|
6
6
|
exports.createJsonErrorObject = createJsonErrorObject;
|
|
7
7
|
exports.sanitizeError = sanitizeError;
|
|
8
|
+
exports.shouldRetryError = shouldRetryError;
|
|
8
9
|
exports.correctErrorStackTrace = correctErrorStackTrace;
|
|
9
10
|
exports.groupTaskMetadataIssuesByTask = groupTaskMetadataIssuesByTask;
|
|
10
11
|
exports.taskRunErrorEnhancer = taskRunErrorEnhancer;
|
|
@@ -17,6 +18,7 @@ const build_js_1 = require("./schemas/build.js");
|
|
|
17
18
|
const common_js_1 = require("./schemas/common.js");
|
|
18
19
|
const messages_js_1 = require("./schemas/messages.js");
|
|
19
20
|
const links_js_1 = require("./links.js");
|
|
21
|
+
const utils_js_1 = require("../utils.js");
|
|
20
22
|
class AbortTaskRunError extends Error {
|
|
21
23
|
constructor(message) {
|
|
22
24
|
super(message);
|
|
@@ -24,6 +26,16 @@ class AbortTaskRunError extends Error {
|
|
|
24
26
|
}
|
|
25
27
|
}
|
|
26
28
|
exports.AbortTaskRunError = AbortTaskRunError;
|
|
29
|
+
class TaskPayloadParsedError extends Error {
|
|
30
|
+
cause;
|
|
31
|
+
constructor(cause) {
|
|
32
|
+
const causeMessage = cause instanceof Error ? cause.message : String(cause);
|
|
33
|
+
super("Parsing payload with schema failed: " + causeMessage);
|
|
34
|
+
this.name = "TaskPayloadParsedError";
|
|
35
|
+
this.cause = cause;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.TaskPayloadParsedError = TaskPayloadParsedError;
|
|
27
39
|
function parseError(error) {
|
|
28
40
|
if (error instanceof Error) {
|
|
29
41
|
return {
|
|
@@ -134,6 +146,54 @@ function sanitizeError(error) {
|
|
|
134
146
|
}
|
|
135
147
|
}
|
|
136
148
|
}
|
|
149
|
+
function shouldRetryError(error) {
|
|
150
|
+
switch (error.type) {
|
|
151
|
+
case "INTERNAL_ERROR": {
|
|
152
|
+
switch (error.code) {
|
|
153
|
+
case "COULD_NOT_FIND_EXECUTOR":
|
|
154
|
+
case "COULD_NOT_FIND_TASK":
|
|
155
|
+
case "COULD_NOT_IMPORT_TASK":
|
|
156
|
+
case "CONFIGURED_INCORRECTLY":
|
|
157
|
+
case "TASK_ALREADY_RUNNING":
|
|
158
|
+
case "TASK_PROCESS_SIGKILL_TIMEOUT":
|
|
159
|
+
case "TASK_PROCESS_SIGSEGV":
|
|
160
|
+
case "TASK_PROCESS_OOM_KILLED":
|
|
161
|
+
case "TASK_PROCESS_MAYBE_OOM_KILLED":
|
|
162
|
+
case "TASK_RUN_CANCELLED":
|
|
163
|
+
case "MAX_DURATION_EXCEEDED":
|
|
164
|
+
case "DISK_SPACE_EXCEEDED":
|
|
165
|
+
case "TASK_RUN_HEARTBEAT_TIMEOUT":
|
|
166
|
+
return false;
|
|
167
|
+
case "GRACEFUL_EXIT_TIMEOUT":
|
|
168
|
+
case "HANDLE_ERROR_ERROR":
|
|
169
|
+
case "TASK_INPUT_ERROR":
|
|
170
|
+
case "TASK_OUTPUT_ERROR":
|
|
171
|
+
case "POD_EVICTED":
|
|
172
|
+
case "POD_UNKNOWN_ERROR":
|
|
173
|
+
case "TASK_EXECUTION_ABORTED":
|
|
174
|
+
case "TASK_EXECUTION_FAILED":
|
|
175
|
+
case "TASK_RUN_CRASHED":
|
|
176
|
+
case "TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE":
|
|
177
|
+
case "TASK_PROCESS_SIGTERM":
|
|
178
|
+
return true;
|
|
179
|
+
default:
|
|
180
|
+
(0, utils_js_1.assertExhaustive)(error.code);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
case "STRING_ERROR": {
|
|
184
|
+
return true;
|
|
185
|
+
}
|
|
186
|
+
case "BUILT_IN_ERROR": {
|
|
187
|
+
return true;
|
|
188
|
+
}
|
|
189
|
+
case "CUSTOM_ERROR": {
|
|
190
|
+
return true;
|
|
191
|
+
}
|
|
192
|
+
default: {
|
|
193
|
+
(0, utils_js_1.assertExhaustive)(error);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
137
197
|
function correctErrorStackTrace(stackTrace, projectDir, options) {
|
|
138
198
|
const [errorLine, ...traceLines] = stackTrace.split("\n");
|
|
139
199
|
return [
|
|
@@ -289,6 +349,14 @@ const prettyInternalErrors = {
|
|
|
289
349
|
href: links_js_1.links.docs.machines.home,
|
|
290
350
|
},
|
|
291
351
|
},
|
|
352
|
+
TASK_PROCESS_SIGSEGV: {
|
|
353
|
+
message: "Your task crashed with a segmentation fault (SIGSEGV). Most likely there's a bug in a package or binary you're using. If this keeps happening and you're unsure why, please get in touch.",
|
|
354
|
+
link: {
|
|
355
|
+
name: "Contact us",
|
|
356
|
+
href: links_js_1.links.site.contact,
|
|
357
|
+
magic: "CONTACT_FORM",
|
|
358
|
+
},
|
|
359
|
+
},
|
|
292
360
|
TASK_PROCESS_SIGTERM: {
|
|
293
361
|
message: "Your task exited after receiving SIGTERM but we don't know why. If this keeps happening, please get in touch so we can investigate.",
|
|
294
362
|
link: {
|
|
@@ -298,22 +366,69 @@ const prettyInternalErrors = {
|
|
|
298
366
|
},
|
|
299
367
|
},
|
|
300
368
|
};
|
|
369
|
+
const getPrettyTaskRunError = (code) => {
|
|
370
|
+
return {
|
|
371
|
+
type: "INTERNAL_ERROR",
|
|
372
|
+
code,
|
|
373
|
+
...prettyInternalErrors[code],
|
|
374
|
+
};
|
|
375
|
+
};
|
|
376
|
+
const getPrettyExceptionEvent = (code) => {
|
|
377
|
+
return {
|
|
378
|
+
type: code,
|
|
379
|
+
...prettyInternalErrors[code],
|
|
380
|
+
};
|
|
381
|
+
};
|
|
382
|
+
const findSignalInMessage = (message, truncateLength = 100) => {
|
|
383
|
+
if (!message) {
|
|
384
|
+
return;
|
|
385
|
+
}
|
|
386
|
+
const trunc = truncateLength ? message.slice(0, truncateLength) : message;
|
|
387
|
+
if (trunc.includes("SIGTERM")) {
|
|
388
|
+
return "SIGTERM";
|
|
389
|
+
}
|
|
390
|
+
else if (trunc.includes("SIGSEGV")) {
|
|
391
|
+
return "SIGSEGV";
|
|
392
|
+
}
|
|
393
|
+
else if (trunc.includes("SIGKILL")) {
|
|
394
|
+
return "SIGKILL";
|
|
395
|
+
}
|
|
396
|
+
else {
|
|
397
|
+
return;
|
|
398
|
+
}
|
|
399
|
+
};
|
|
301
400
|
function taskRunErrorEnhancer(error) {
|
|
302
401
|
switch (error.type) {
|
|
303
402
|
case "BUILT_IN_ERROR": {
|
|
304
403
|
if (error.name === "UnexpectedExitError") {
|
|
305
404
|
if (error.message.startsWith("Unexpected exit with code -1")) {
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
405
|
+
const signal = findSignalInMessage(error.stackTrace);
|
|
406
|
+
switch (signal) {
|
|
407
|
+
case "SIGTERM":
|
|
408
|
+
return {
|
|
409
|
+
...getPrettyTaskRunError("TASK_PROCESS_SIGTERM"),
|
|
410
|
+
};
|
|
411
|
+
case "SIGSEGV":
|
|
412
|
+
return {
|
|
413
|
+
...getPrettyTaskRunError("TASK_PROCESS_SIGSEGV"),
|
|
414
|
+
};
|
|
415
|
+
case "SIGKILL":
|
|
416
|
+
return {
|
|
417
|
+
...getPrettyTaskRunError("TASK_PROCESS_MAYBE_OOM_KILLED"),
|
|
418
|
+
};
|
|
419
|
+
default:
|
|
420
|
+
return {
|
|
421
|
+
...getPrettyTaskRunError("TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE"),
|
|
422
|
+
message: error.message,
|
|
423
|
+
stackTrace: error.stackTrace,
|
|
424
|
+
};
|
|
312
425
|
}
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
if (error.name === "Error") {
|
|
429
|
+
if (error.message === "ffmpeg was killed with signal SIGKILL") {
|
|
313
430
|
return {
|
|
314
|
-
|
|
315
|
-
code: common_js_1.TaskRunErrorCodes.TASK_PROCESS_MAYBE_OOM_KILLED,
|
|
316
|
-
...prettyInternalErrors.TASK_PROCESS_MAYBE_OOM_KILLED,
|
|
431
|
+
...getPrettyTaskRunError("TASK_PROCESS_OOM_KILLED"),
|
|
317
432
|
};
|
|
318
433
|
}
|
|
319
434
|
}
|
|
@@ -327,27 +442,33 @@ function taskRunErrorEnhancer(error) {
|
|
|
327
442
|
}
|
|
328
443
|
case "INTERNAL_ERROR": {
|
|
329
444
|
if (error.code === common_js_1.TaskRunErrorCodes.TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE) {
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
445
|
+
const signal = findSignalInMessage(error.message);
|
|
446
|
+
switch (signal) {
|
|
447
|
+
case "SIGTERM":
|
|
448
|
+
return {
|
|
449
|
+
...getPrettyTaskRunError("TASK_PROCESS_SIGTERM"),
|
|
450
|
+
};
|
|
451
|
+
case "SIGSEGV":
|
|
452
|
+
return {
|
|
453
|
+
...getPrettyTaskRunError("TASK_PROCESS_SIGSEGV"),
|
|
454
|
+
};
|
|
455
|
+
case "SIGKILL":
|
|
456
|
+
return {
|
|
457
|
+
...getPrettyTaskRunError("TASK_PROCESS_MAYBE_OOM_KILLED"),
|
|
458
|
+
};
|
|
459
|
+
default: {
|
|
460
|
+
return {
|
|
461
|
+
...getPrettyTaskRunError("TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE"),
|
|
462
|
+
message: error.message,
|
|
463
|
+
stackTrace: error.stackTrace,
|
|
464
|
+
};
|
|
465
|
+
}
|
|
336
466
|
}
|
|
337
|
-
return {
|
|
338
|
-
type: "INTERNAL_ERROR",
|
|
339
|
-
code: common_js_1.TaskRunErrorCodes.TASK_PROCESS_MAYBE_OOM_KILLED,
|
|
340
|
-
...prettyInternalErrors.TASK_PROCESS_MAYBE_OOM_KILLED,
|
|
341
|
-
};
|
|
342
|
-
}
|
|
343
|
-
const prettyError = prettyInternalErrors[error.code];
|
|
344
|
-
if (prettyError) {
|
|
345
|
-
return {
|
|
346
|
-
...error,
|
|
347
|
-
...prettyError,
|
|
348
|
-
};
|
|
349
467
|
}
|
|
350
|
-
|
|
468
|
+
return {
|
|
469
|
+
...error,
|
|
470
|
+
...getPrettyTaskRunError(error.code),
|
|
471
|
+
};
|
|
351
472
|
}
|
|
352
473
|
}
|
|
353
474
|
return error;
|
|
@@ -363,12 +484,46 @@ function exceptionEventEnhancer(exception) {
|
|
|
363
484
|
}
|
|
364
485
|
break;
|
|
365
486
|
}
|
|
487
|
+
case "Internal error": {
|
|
488
|
+
if (exception.message?.startsWith(common_js_1.TaskRunErrorCodes.TASK_PROCESS_EXITED_WITH_NON_ZERO_CODE)) {
|
|
489
|
+
const signal = findSignalInMessage(exception.message);
|
|
490
|
+
switch (signal) {
|
|
491
|
+
case "SIGTERM":
|
|
492
|
+
return {
|
|
493
|
+
...exception,
|
|
494
|
+
...getPrettyExceptionEvent("TASK_PROCESS_SIGTERM"),
|
|
495
|
+
};
|
|
496
|
+
case "SIGSEGV":
|
|
497
|
+
return {
|
|
498
|
+
...exception,
|
|
499
|
+
...getPrettyExceptionEvent("TASK_PROCESS_SIGSEGV"),
|
|
500
|
+
};
|
|
501
|
+
case "SIGKILL":
|
|
502
|
+
return {
|
|
503
|
+
...exception,
|
|
504
|
+
...getPrettyExceptionEvent("TASK_PROCESS_MAYBE_OOM_KILLED"),
|
|
505
|
+
};
|
|
506
|
+
default:
|
|
507
|
+
return exception;
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
break;
|
|
511
|
+
}
|
|
512
|
+
case "Error": {
|
|
513
|
+
if (exception.message === "ffmpeg was killed with signal SIGKILL") {
|
|
514
|
+
return {
|
|
515
|
+
...exception,
|
|
516
|
+
...prettyInternalErrors.TASK_PROCESS_OOM_KILLED,
|
|
517
|
+
};
|
|
518
|
+
}
|
|
519
|
+
break;
|
|
520
|
+
}
|
|
366
521
|
case common_js_1.TaskRunErrorCodes.TASK_PROCESS_MAYBE_OOM_KILLED:
|
|
367
522
|
case common_js_1.TaskRunErrorCodes.TASK_PROCESS_OOM_KILLED:
|
|
368
523
|
case common_js_1.TaskRunErrorCodes.TASK_PROCESS_SIGTERM: {
|
|
369
524
|
return {
|
|
370
525
|
...exception,
|
|
371
|
-
...
|
|
526
|
+
...getPrettyExceptionEvent(exception.type),
|
|
372
527
|
};
|
|
373
528
|
}
|
|
374
529
|
}
|