Skip to content

E2E tests on GDK improvements

Mark Lapierre requested to merge ml-andrey-gdk-improvements into master

What does this MR do and why?

This reduces the size of the GDK docker image used for running E2E tests, and speeds up the test job time (and overall time to complete E2E tests in MRs when run against GDK).

Almost all of this MR is selected from @acunskis' work in !112417 (closed). Specifically:

  • add gdk base image and rebuild it on component or dependency changes
  • final image is executable artifact tagged with a particular commit sha
  • reduced image size:
registry.gitlab.com/gitlab-org/gitlab/gitlab-qa-gdk:ml-andrey-gdk-improvements 9.29GB
registry.gitlab.com/gitlab-org/gitlab/gitlab-qa-gdk:master                     17.7GB

Part of gitlab-org/quality/quality-engineering&4 (closed).
Closes #390758 (closed) and #388532 (closed).

Notes on pipeline changes

Most of the changes are only relevant to the test-on-gdk pipeline. The remaining changes just add $DEBIAN_VERSION to the job image.

Caveats

Tests that use runners won't work because they can't connect to GDK when it's connected to the host network and the runner containers connect to the default bridge network. This isn't an immediate concern because no smoke tests use runners. Issue to resolve: #410246 (closed)

Results

Smoke job in this MR:

More tests for reliability in !120042 (closed) and !120179 (closed)

Example build job:

The focus of this MR was to get some improvements in size and speed compared with the initial implementation, so the build times still have a lot of room for improvement. For example, more caching.

Related MRs

gitlab-build-images!645 (merged): builds the base image used in the Dockerfile in this MR.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Mark Lapierre

Merge request reports