@@ -2,7 +2,12 @@ import { type AuthenticatedEnvironment } from "~/services/apiAuth.server";
22import { BaseService } from "./baseService.server" ;
33import { errAsync , fromPromise , okAsync , type ResultAsync } from "neverthrow" ;
44import { type WorkerDeployment , type Project } from "@trigger.dev/database" ;
5- import { BuildServerMetadata , logger , type GitMeta , type DeploymentEvent } from "@trigger.dev/core/v3" ;
5+ import {
6+ BuildServerMetadata ,
7+ logger ,
8+ type GitMeta ,
9+ type DeploymentEvent ,
10+ } from "@trigger.dev/core/v3" ;
611import { TimeoutDeploymentService } from "./timeoutDeployment.server" ;
712import { env } from "~/env.server" ;
813import { createRemoteImageBuild } from "../remoteImageBuilder.server" ;
@@ -40,7 +45,11 @@ export class DeploymentService extends BaseService {
4045 friendlyId : string ,
4146 updates : Partial < Pick < WorkerDeployment , "contentHash" | "runtime" > & { git : GitMeta } >
4247 ) {
43- const validateDeployment = ( deployment : Pick < WorkerDeployment , "id" | "status" > & { buildServerMetadata ?: BuildServerMetadata } ) => {
48+ const validateDeployment = (
49+ deployment : Pick < WorkerDeployment , "id" | "status" > & {
50+ buildServerMetadata ?: BuildServerMetadata ;
51+ }
52+ ) => {
4453 if ( deployment . status !== "PENDING" && deployment . status !== "INSTALLING" ) {
4554 logger . warn (
4655 "Attempted progressing deployment that is not in PENDING or INSTALLING status" ,
@@ -81,9 +90,9 @@ export class DeploymentService extends BaseService {
8190 const createRemoteBuildIfNeeded = deployment . buildServerMetadata ?. isNativeBuild
8291 ? okAsync ( undefined )
8392 : fromPromise ( createRemoteImageBuild ( authenticatedEnv . project ) , ( error ) => ( {
84- type : "failed_to_create_remote_build" as const ,
85- cause : error ,
86- } ) ) ;
93+ type : "failed_to_create_remote_build" as const ,
94+ cause : error ,
95+ } ) ) ;
8796
8897 return createRemoteBuildIfNeeded
8998 . andThen ( ( externalBuildData ) =>
@@ -92,7 +101,7 @@ export class DeploymentService extends BaseService {
92101 where : { id : deployment . id , status : "INSTALLING" } , // status could've changed in the meantime, we're not locking the row
93102 data : {
94103 ...updates ,
95- externalBuildData,
104+ ... ( externalBuildData ? { externalBuildData } : { } ) ,
96105 status : "BUILDING" ,
97106 installedAt : new Date ( ) ,
98107 } ,
@@ -454,14 +463,16 @@ export class DeploymentService extends BaseService {
454463 type : "other" as const ,
455464 cause : error ,
456465 } )
457- ) . andThen ( ( deployment ) => {
458- if ( ! deployment ) {
459- return errAsync ( { type : "deployment_not_found" as const } ) ;
460- }
461- return okAsync ( deployment ) ;
462- } ) . map ( ( deployment ) => ( {
463- ...deployment ,
464- buildServerMetadata : BuildServerMetadata . safeParse ( deployment . buildServerMetadata ) . data ,
465- } ) ) ;
466+ )
467+ . andThen ( ( deployment ) => {
468+ if ( ! deployment ) {
469+ return errAsync ( { type : "deployment_not_found" as const } ) ;
470+ }
471+ return okAsync ( deployment ) ;
472+ } )
473+ . map ( ( deployment ) => ( {
474+ ...deployment ,
475+ buildServerMetadata : BuildServerMetadata . safeParse ( deployment . buildServerMetadata ) . data ,
476+ } ) ) ;
466477 }
467478}
0 commit comments