Improve execution time for debug-on-exit

What does this MR do and why?

Attempt to reduce execution time for debug-on-exit.sh, as in a classic CI deployment we run it 4 times reducing how many time it takes save a lot of time.

this MR parallelize some tasks, like crust gather that take ~1/2min, the different dump and also the remote command which is particularly important as we have a sleep 10 per nodes (leading to at least 1min to execute all of them). With this change it reduce it to some second

before this MR

Job Dump duration
Deploy management 5min
Deploy workload 8min
Update management 8min
Update workload 8min

after this MR

Job Dump duration
Deploy management 2min30
Deploy workload 3min20
Update management 3min20
Update workload 3min20

29min vs 12min30

We could probably speed up things a bit more but it will require more refactoring

Related reference(s)

#1891 (closed)

Test coverage

CI configuration

CI pipelines perform an update for both management and workload clusters, this update will NOT perform a ClusterAPI rolling update (deletion and creation of new K8s nodes) by default.

For some cases, it may be relevant to perform more complex tests.

Theses features can be activated in an MR by adding one of these labels to the MR and will apply to the next pipelines.

  • adding the label ci-featuretest-rolling-update pipelines will perform a node rolling update in the -update jobs (without version upgrades)
  • adding the label ci-featuretest-upgrade-from-1.2.1 pipelines will perform an upgrade from Sylva 1.2.1 to your dev branch (including a k8s version upgrade resulting in a node rolling update)
Edited by Loic Nicolle

Merge request reports

Loading