From 88b13b0d80d237721a2424136a01a3c78b0096dd Mon Sep 17 00:00:00 2001
From: D-K-P <8297864+D-K-P@users.noreply.github.com>
Date: Fri, 27 Sep 2024 10:20:57 +0100
Subject: [PATCH 1/5] fix header
---
docs/guides/examples/supabase-database-operations.mdx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/guides/examples/supabase-database-operations.mdx b/docs/guides/examples/supabase-database-operations.mdx
index d5454475ac..4effb54d32 100644
--- a/docs/guides/examples/supabase-database-operations.mdx
+++ b/docs/guides/examples/supabase-database-operations.mdx
@@ -181,7 +181,7 @@ export const supabaseUpdateUserSubscription = task({
sure you have the correct permissions set up for your project.
-## Testing your task
+### Testing your task
To test this task in the [Trigger.dev dashboard](https://cloud.trigger.dev), you can use the following payload:
From 9e5348cae0f13a6a65c7e23087427c3a1f67bc31 Mon Sep 17 00:00:00 2001
From: D-K-P <8297864+D-K-P@users.noreply.github.com>
Date: Fri, 27 Sep 2024 11:19:13 +0100
Subject: [PATCH 2/5] Prisma first pass
---
docs/guides/frameworks/prisma.mdx | 163 ++++++++++++++++++++++++++++++
docs/mint.json | 66 +++---------
2 files changed, 177 insertions(+), 52 deletions(-)
create mode 100644 docs/guides/frameworks/prisma.mdx
diff --git a/docs/guides/frameworks/prisma.mdx b/docs/guides/frameworks/prisma.mdx
new file mode 100644
index 0000000000..bd0630fbef
--- /dev/null
+++ b/docs/guides/frameworks/prisma.mdx
@@ -0,0 +1,163 @@
+---
+title: "Prisma setup guide"
+sidebarTitle: "Prisma"
+description: "This guide will show you how to setup Prisma with Trigger.dev"
+icon: "Triangle"
+---
+
+import Prerequisites from "/snippets/framework-prerequisites.mdx";
+import CliInitStep from "/snippets/step-cli-init.mdx";
+import CliDevStep from "/snippets/step-cli-dev.mdx";
+import CliRunTestStep from "/snippets/step-run-test.mdx";
+import CliViewRunStep from "/snippets/step-view-run.mdx";
+import UsefulNextSteps from "/snippets/useful-next-steps.mdx";
+
+## Overview
+
+This guide will show you how to set up Prisma with Trigger.dev, test and view an example task run.
+
+## Prerequisites
+
+- An existing Node.js project with a `package.json` file
+- Ensure TypeScript is installed
+- a [PostgreSQL](https://www.postgresql.org/) database server running locally, or accessible via a connection string
+- Prisma ORM [installed and initialized](https://www.prisma.io/docs/getting-started/quickstart) in your project
+- A `DATABASE_URL` environment variable set in your `.env` file, pointing to your PostgreSQL database (e.g. `postgresql://user:password@localhost:5432/dbname`)
+
+## Initial setup
+
+
+
+
+
+
+
+
+## Creating a task using Prisma and deploying it to production using Trigger.dev
+
+
+
+
+First, create a new task file in your `trigger` folder.
+
+This is a simple task that will add a new user to the database.
+
+
+ For this task to work correctly, you will need to have a `user` model in your Prisma schema with
+ an `id` field, a `name` field, and an `email` field.
+
+
+```ts /trigger/prisma-add-new-user.ts
+import { PrismaClient } from "@prisma/client";
+import { task } from "@trigger.dev/sdk/v3";
+
+// Initialize Prisma client
+const prisma = new PrismaClient();
+
+export const addNewUser = task({
+ id: "prisma-add-new-user",
+ run: async (payload: { name: string; email: string; id: number }) => {
+ const { name, email, id } = payload;
+
+ // This will create a new user in the database
+ const user = await prisma.user.create({
+ data: {
+ name: name,
+ email: email,
+ id: id,
+ },
+ });
+
+ return {
+ message: `New user added successfully: ${user.id}`,
+ };
+ },
+});
+```
+
+
+
+
+Next, configure the Prisma [build extension](https://trigger.dev/docs/config/extensions/overview) in the `trigger.config.js` file to include the Prisma client in the build.
+
+This will ensure that the Prisma client is available when the task runs.
+
+For a full list of options available in the Prisma build extension, see the [Prisma build extension documentation](https://trigger.dev/docs/config/config-file#prisma).
+
+```js /trigger.config.js
+export default defineConfig({
+ project: "", // Your project reference
+ // Your other config settings...
+ build: {
+ extensions: [
+ prismaExtension({
+ version: "5.20.0", // optional, we'll automatically detect the version if not provided
+ // update this to the path of your Prisma schema file
+ schema: "prisma/schema.prisma",
+ }),
+ ],
+ },
+});
+```
+
+
+ [Build extensions](/config/config-file#extensions) allow you to hook into the build system and
+ customize the build process or the resulting bundle and container image (in the case of
+ deploying). You can use pre-built extensions or create your own.
+
+
+
+
+With the build extension and task configured, you can now deploy your task using the Trigger.dev CLI.
+
+
+
+ ```bash npm
+ npx trigger.dev@latest deploy
+ ```
+
+ ```bash pnpm
+ pnpm dlx trigger.dev@latest deploy
+ ```
+
+ ```bash yarn
+ yarn dlx trigger.dev@latest deploy
+ ```
+
+
+
+
+
+
+
+ Add your `DATABASE_URL` environment variable to Trigger.dev by following these steps:
+
+In the sidebar select the "Environment Variables" page, then press the "New environment variable"
+button. 
+
+You can add values for your local dev environment, staging and prod. in this case we will add the `DATABASE_URL` for the production environment.
+
+
+
+
+
+
+
+ To test this task, go to the 'test' page in the Trigger.dev dashboard and run the task with the following payload:
+
+```json
+{
+ "name": "John Doe",
+ "email": "john@doe.test",
+ "id": 12345
+}
+```
+
+Congratulations! You should now see a new completed run, and a new user with the credentials you provided should be added to your database.
+
+
+
+
+
+
diff --git a/docs/mint.json b/docs/mint.json
index ef634c043d..2da3baa93d 100644
--- a/docs/mint.json
+++ b/docs/mint.json
@@ -1,10 +1,7 @@
{
"$schema": "https://mintlify.com/schema.json",
"name": "Trigger.dev",
- "openapi": [
- "/openapi.yml",
- "/v3-openapi.yaml"
- ],
+ "openapi": ["/openapi.yml", "/v3-openapi.yaml"],
"api": {
"playground": {
"mode": "simple"
@@ -106,41 +103,26 @@
"navigation": [
{
"group": "Getting Started",
- "pages": [
- "introduction",
- "quick-start",
- "how-it-works",
- "upgrading-beta",
- "limits"
- ]
+ "pages": ["introduction", "quick-start", "how-it-works", "upgrading-beta", "limits"]
},
{
"group": "Fundamentals",
"pages": [
{
"group": "Tasks",
- "pages": [
- "tasks/overview",
- "tasks/scheduled"
- ]
+ "pages": ["tasks/overview", "tasks/scheduled"]
},
"triggering",
"apikeys",
{
"group": "Configuration",
- "pages": [
- "config/config-file",
- "config/extensions/overview"
- ]
+ "pages": ["config/config-file", "config/extensions/overview"]
}
]
},
{
"group": "Development",
- "pages": [
- "cli-dev",
- "run-tests"
- ]
+ "pages": ["cli-dev", "run-tests"]
},
{
"group": "Deployment",
@@ -150,9 +132,7 @@
"github-actions",
{
"group": "Deployment integrations",
- "pages": [
- "vercel-integration"
- ]
+ "pages": ["vercel-integration"]
}
]
},
@@ -164,13 +144,7 @@
"errors-retrying",
{
"group": "Wait",
- "pages": [
- "wait",
- "wait-for",
- "wait-until",
- "wait-for-event",
- "wait-for-request"
- ]
+ "pages": ["wait", "wait-for", "wait-until", "wait-for-event", "wait-for-request"]
},
"queue-concurrency",
"versioning",
@@ -189,10 +163,7 @@
"management/overview",
{
"group": "Tasks API",
- "pages": [
- "management/tasks/trigger",
- "management/tasks/batch-trigger"
- ]
+ "pages": ["management/tasks/trigger", "management/tasks/batch-trigger"]
},
{
"group": "Runs API",
@@ -231,9 +202,7 @@
},
{
"group": "Projects API",
- "pages": [
- "management/projects/runs"
- ]
+ "pages": ["management/projects/runs"]
}
]
},
@@ -279,11 +248,7 @@
},
{
"group": "Help",
- "pages": [
- "community",
- "help-slack",
- "help-email"
- ]
+ "pages": ["community", "help-slack", "help-email"]
},
{
"group": "Frameworks",
@@ -292,6 +257,7 @@
"guides/frameworks/bun",
"guides/frameworks/nextjs",
"guides/frameworks/nodejs",
+ "guides/frameworks/prisma",
"guides/frameworks/remix",
{
"group": "Supabase",
@@ -325,15 +291,11 @@
},
{
"group": "Dashboard",
- "pages": [
- "guides/dashboard/creating-a-project"
- ]
+ "pages": ["guides/dashboard/creating-a-project"]
},
{
"group": "Migrations",
- "pages": [
- "guides/use-cases/upgrading-from-v2"
- ]
+ "pages": ["guides/use-cases/upgrading-from-v2"]
}
],
"footerSocials": {
@@ -341,4 +303,4 @@
"github": "https://github.com/triggerdotdev",
"linkedin": "https://www.linkedin.com/company/triggerdotdev"
}
-}
\ No newline at end of file
+}
From 6a4ed3577ae72d9848081363bce11f7a94530932 Mon Sep 17 00:00:00 2001
From: D-K-P <8297864+D-K-P@users.noreply.github.com>
Date: Fri, 27 Sep 2024 11:28:19 +0100
Subject: [PATCH 3/5] Copy updates
---
docs/guides/frameworks/prisma.mdx | 29 +++++++++++++++++++++++++----
1 file changed, 25 insertions(+), 4 deletions(-)
diff --git a/docs/guides/frameworks/prisma.mdx b/docs/guides/frameworks/prisma.mdx
index bd0630fbef..515a5006e7 100644
--- a/docs/guides/frameworks/prisma.mdx
+++ b/docs/guides/frameworks/prisma.mdx
@@ -33,7 +33,7 @@ This guide will show you how to set up Prisma with Trigger.dev, test and view an
-## Creating a task using Prisma and deploying it to production using Trigger.dev
+## Creating a task using Prisma and deploying it to production
@@ -106,6 +106,27 @@ export default defineConfig({
deploying). You can use pre-built extensions or create your own.
+
+
+
+
+We use OpenTelemetry to [instrument](https://trigger.dev/docs/config/config-file#instrumentations) our tasks and collect telemetry data.
+
+If you want to automatically log all Prisma queries and mutations, you can use the Prisma instrumentation extension.
+
+```js /trigger.config.js
+import { defineConfig } from "@trigger.dev/sdk/v3";
+import { PrismaInstrumentation } from "@prisma/instrumentation";
+import { OpenAIInstrumentation } from "@traceloop/instrumentation-openai";
+
+export default defineConfig({
+ //..other stuff
+ instrumentations: [new PrismaInstrumentation(), new OpenAIInstrumentation()],
+});
+```
+
+This provides much more detailed information about your tasks with minimal effort.
+
With the build extension and task configured, you can now deploy your task using the Trigger.dev CLI.
@@ -128,9 +149,7 @@ With the build extension and task configured, you can now deploy your task using
-
-
- Add your `DATABASE_URL` environment variable to Trigger.dev by following these steps:
+
In the sidebar select the "Environment Variables" page, then press the "New environment variable"
button. 
@@ -160,4 +179,6 @@ Congratulations! You should now see a new completed run, and a new user with the
+## Troubleshooting
+
From 30e21424fc68c9977415348df690cb207c89ef73 Mon Sep 17 00:00:00 2001
From: D-K-P <8297864+D-K-P@users.noreply.github.com>
Date: Fri, 27 Sep 2024 14:19:14 +0100
Subject: [PATCH 4/5] Formatting
---
docs/guides/examples/ffmpeg-video-processing.mdx | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/docs/guides/examples/ffmpeg-video-processing.mdx b/docs/guides/examples/ffmpeg-video-processing.mdx
index 2aa4de4c17..39687e3ab5 100644
--- a/docs/guides/examples/ffmpeg-video-processing.mdx
+++ b/docs/guides/examples/ffmpeg-video-processing.mdx
@@ -132,7 +132,7 @@ export const ffmpegCompressVideo = task({
});
```
-### Testing
+### Testing your task
To test this task, use this payload structure:
@@ -241,7 +241,7 @@ export const ffmpegExtractAudio = task({
});
```
-### Testing
+### Testing your task
To test this task, use this payload structure:
@@ -351,7 +351,7 @@ export const ffmpegGenerateThumbnail = task({
});
```
-## Testing your task
+### Testing your task
To test this task in the dashboard, you can use the following payload:
@@ -361,4 +361,4 @@ To test this task in the dashboard, you can use the following payload:
}
```
-
\ No newline at end of file
+
From 3fa88022b0329ca6c6715a86dbd7ed6c1596b335 Mon Sep 17 00:00:00 2001
From: D-K-P <8297864+D-K-P@users.noreply.github.com>
Date: Fri, 27 Sep 2024 14:47:33 +0100
Subject: [PATCH 5/5] Typo
---
docs/guides/frameworks/prisma.mdx | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/docs/guides/frameworks/prisma.mdx b/docs/guides/frameworks/prisma.mdx
index 515a5006e7..fbe495b3d5 100644
--- a/docs/guides/frameworks/prisma.mdx
+++ b/docs/guides/frameworks/prisma.mdx
@@ -20,7 +20,7 @@ This guide will show you how to set up Prisma with Trigger.dev, test and view an
- An existing Node.js project with a `package.json` file
- Ensure TypeScript is installed
-- a [PostgreSQL](https://www.postgresql.org/) database server running locally, or accessible via a connection string
+- A [PostgreSQL](https://www.postgresql.org/) database server running locally, or accessible via a connection string
- Prisma ORM [installed and initialized](https://www.prisma.io/docs/getting-started/quickstart) in your project
- A `DATABASE_URL` environment variable set in your `.env` file, pointing to your PostgreSQL database (e.g. `postgresql://user:password@localhost:5432/dbname`)
@@ -179,6 +179,4 @@ Congratulations! You should now see a new completed run, and a new user with the
-## Troubleshooting
-