Draft: Create a JobLog type separate from the main Run
Add a bunch of tests to lava-gitlab-runner, using the gitlab-runner-mock
crate and the lava-api-mock
crate. The runner is essentially a vehicle for allowing these two systems to communicate, so spinning up instances pointed at a pair of mocks is a reasonable way to test. Note that the runner has virtually no functional API that can be unit tested, so we instead rely on perturbing the lava-api-mock
and observing the results in the gitlab-runner-mock
. This is somewhat slow.
This MR relies on gitlab-runner-rs!14 and this lava-api MR (which needs to be retargeted at upstream, when upstream has been rebased).