1
- import { PrismaClient , prisma } from "~/db.server" ;
1
+ import { TaskTriggerSource } from "@trigger.dev/database" ;
2
+ import { sqlDatabaseSchema , PrismaClient , prisma } from "~/db.server" ;
2
3
import { TestSearchParams } from "~/routes/_app.orgs.$organizationSlug.projects.v3.$projectParam.test/route" ;
3
4
import { sortEnvironments } from "~/utils/environmentSort" ;
4
5
import { createSearchParams } from "~/utils/searchParams" ;
@@ -84,9 +85,8 @@ export class TestPresenter {
84
85
} ;
85
86
}
86
87
87
- const currentDeployment = await findCurrentWorkerDeployment ( matchingEnvironment . id ) ;
88
-
89
- const tasks = currentDeployment ?. worker ?. tasks ?? [ ] ;
88
+ const isDev = matchingEnvironment . type === "DEVELOPMENT" ;
89
+ const tasks = await this . #getTasks( matchingEnvironment . id , isDev ) ;
90
90
91
91
return {
92
92
hasSelectedEnvironment : true as const ,
@@ -104,4 +104,35 @@ export class TestPresenter {
104
104
} ) ,
105
105
} ;
106
106
}
107
+
108
+ async #getTasks( envId : string , isDev : boolean ) {
109
+ if ( isDev ) {
110
+ return await this . #prismaClient. $queryRaw <
111
+ {
112
+ id : string ;
113
+ version : string ;
114
+ slug : string ;
115
+ filePath : string ;
116
+ exportName : string ;
117
+ friendlyId : string ;
118
+ triggerSource : TaskTriggerSource ;
119
+ } [ ]
120
+ > `WITH workers AS (
121
+ SELECT
122
+ bw.*,
123
+ ROW_NUMBER() OVER(ORDER BY string_to_array(bw.version, '.')::int[] DESC) AS rn
124
+ FROM
125
+ ${ sqlDatabaseSchema } ."BackgroundWorker" bw
126
+ WHERE "runtimeEnvironmentId" = ${ envId }
127
+ ),
128
+ latest_workers AS (SELECT * FROM workers WHERE rn = 1)
129
+ SELECT bwt.id, version, slug, "filePath", "exportName", bwt."friendlyId", bwt."triggerSource"
130
+ FROM latest_workers
131
+ JOIN ${ sqlDatabaseSchema } ."BackgroundWorkerTask" bwt ON bwt."workerId" = latest_workers.id
132
+ ORDER BY bwt."exportName" ASC;` ;
133
+ } else {
134
+ const currentDeployment = await findCurrentWorkerDeployment ( envId ) ;
135
+ return currentDeployment ?. worker ?. tasks ?? [ ] ;
136
+ }
137
+ }
107
138
}
0 commit comments