Build Extensions
Build extensions customize the build process or the resulting bundle and container image.
Usage
Import extensions and add them to the build.extensions array in trigger.config.ts:
ts
import { defineConfig } from "@trigger.dev/sdk";
import { prismaExtension } from "@trigger.dev/build/extensions/prisma";
import { puppeteer } from "@trigger.dev/build/extensions/puppeteer";
export default defineConfig({
project: "<project ref>",
build: {
extensions: [
prismaExtension({ version: "5.19.0", provider: "postgresql" }),
puppeteer(),
],
},
});Available Extensions
| Extension | Package | Use Case |
|---|---|---|
| prismaExtension | @trigger.dev/build/extensions/prisma | Prisma ORM |
| pythonExtension | @trigger.dev/python/extension | Python scripts |
| puppeteer | @trigger.dev/build/extensions/puppeteer | Headless Chrome |
| ffmpeg | @trigger.dev/build/extensions/core | Media processing |
| aptGet | @trigger.dev/build/extensions/core | System packages |
| additionalFiles | @trigger.dev/build/extensions/core | Copy files to build |
| additionalPackages | @trigger.dev/build/extensions/core | CLI tools via npm |
| syncEnvVars | @trigger.dev/build/extensions/core | Sync from Infisical/AWS |
| syncVercelEnvVars | @trigger.dev/build/extensions/core | Sync from Vercel |
| syncNeonEnvVars | @trigger.dev/build/extensions/core | Sync from Neon DB |
| esbuildPlugin | @trigger.dev/build/extensions | Custom esbuild plugins |
| emitDecoratorMetadata | @trigger.dev/build/extensions/typescript | TypeORM/decorators |