@@ -253,18 +253,23 @@ export class CSIController extends TypedEmitter<Events> {
253253 try {
254254 const stopResult = await this . instanceStopped ( ) ;
255255
256+ this . logger . debug ( "Stop result" , stopResult ) ;
257+
256258 if ( stopResult ) {
257- code = stopResult . exitcode ;
259+ code = stopResult . exitcode || code ;
258260 this . logger . trace ( "Instance ended with code" , code ) ;
259261 this . status = stopResult . status ;
260262 this . setExitInfo ( code , stopResult . message ) ;
263+
264+ this . logger . debug ( "Exit info" , this . terminated ) ;
261265 }
262266 } catch ( e : any ) {
263267 code = e . exitcode ;
268+
264269 this . status = e . status || InstanceStatus . ERRORED ;
265270 this . setExitInfo ( code , e . reason ) ;
266271
267- this . logger . error ( "Instance caused error" , e . message , code ) ;
272+ this . logger . error ( "Instance caused error" , e ) ;
268273 } finally {
269274 clearInterval ( interval ) ;
270275 }
@@ -274,7 +279,7 @@ export class CSIController extends TypedEmitter<Events> {
274279
275280 this . emit ( "terminated" , code ) ;
276281
277- this . logger . trace ( "Finalizing..." ) ;
282+ this . logger . trace ( "Finalizing..." , code ) ;
278283
279284 await this . finalize ( ) ;
280285
@@ -299,7 +304,7 @@ export class CSIController extends TypedEmitter<Events> {
299304
300305 const exitcode = await this . endOfSequence ;
301306
302- this . logger . trace ( "End of sequence" ) ;
307+ this . logger . trace ( "End of sequence" , exitcode ) ;
303308
304309 if ( exitcode > 0 ) {
305310 this . status = InstanceStatus . ERRORED ;
@@ -320,7 +325,10 @@ export class CSIController extends TypedEmitter<Events> {
320325 } ;
321326
322327 this . instancePromise = instanceMain ( )
323- . then ( ( exitcode ) => mapRunnerExitCode ( exitcode , this . sequence ) )
328+ . then ( ( exitcode ) => {
329+ this . logger . debug ( "instanceMain ExitCode" , exitcode ) ;
330+ return mapRunnerExitCode ( exitcode , this . sequence ) ;
331+ } )
324332 . catch ( ( error ) => {
325333 this . logger . error ( "Instance promise rejected" , error ) ;
326334 this . initResolver ?. rej ( error ) ;
@@ -373,6 +381,8 @@ export class CSIController extends TypedEmitter<Events> {
373381 }
374382
375383 instanceStopped ( ) : CSIController [ "instancePromise" ] {
384+ this . logger . debug ( "function InstanceStopped called" ) ;
385+
376386 if ( ! this . instancePromise ) {
377387 throw new CSIControllerError ( "UNATTACHED_STREAMS" ) ;
378388 }
@@ -766,6 +776,8 @@ export class CSIController extends TypedEmitter<Events> {
766776 async kill ( opts = { removeImmediately : false } ) {
767777 if ( this . status === InstanceStatus . KILLING ) {
768778 await this . instanceAdapter . remove ( ) ;
779+
780+ return ;
769781 }
770782
771783 this . status = InstanceStatus . KILLING ;
0 commit comments