cake-build / cake-action

:cake::octocat: Run Cake (C# Make) scripts in your GitHub Actions workflows.
https://cakebuild.net
MIT License
45 stars 13 forks source link

Cake Action doesn't finish even though cake reports the tasks to be completed and the task time table is printed #51

Closed codewing closed 10 months ago

codewing commented 10 months ago

We're currently having issues with this action w.r.t. termination after executing a task. The logs suggest that cake finished execution (see log below) but the step only terminates after seemingly idling for a long time (last run was 45 minutes between the cake log that it finished and the termination of the action)

[execution log omitted]

Finished executing task: Run Unity Integration Tests
Completed in 00:05:15.8458010
Task                                      Duration            
--------------------------------------------------------------
Uninstall Previous Service and Testrunner   00:00:06.2233645    
Build and Install Current Service                  00:02:36.4687967    
Run Unity Integration Tests                          00:05:15.8458115    
--------------------------------------------------------------
Total:                                                             00:07:58.5379727    

We've also had a look at the process monitor to see if there are child-processes that the action might be waiting for but couldn't see any other than the process that is running this action.

z-browser-985362824834-6439944148064-3bbc7039013cd6053a215998e0dc2abf76a31dc2643d5637ef4b19abe3a30d32

This screenshot was taken between the cake task writing the log above and it finishing the execution of the step.


We also tried to run it manually on the build server via the cake command line tool and there it also works flawlessly so we assume it has something to do with this plugin / node...

If you have any more pointers to what we can try please let me know. We also couldn't reproduce the delay locally on two different machines.

codewing commented 10 months ago

We've found the issue: Our tests start an adb server to run the tests. This is not listed as a child process but somehow linked to the execution. Killing this process immediately finishes the execution of the step.