trigger.config.ts
Rama main · réplica de lectura del repositorio original.
import { aptGet, syncVercelEnvVars } from "@trigger.dev/build/extensions/core";
import { defineConfig } from "@trigger.dev/sdk/v3";
import { resolveTriggerProjectRef } from "./lib/trigger/project-ref";
import { resolveTriggerVercelBuildEnv } from "./lib/trigger/vercel-build-env";
const {
vercelAccessToken,
vercelProjectId,
vercelTeamId,
envSyncEnabled: vercelEnvSyncEnabled,
} = resolveTriggerVercelBuildEnv();
// Trigger's GitHub integration builds evaluate this config without our env
// vars, so the hosted ref stays the default here. Human-run deploys go through
// `pnpm trigger:*`, which refuses to fall back (scripts/trigger-cli.ts).
const { ref: triggerProjectRef } = resolveTriggerProjectRef();
export default defineConfig({
project: triggerProjectRef,
dirs: ["trigger"],
// Keep workers on the app's Node major. The aligned CLI supplies the patched
// Node 22.23.4 image; existing deployments require a redeploy to pick it up.
runtime: "node-22",
logLevel: "log",
maxDuration: 1800,
retries: {
enabledInDev: false,
default: {
maxAttempts: 1,
minTimeoutInMs: 1_000,
maxTimeoutInMs: 10_000,
factor: 2,
},
},
build: {
extensions: [
// node-liblzma is a transitive native dep of just-bash (lib/virtual-shell.ts),
// which the Slack handler task pulls in via runChatAgent → tools.ts. Its
// build needs pkg-config + liblzma headers, which aren't in the default
// Trigger.dev build image.
aptGet({ packages: ["pkg-config", "liblzma-dev"] }),
...(vercelEnvSyncEnabled
? [
syncVercelEnvVars({
vercelAccessToken: vercelAccessToken ?? undefined,
projectId: vercelProjectId ?? undefined,
vercelTeamId: vercelTeamId ?? undefined,
}),
]
: []),
],
},
});