Skip to content

Create quarantine MR on a schedule

Rémy Coutable requested to merge automatic-quarantine-mr into main

What does this MR do and why?

This creates a new automatic-quarantine-mrs-creation job to create quarantine MRs on a schedule automatically.

I also moved the keeps/quarantine_flaky_tests.rb file to this project.

How it works?

  • The automatic-quarantine-mrs-creation job mostly runs scripts/automatic-quarantine-mrs-creation.sh.
  • scripts/automatic-quarantine-mrs-creation.sh clones the gitlab-org/gitlab with --filter=tree:0.
  • Gems are installed under gitlab/vendor/ruby.
  • It runs the Keeps::QuarantineFlakyTests keep. You can pass the following variables:
    • MAX_MRS: Maximum number of quarantining MR to create.
    • EXTRA_FLAGS: Extra flags, you can set it to -d to perform a dry-run.
  • The automatic-quarantine-mrs-creation job caches gitlab/vendor/ruby.
  • It depends on gitlab-org/gitlab!149747 (merged) (but the code will work with master once the branch will be gone) so that gitlab-http can be run outside of the monolith's context.

TODO:

  • Once gitlab-org/gitlab!149850 (merged) is merged, delete the HOUSEKEEPER_GITLAB_API_TOKEN (my personal access token) and rename TEMP_DISABLED__HOUSEKEEPER_GITLAB_API_TOKEN (project access token) to HOUSEKEEPER_GITLAB_API_TOKEN.
Edited by Rémy Coutable

Merge request reports