Add CI jobs for end-to-end testing
Would be nice to have CI pipeline for end-to-end remote execution testing, ideally one per element in the remote-execution chain:
-
builstream(client): test a specific BuildStream version against BuildGrid:- Build a Docker image of BuildStream at a given sha.
- Spin-up a BuildGrid Compose grid with a
buildboxbot from nightly builds (not stable yet...). - Run a build of
BuildStream itself, using thethe example autotools project, using the image build at 1.buildstream-integrationproject
-
recc(client): test a specific RECC version against BuildGrid + buildbox:- Build a Docker image of RECC at a given sha.
- Spin-up a BuildGrid Compose grid with a
buildbox-worker+buildbox-run-hosttoolsbot from nightly builds (not stable yet...). - Run a build of
RECC itself (CMake)the example amhello project, using the image build at 1.
-
buildbox(bot): test a specific buildbox version against BuildGrid with RECC (and later BuildStream? needsbuildbox-run-bubblewrap):- Build a Docker image of buildbox (
buildbox-workerandbuildbox-run-hosttoolsfor now) at a given sha. - Spin-up a BuildGrid Compose grid from nightly builds and the image build at 1.
- Run a build of RECC itself using RECC image: which one?
- Run a build of BuildStream itself, using the
buildstream-integrationproject.
- Build a Docker image of buildbox (
-
buildgrid(controller): test a specific BuildGrid version with BuildStream and RECC:- Build a Docker image of BuildGrid at a given sha.
- Spin-up a BuildGrid Compose grid with a
buildboxbot and ahost-toolsbot using the image build at 1. - Run a build of RECC itself using RECC image: which one?
- Run a build of BuildStream itself, using the
buildstream-integrationproject, using BuildStream stable image: which one?
Pipelines could be manually triggered, at least in the initial version.
Edited by Martin Blanchard