@@ -71,6 +71,25 @@ export class Registry<A extends RegistryActors> {
7171 // Promise for any async operations we need to wait to complete
7272 const readyPromises = [ ] ;
7373
74+ // Disable health check if using serverless
75+ //
76+ // This is because the endpoint will not be configured until we receive
77+ // a serverless runner request, so we do not know what to health check
78+ if ( config . runnerKind === "serverless" ) {
79+ logger ( ) . debug ( "disabling health check since using serverless" ) ;
80+ config . disableHealthCheck = true ;
81+ }
82+
83+ // Auto-configure serverless runner if not in prod
84+ if (
85+ process . env . NODE_ENV !== "production" &&
86+ config . runnerKind === "serverless"
87+ ) {
88+ if ( inputConfig ?. runEngine === undefined ) config . runEngine = true ;
89+ if ( inputConfig ?. autoConfigureServerless === undefined )
90+ config . autoConfigureServerless = true ;
91+ }
92+
7493 // Start engine
7594 if ( config . runEngine ) {
7695 logger ( ) . debug ( {
@@ -185,6 +204,7 @@ export class Registry<A extends RegistryActors> {
185204 // Even though we do not use the returned ActorDriver, this is required to start the code that will handle incoming actors
186205 if ( ! config . disableActorDriver ) {
187206 Promise . all ( readyPromises ) . then ( async ( ) => {
207+ logger ( ) . debug ( "starting actor driver" ) ;
188208 driver . actor ( this . #config, config , managerDriver , client ) ;
189209 } ) ;
190210 }
@@ -220,6 +240,8 @@ export class Registry<A extends RegistryActors> {
220240}
221241
222242async function configureServerlessRunner ( config : RunnerConfig ) : Promise < void > {
243+ logger ( ) . debug ( "configuring serverless runner" ) ;
244+
223245 try {
224246 // Ensure we have required config values
225247 if ( ! config . runnerName ) {
@@ -290,10 +312,11 @@ async function configureServerlessRunner(config: RunnerConfig): Promise<void> {
290312 } ) ;
291313 } catch ( error ) {
292314 logger ( ) . error ( {
293- msg : "failed to configure serverless runner" ,
315+ msg : "failed to configure serverless runner, validate endpoint is configured correctly then restart this process " ,
294316 error,
295317 } ) ;
296- throw error ;
318+
319+ // Don't throw, allow the runner to continue
297320 }
298321}
299322
0 commit comments