Remote Runner: Using a custom runnner

There are a number of scenarios where it may be desirable to start a runner, perform some tasks and stop the runner, e.g. running a large test suite and allowing changes to the main image while the tests are running.

A custom runner may be started with:

workerRunner := GtRemoteRunner new.
workerRunner
	managerStartupAndShutdown: GtRrLocalManagerStartupAndShutdown new;
	startLogging.
workerRunner
	start.
  

Setting the custom manager (GtRrLocalManagerStartupAndShutdown GtRrManagerStartupAndShutdown << #GtRrLocalManagerStartupAndShutdown slots: { #inMemoryLog . #workerIndex . #autoRestart . #watchDog . #watchdogSemaphore . #processes . #workerCountCalculator . #connectionStrategyId . #changesSync . #workerManager }; tag: 'Runner'; package: 'RemoteRunner' ) means that code changes are not propagated to the workers while the tests are being run.

To stop the runner:

workerRunner stop.