Investigation on ephemeral CNG deployment on job local k8s cluster
Context
See if it is possible to have a deployment on a job local k8s cluster for isolated test run similar to package-and-test with omnibus environment.
Investigation
gitlab-org/gitlab!143292 (merged)
Outcomes
-
First iteration PoC shows it's a viable setup to use. Environment deployment and boot times are even faster than
omnibussetup performed bygitlab-qaorchestrator gem. -
Smoke test suite run takes around 10 minutes, which is faster than
gdk. This indicates that base installation on a local cluster is very fast (note: id doesn't mean that overall feedback time will be faster thangdkbecauseCNGrequires compiling assets and running throughCNGbuild pipeline).
Note: Test framework itself has a few limitation that require environment to have pre-populated users in order for tests to work. This adds a bit of additional overhead and complexity in environment creation setup, especially if environment deployment process resembles a production like deployment that doesn't support user and other data pre-creation out of the box.