Closed KrauseFx closed 6 years ago
Yep, I'm totally with you on this. A single RunnerService
must live throughout the application, which holds references to each Runner
that might be running at a given moment. One service, many runners.
@KrauseFx what are the responsibilities that the new refactored TestRunneService
will have?
@taquitos
So I was thinking of doing the following
Responsible for
TestRunner
objects that are active (either in queue or actually running)TestRunner
's executionBuild
information in version control and triggers the report of the build status on GitHub(e.g. FastlaneTestRunner
) Responsible for
TestRunnerService
TestRunnerService
Thoughts?
I love it. One question, and it's a minor one, should we rename them to BuildRunnerService
and BuildRunner
?
I don't feel strongly about the name BuildRunnerService
, so that works. Any specific reason why it's not a service? I thought it behaves similarly to the other fastlane.ci
services we already have, as in it stays alive and manages things (state :trollface:)
I was just saying TestRunnerService
-> BuildRunnerService
and also TestRunner
-> BuildRunner
to align us around the build
terminology instead of test
and job
.
Ah right, sorry misunderstood your message, yeah that works 👍
Will work on that refactor today
As seen in https://github.com/fastlane/ci/pull/200/files#diff-62e64a60028b7cd0fdf6248bbc3f9bfcR13, we currently have to store references to all active
test_runner_services
to keep them alive, and to be able to access them when the user wants to see their progress. I added a comment with a proposal on how we can properly architect itWe probably want a single instance of
TestRunnerService
(like we do for other services), that holds references to all the activeTestRunners