trigger.dev 4.0.0-v4-beta.20 → 4.0.0-v4-beta.22

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.
Files changed (57) hide show
  1. package/dist/esm/apiClient.d.ts +7 -2
  2. package/dist/esm/apiClient.js +14 -8
  3. package/dist/esm/apiClient.js.map +1 -1
  4. package/dist/esm/commands/deploy.js +39 -41
  5. package/dist/esm/commands/deploy.js.map +1 -1
  6. package/dist/esm/commands/switch.d.ts +2 -2
  7. package/dist/esm/commands/switch.js +35 -10
  8. package/dist/esm/commands/switch.js.map +1 -1
  9. package/dist/esm/commands/update.d.ts +2 -2
  10. package/dist/esm/commands/update.js +19 -5
  11. package/dist/esm/commands/update.js.map +1 -1
  12. package/dist/esm/commands/whoami.d.ts +13 -2
  13. package/dist/esm/commands/whoami.js +35 -6
  14. package/dist/esm/commands/whoami.js.map +1 -1
  15. package/dist/esm/commands/workers/build.js +6 -14
  16. package/dist/esm/commands/workers/build.js.map +1 -1
  17. package/dist/esm/deploy/buildImage.d.ts +7 -11
  18. package/dist/esm/deploy/buildImage.js +274 -91
  19. package/dist/esm/deploy/buildImage.js.map +1 -1
  20. package/dist/esm/dev/devSupervisor.js +50 -0
  21. package/dist/esm/dev/devSupervisor.js.map +1 -1
  22. package/dist/esm/dev/taskRunProcessPool.d.ts +39 -0
  23. package/dist/esm/dev/taskRunProcessPool.js +213 -0
  24. package/dist/esm/dev/taskRunProcessPool.js.map +1 -0
  25. package/dist/esm/entryPoints/dev-run-controller.d.ts +2 -0
  26. package/dist/esm/entryPoints/dev-run-controller.js +39 -29
  27. package/dist/esm/entryPoints/dev-run-controller.js.map +1 -1
  28. package/dist/esm/entryPoints/dev-run-worker.js +178 -119
  29. package/dist/esm/entryPoints/dev-run-worker.js.map +1 -1
  30. package/dist/esm/entryPoints/managed/controller.d.ts +9 -0
  31. package/dist/esm/entryPoints/managed/controller.js +37 -2
  32. package/dist/esm/entryPoints/managed/controller.js.map +1 -1
  33. package/dist/esm/entryPoints/managed/execution.d.ts +8 -4
  34. package/dist/esm/entryPoints/managed/execution.js +78 -70
  35. package/dist/esm/entryPoints/managed/execution.js.map +1 -1
  36. package/dist/esm/entryPoints/managed/logger.d.ts +1 -0
  37. package/dist/esm/entryPoints/managed/logger.js +4 -1
  38. package/dist/esm/entryPoints/managed/logger.js.map +1 -1
  39. package/dist/esm/entryPoints/managed/taskRunProcessProvider.d.ts +63 -0
  40. package/dist/esm/entryPoints/managed/taskRunProcessProvider.js +256 -0
  41. package/dist/esm/entryPoints/managed/taskRunProcessProvider.js.map +1 -0
  42. package/dist/esm/entryPoints/managed-index-controller.js +21 -1
  43. package/dist/esm/entryPoints/managed-index-controller.js.map +1 -1
  44. package/dist/esm/entryPoints/managed-index-worker.js +5 -0
  45. package/dist/esm/entryPoints/managed-index-worker.js.map +1 -1
  46. package/dist/esm/entryPoints/managed-run-worker.js +172 -116
  47. package/dist/esm/entryPoints/managed-run-worker.js.map +1 -1
  48. package/dist/esm/executions/taskRunProcess.d.ts +1 -1
  49. package/dist/esm/executions/taskRunProcess.js +10 -4
  50. package/dist/esm/executions/taskRunProcess.js.map +1 -1
  51. package/dist/esm/indexing/indexWorkerManifest.d.ts +5 -0
  52. package/dist/esm/utilities/fileSystem.d.ts +1 -1
  53. package/dist/esm/utilities/fileSystem.js +1 -1
  54. package/dist/esm/utilities/tempDirectories.js +1 -1
  55. package/dist/esm/utilities/tempDirectories.js.map +1 -1
  56. package/dist/esm/version.js +1 -1
  57. package/package.json +3 -3
@@ -0,0 +1,63 @@
1
+ import { WorkerManifest } from "@trigger.dev/core/v3";
2
+ import { TaskRunProcess } from "../../executions/taskRunProcess.js";
3
+ import { RunnerEnv } from "./env.js";
4
+ import { RunLogger } from "./logger.js";
5
+ export interface TaskRunProcessProviderOptions {
6
+ workerManifest: WorkerManifest;
7
+ env: RunnerEnv;
8
+ logger: RunLogger;
9
+ processKeepAliveEnabled: boolean;
10
+ processKeepAliveMaxExecutionCount: number;
11
+ }
12
+ export interface GetProcessOptions {
13
+ taskRunEnv: Record<string, string>;
14
+ isWarmStart?: boolean;
15
+ }
16
+ export declare class TaskRunProcessProvider {
17
+ private readonly workerManifest;
18
+ private readonly env;
19
+ private readonly logger;
20
+ private readonly processKeepAliveEnabled;
21
+ private readonly processKeepAliveMaxExecutionCount;
22
+ private persistentProcess;
23
+ private executionCount;
24
+ constructor(opts: TaskRunProcessProviderOptions);
25
+ get hasPersistentProcess(): boolean;
26
+ handleImmediateRetry(): Promise<void>;
27
+ /**
28
+ * Gets a TaskRunProcess, either by reusing an existing one or creating a new one
29
+ */
30
+ getProcess(opts: GetProcessOptions): Promise<TaskRunProcess>;
31
+ /**
32
+ * Returns a process after execution, handling keep-alive logic and cleanup
33
+ */
34
+ returnProcess(process: TaskRunProcess): Promise<void>;
35
+ suspendProcess(flush: boolean, process?: TaskRunProcess): Promise<void>;
36
+ /**
37
+ * Handles process abort/kill scenarios
38
+ */
39
+ handleProcessAbort(process: TaskRunProcess): Promise<void>;
40
+ killProcess(process: TaskRunProcess): Promise<void>;
41
+ /**
42
+ * Forces cleanup of any persistent process
43
+ */
44
+ cleanup(): Promise<void>;
45
+ /**
46
+ * Gets metrics about the provider state
47
+ */
48
+ get metrics(): {
49
+ processKeepAlive: {
50
+ enabled: boolean;
51
+ executionCount: number;
52
+ maxExecutionCount: number;
53
+ hasPersistentProcess: boolean;
54
+ };
55
+ };
56
+ private createTaskRunProcess;
57
+ private buildProcessEnvironment;
58
+ private shouldReusePersistentProcess;
59
+ private shouldKeepProcessAlive;
60
+ private isProcessHealthy;
61
+ private cleanupProcess;
62
+ private sendDebugLog;
63
+ }
@@ -0,0 +1,256 @@
1
+ import { TaskRunProcess } from "../../executions/taskRunProcess.js";
2
+ export class TaskRunProcessProvider {
3
+ workerManifest;
4
+ env;
5
+ logger;
6
+ processKeepAliveEnabled;
7
+ processKeepAliveMaxExecutionCount;
8
+ // Process keep-alive state
9
+ persistentProcess = null;
10
+ executionCount = 0;
11
+ constructor(opts) {
12
+ this.workerManifest = opts.workerManifest;
13
+ this.env = opts.env;
14
+ this.logger = opts.logger;
15
+ this.processKeepAliveEnabled = opts.processKeepAliveEnabled;
16
+ this.processKeepAliveMaxExecutionCount = opts.processKeepAliveMaxExecutionCount;
17
+ }
18
+ get hasPersistentProcess() {
19
+ return !!this.persistentProcess;
20
+ }
21
+ async handleImmediateRetry() {
22
+ if (!this.processKeepAliveEnabled) {
23
+ // For immediate retries, we need to ensure we have a clean process
24
+ if (this.persistentProcess) {
25
+ // If the process is not prepared for the next attempt, we need to get a fresh one
26
+ if (!this.persistentProcess.isPreparedForNextAttempt) {
27
+ this.sendDebugLog("existing task run process not prepared for retry, will get fresh process");
28
+ await this.persistentProcess.kill("SIGKILL");
29
+ this.persistentProcess = null;
30
+ }
31
+ }
32
+ }
33
+ }
34
+ /**
35
+ * Gets a TaskRunProcess, either by reusing an existing one or creating a new one
36
+ */
37
+ async getProcess(opts) {
38
+ this.sendDebugLog("Getting TaskRunProcess", {
39
+ processKeepAliveEnabled: this.processKeepAliveEnabled,
40
+ hasPersistentProcess: !!this.persistentProcess,
41
+ executionCount: this.executionCount,
42
+ maxExecutionCount: this.processKeepAliveMaxExecutionCount,
43
+ isWarmStart: opts.isWarmStart,
44
+ });
45
+ // If process keep-alive is disabled, always create a new process
46
+ if (!this.processKeepAliveEnabled) {
47
+ this.sendDebugLog("Creating new TaskRunProcess (keep-alive disabled)");
48
+ return this.createTaskRunProcess(opts);
49
+ }
50
+ // If process keep-alive is enabled and we have a healthy persistent process, reuse it
51
+ if (this.shouldReusePersistentProcess()) {
52
+ this.sendDebugLog("Reusing persistent TaskRunProcess", {
53
+ executionCount: this.executionCount,
54
+ });
55
+ return this.persistentProcess;
56
+ }
57
+ // Create new process (keep-alive enabled but no reusable process available)
58
+ this.sendDebugLog("Creating new TaskRunProcess", {
59
+ hadPersistentProcess: !!this.persistentProcess,
60
+ reason: this.processKeepAliveEnabled
61
+ ? "execution limit reached or unhealthy"
62
+ : "keep-alive disabled",
63
+ });
64
+ const existingPersistentProcess = this.persistentProcess;
65
+ // Clean up old persistent process if it exists
66
+ if (existingPersistentProcess) {
67
+ await this.cleanupProcess(existingPersistentProcess);
68
+ }
69
+ this.persistentProcess = this.createTaskRunProcess(opts);
70
+ this.executionCount = 0;
71
+ return this.persistentProcess;
72
+ }
73
+ /**
74
+ * Returns a process after execution, handling keep-alive logic and cleanup
75
+ */
76
+ async returnProcess(process) {
77
+ this.sendDebugLog("Returning TaskRunProcess", {
78
+ processKeepAliveEnabled: this.processKeepAliveEnabled,
79
+ executionCount: this.executionCount,
80
+ maxExecutionCount: this.processKeepAliveMaxExecutionCount,
81
+ });
82
+ if (!this.processKeepAliveEnabled) {
83
+ // Keep-alive disabled - immediately cleanup the process
84
+ this.sendDebugLog("Keep-alive disabled, cleaning up process immediately");
85
+ await process.cleanup(true);
86
+ return;
87
+ }
88
+ // Keep-alive enabled - check if we should keep the process alive
89
+ if (this.shouldKeepProcessAlive(process)) {
90
+ this.sendDebugLog("Keeping TaskRunProcess alive for next run", {
91
+ executionCount: this.executionCount,
92
+ maxExecutionCount: this.processKeepAliveMaxExecutionCount,
93
+ });
94
+ // Call cleanup(false) to prepare for next run but keep process alive
95
+ await process.cleanup(false);
96
+ this.persistentProcess = process;
97
+ this.executionCount++;
98
+ }
99
+ else {
100
+ this.sendDebugLog("Not keeping TaskRunProcess alive, cleaning up", {
101
+ executionCount: this.executionCount,
102
+ maxExecutionCount: this.processKeepAliveMaxExecutionCount,
103
+ isHealthy: this.isProcessHealthy(process),
104
+ });
105
+ // Cleanup the process completely
106
+ await process.cleanup(true);
107
+ }
108
+ }
109
+ async suspendProcess(flush, process) {
110
+ if (this.persistentProcess) {
111
+ if (process) {
112
+ if (this.persistentProcess.pid === process.pid) {
113
+ this.sendDebugLog("Suspending matching persistent TaskRunProcess (process provided)", {
114
+ pid: process.pid,
115
+ flush,
116
+ });
117
+ this.persistentProcess = null;
118
+ this.executionCount = 0;
119
+ await process.suspend({ flush });
120
+ }
121
+ else {
122
+ this.sendDebugLog("Suspending TaskRunProcess (does not match persistent process)", {
123
+ pid: process.pid,
124
+ flush,
125
+ });
126
+ await process.suspend({ flush });
127
+ }
128
+ }
129
+ else {
130
+ this.sendDebugLog("Suspending persistent TaskRunProcess (no process provided)", {
131
+ pid: this.persistentProcess.pid,
132
+ flush,
133
+ });
134
+ this.persistentProcess = null;
135
+ this.executionCount = 0;
136
+ }
137
+ }
138
+ else {
139
+ if (process) {
140
+ this.sendDebugLog("Suspending non-persistent TaskRunProcess (process provided)", {
141
+ pid: process.pid,
142
+ flush,
143
+ });
144
+ await process.suspend({ flush });
145
+ }
146
+ else {
147
+ this.sendDebugLog("Suspending non-persistent TaskRunProcess (no process provided)", {
148
+ flush,
149
+ });
150
+ }
151
+ }
152
+ }
153
+ /**
154
+ * Handles process abort/kill scenarios
155
+ */
156
+ async handleProcessAbort(process) {
157
+ this.sendDebugLog("Handling process abort");
158
+ // If this was our persistent process, clear it
159
+ if (this.persistentProcess?.pid === process.pid) {
160
+ this.persistentProcess = null;
161
+ this.executionCount = 0;
162
+ }
163
+ // Kill the process
164
+ await process.cleanup(true);
165
+ }
166
+ async killProcess(process) {
167
+ this.sendDebugLog("Killing process");
168
+ // If this was our persistent process, clear it
169
+ if (this.persistentProcess?.pid === process.pid) {
170
+ this.persistentProcess = null;
171
+ this.executionCount = 0;
172
+ }
173
+ // Kill the process
174
+ await this.cleanupProcess(process);
175
+ }
176
+ /**
177
+ * Forces cleanup of any persistent process
178
+ */
179
+ async cleanup() {
180
+ if (this.persistentProcess) {
181
+ this.sendDebugLog("cleanup() called");
182
+ await this.cleanupProcess(this.persistentProcess);
183
+ }
184
+ }
185
+ /**
186
+ * Gets metrics about the provider state
187
+ */
188
+ get metrics() {
189
+ return {
190
+ processKeepAlive: {
191
+ enabled: this.processKeepAliveEnabled,
192
+ executionCount: this.executionCount,
193
+ maxExecutionCount: this.processKeepAliveMaxExecutionCount,
194
+ hasPersistentProcess: !!this.persistentProcess,
195
+ },
196
+ };
197
+ }
198
+ createTaskRunProcess({ taskRunEnv, isWarmStart }) {
199
+ const processEnv = this.buildProcessEnvironment(taskRunEnv);
200
+ const taskRunProcess = new TaskRunProcess({
201
+ workerManifest: this.workerManifest,
202
+ env: processEnv,
203
+ serverWorker: {
204
+ id: "managed",
205
+ contentHash: this.env.TRIGGER_CONTENT_HASH,
206
+ version: this.env.TRIGGER_DEPLOYMENT_VERSION,
207
+ engine: "V2",
208
+ },
209
+ machineResources: {
210
+ cpu: Number(this.env.TRIGGER_MACHINE_CPU),
211
+ memory: Number(this.env.TRIGGER_MACHINE_MEMORY),
212
+ },
213
+ isWarmStart,
214
+ }).initialize();
215
+ return taskRunProcess;
216
+ }
217
+ buildProcessEnvironment(taskRunEnv) {
218
+ return {
219
+ ...taskRunEnv,
220
+ ...this.env.gatherProcessEnv(),
221
+ HEARTBEAT_INTERVAL_MS: String(this.env.TRIGGER_HEARTBEAT_INTERVAL_SECONDS * 1000),
222
+ };
223
+ }
224
+ shouldReusePersistentProcess() {
225
+ this.sendDebugLog("Checking if persistent process should be reused", {
226
+ executionCount: this.executionCount,
227
+ maxExecutionCount: this.processKeepAliveMaxExecutionCount,
228
+ pid: this.persistentProcess?.pid ?? "unknown",
229
+ isBeingKilled: this.persistentProcess?.isBeingKilled ?? "unknown",
230
+ });
231
+ return (!!this.persistentProcess &&
232
+ this.executionCount < this.processKeepAliveMaxExecutionCount &&
233
+ this.isProcessHealthy(this.persistentProcess));
234
+ }
235
+ shouldKeepProcessAlive(process) {
236
+ return (this.executionCount < this.processKeepAliveMaxExecutionCount && this.isProcessHealthy(process));
237
+ }
238
+ isProcessHealthy(process) {
239
+ // Basic health check - TaskRunProcess will handle more detailed internal health checks
240
+ return !process.isBeingKilled && process.pid !== undefined;
241
+ }
242
+ async cleanupProcess(taskRunProcess) {
243
+ if (taskRunProcess && taskRunProcess.pid !== undefined) {
244
+ this.sendDebugLog("Cleaning up TaskRunProcess", { pid: taskRunProcess.pid });
245
+ await taskRunProcess.kill("SIGKILL").catch(() => { });
246
+ }
247
+ }
248
+ sendDebugLog(message, properties) {
249
+ this.logger.sendDebugLog({
250
+ runId: undefined, // Provider doesn't have access to current run ID
251
+ message: `[taskRunProcessProvider] ${message}`,
252
+ properties,
253
+ });
254
+ }
255
+ }
256
+ //# sourceMappingURL=taskRunProcessProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taskRunProcessProvider.js","sourceRoot":"","sources":["../../../../src/entryPoints/managed/taskRunProcessProvider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAiBpE,MAAM,OAAO,sBAAsB;IAChB,cAAc,CAAiB;IAC/B,GAAG,CAAY;IACf,MAAM,CAAY;IAClB,uBAAuB,CAAU;IACjC,iCAAiC,CAAS;IAE3D,2BAA2B;IACnB,iBAAiB,GAA0B,IAAI,CAAC;IAChD,cAAc,GAAG,CAAC,CAAC;IAE3B,YAAY,IAAmC;QAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC1C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,uBAAuB,CAAC;QAC5D,IAAI,CAAC,iCAAiC,GAAG,IAAI,CAAC,iCAAiC,CAAC;IAClF,CAAC;IAED,IAAI,oBAAoB;QACtB,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAClC,mEAAmE;YACnE,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,kFAAkF;gBAClF,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,CAAC;oBACrD,IAAI,CAAC,YAAY,CACf,0EAA0E,CAC3E,CAAC;oBACF,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC7C,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,IAAuB;QACtC,IAAI,CAAC,YAAY,CAAC,wBAAwB,EAAE;YAC1C,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB;YAC9C,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,iBAAiB,EAAE,IAAI,CAAC,iCAAiC;YACzD,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;QAEH,iEAAiE;QACjE,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAClC,IAAI,CAAC,YAAY,CAAC,mDAAmD,CAAC,CAAC;YACvE,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;QAED,sFAAsF;QACtF,IAAI,IAAI,CAAC,4BAA4B,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,YAAY,CAAC,mCAAmC,EAAE;gBACrD,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC,iBAAkB,CAAC;QACjC,CAAC;QAED,4EAA4E;QAC5E,IAAI,CAAC,YAAY,CAAC,6BAA6B,EAAE;YAC/C,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB;YAC9C,MAAM,EAAE,IAAI,CAAC,uBAAuB;gBAClC,CAAC,CAAC,sCAAsC;gBACxC,CAAC,CAAC,qBAAqB;SAC1B,CAAC,CAAC;QAEH,MAAM,yBAAyB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QAEzD,+CAA+C;QAC/C,IAAI,yBAAyB,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,cAAc,CAAC,yBAAyB,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QAExB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,OAAuB;QACzC,IAAI,CAAC,YAAY,CAAC,0BAA0B,EAAE;YAC5C,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,iBAAiB,EAAE,IAAI,CAAC,iCAAiC;SAC1D,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAClC,wDAAwD;YACxD,IAAI,CAAC,YAAY,CAAC,sDAAsD,CAAC,CAAC;YAC1E,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,iEAAiE;QACjE,IAAI,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,YAAY,CAAC,2CAA2C,EAAE;gBAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,iBAAiB,EAAE,IAAI,CAAC,iCAAiC;aAC1D,CAAC,CAAC;YAEH,qEAAqE;YACrE,MAAM,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;YACjC,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,CAAC,+CAA+C,EAAE;gBACjE,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,iBAAiB,EAAE,IAAI,CAAC,iCAAiC;gBACzD,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;aAC1C,CAAC,CAAC;YAEH,iCAAiC;YACjC,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAAc,EAAE,OAAwB;QAC3D,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;oBAC/C,IAAI,CAAC,YAAY,CAAC,kEAAkE,EAAE;wBACpF,GAAG,EAAE,OAAO,CAAC,GAAG;wBAChB,KAAK;qBACN,CAAC,CAAC;oBAEH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;oBAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;oBAExB,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACnC,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,YAAY,CAAC,+DAA+D,EAAE;wBACjF,GAAG,EAAE,OAAO,CAAC,GAAG;wBAChB,KAAK;qBACN,CAAC,CAAC;oBAEH,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,4DAA4D,EAAE;oBAC9E,GAAG,EAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG;oBAC/B,KAAK;iBACN,CAAC,CAAC;gBAEH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,YAAY,CAAC,6DAA6D,EAAE;oBAC/E,GAAG,EAAE,OAAO,CAAC,GAAG;oBAChB,KAAK;iBACN,CAAC,CAAC;gBAEH,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,gEAAgE,EAAE;oBAClF,KAAK;iBACN,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,OAAuB;QAC9C,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC,CAAC;QAE5C,+CAA+C;QAC/C,IAAI,IAAI,CAAC,iBAAiB,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;YAChD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,mBAAmB;QACnB,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAuB;QACvC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAErC,+CAA+C;QAC/C,IAAI,IAAI,CAAC,iBAAiB,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;YAChD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QAC1B,CAAC;QAED,mBAAmB;QACnB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;YAEtC,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO;YACL,gBAAgB,EAAE;gBAChB,OAAO,EAAE,IAAI,CAAC,uBAAuB;gBACrC,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,iBAAiB,EAAE,IAAI,CAAC,iCAAiC;gBACzD,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB;aAC/C;SACF,CAAC;IACJ,CAAC;IAEO,oBAAoB,CAAC,EAAE,UAAU,EAAE,WAAW,EAAqB;QACzE,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAE5D,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC;YACxC,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,GAAG,EAAE,UAAU;YACf,YAAY,EAAE;gBACZ,EAAE,EAAE,SAAS;gBACb,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,oBAAoB;gBAC1C,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,0BAA0B;gBAC5C,MAAM,EAAE,IAAI;aACb;YACD,gBAAgB,EAAE;gBAChB,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC;gBACzC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC;aAChD;YACD,WAAW;SACZ,CAAC,CAAC,UAAU,EAAE,CAAC;QAEhB,OAAO,cAAc,CAAC;IACxB,CAAC;IAEO,uBAAuB,CAAC,UAAkC;QAChE,OAAO;YACL,GAAG,UAAU;YACb,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE;YAC9B,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,kCAAkC,GAAG,IAAI,CAAC;SAClF,CAAC;IACJ,CAAC;IAEO,4BAA4B;QAClC,IAAI,CAAC,YAAY,CAAC,iDAAiD,EAAE;YACnE,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,iBAAiB,EAAE,IAAI,CAAC,iCAAiC;YACzD,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,GAAG,IAAI,SAAS;YAC7C,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,IAAI,SAAS;SAClE,CAAC,CAAC;QAEH,OAAO,CACL,CAAC,CAAC,IAAI,CAAC,iBAAiB;YACxB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iCAAiC;YAC5D,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAC9C,CAAC;IACJ,CAAC;IAEO,sBAAsB,CAAC,OAAuB;QACpD,OAAO,CACL,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,iCAAiC,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAC/F,CAAC;IACJ,CAAC;IAEO,gBAAgB,CAAC,OAAuB;QAC9C,uFAAuF;QACvF,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC;IAC7D,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,cAA8B;QACzD,IAAI,cAAc,IAAI,cAAc,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YACvD,IAAI,CAAC,YAAY,CAAC,4BAA4B,EAAE,EAAE,GAAG,EAAE,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC;YAE7E,MAAM,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,OAAe,EAAE,UAA8C;QAClF,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;YACvB,KAAK,EAAE,SAAS,EAAE,iDAAiD;YACnE,OAAO,EAAE,4BAA4B,OAAO,EAAE;YAC9C,UAAU;SACX,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -61,6 +61,8 @@ async function indexDeployment({ cliApiClient, projectRef, deploymentId, buildMa
61
61
  console.log("Writing index.json", process.cwd());
62
62
  await writeFile(join(process.cwd(), "index.json"), JSON.stringify(workerManifest, null, 2));
63
63
  const sourceFiles = resolveSourceFiles(buildManifest.sources, workerManifest.tasks);
64
+ const buildPlatform = process.env.BUILDPLATFORM;
65
+ const targetPlatform = process.env.TARGETPLATFORM;
64
66
  const backgroundWorkerBody = {
65
67
  localOnly: true,
66
68
  metadata: {
@@ -73,8 +75,26 @@ async function indexDeployment({ cliApiClient, projectRef, deploymentId, buildMa
73
75
  },
74
76
  engine: "V2",
75
77
  supportsLazyAttempts: true,
78
+ buildPlatform,
79
+ targetPlatform,
76
80
  };
77
- await cliApiClient.createDeploymentBackgroundWorker(deploymentId, backgroundWorkerBody);
81
+ const createResponse = await cliApiClient.createDeploymentBackgroundWorker(deploymentId, backgroundWorkerBody);
82
+ if (!createResponse.success) {
83
+ console.error(JSON.stringify({
84
+ message: "Failed to create background worker",
85
+ buildPlatform,
86
+ targetPlatform,
87
+ error: createResponse.error,
88
+ }));
89
+ // Do NOT fail the deployment, this may be a multi-platform deployment
90
+ return;
91
+ }
92
+ console.log(JSON.stringify({
93
+ message: "Background worker created",
94
+ buildPlatform,
95
+ targetPlatform,
96
+ createResponse: createResponse.data,
97
+ }));
78
98
  }
79
99
  catch (error) {
80
100
  const serialiedIndexError = serializeIndexingError(error, stderr.join("\n"));
@@ -1 +1 @@
1
- {"version":3,"file":"managed-index-controller.js","sourceRoot":"","sources":["../../../src/entryPoints/managed-index-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"managed-index-controller.js","sourceRoot":"","sources":["../../../src/entryPoints/managed-index-controller.ts"],"names":[],"mappings":"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"}
@@ -122,6 +122,11 @@ await sendMessageInCatalog(indexerToWorkerMessages, "INDEX_COMPLETE", {
122
122
  loaderEntryPoint: buildManifest.loaderEntryPoint,
123
123
  customConditions: buildManifest.customConditions,
124
124
  initEntryPoint: buildManifest.initEntryPoint,
125
+ processKeepAlive: typeof config.experimental_processKeepAlive === "object"
126
+ ? config.experimental_processKeepAlive
127
+ : typeof config.experimental_processKeepAlive === "boolean"
128
+ ? { enabled: config.experimental_processKeepAlive }
129
+ : undefined,
125
130
  timings,
126
131
  },
127
132
  importErrors,
@@ -1 +1 @@
1
- {"version":3,"file":"managed-index-worker.js","sourceRoot":"","sources":["../../../src/entryPoints/managed-index-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"managed-index-worker.js","sourceRoot":"","sources":["../../../src/entryPoints/managed-index-worker.ts"],"names":[],"mappings":"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"}