CI: reduce pipeline time by caching / using QA docker image
Summary
Currently, every .qa
based CI Job performs gem install gitlab-qa
, which results in installing and building all gems. We should examine the ability to make use of a cache for this, or a pre-existing container that is in alignment with the version of gitlab-qa
gem that is needed for each branch to function (looking at you, x-y-stable
).
Steps to reproduce
Run a pipeline
Current behavior
Every QA job has:
$ gem install gitlab-qa
...
Building native extensions. This could take a while...
...
Expected behavior
Cached / pre-installed gitlab-qa
reduces run-time.
Acceptance criteria
One of two:
-
cached install of gitlab-qa
-
use container (preferably pre-existing) that has gitlab-qa
pre-installed as appropriate for branches (including stable)