From d30cd89d757f197e0a52c0e541f6704b2ae432f2 Mon Sep 17 00:00:00 2001
From: ddavison <ddavison@gitlab.com>
Date: Tue, 22 Mar 2022 15:40:33 -0400
Subject: [PATCH] Add rule for quarantining nightly e2e tests

Rename scheduled jobs for master and nightly
---
 .gitlab/ci/qa.gitlab-ci.yml | 14 ++++++++++++--
 qa/.confiner/nightly.yml    | 19 +++++++++++++++++++
 2 files changed, 31 insertions(+), 2 deletions(-)
 create mode 100644 qa/.confiner/nightly.yml

diff --git a/.gitlab/ci/qa.gitlab-ci.yml b/.gitlab/ci/qa.gitlab-ci.yml
index 77d12a3e848ed..a946e34ff4211 100644
--- a/.gitlab/ci/qa.gitlab-ci.yml
+++ b/.gitlab/ci/qa.gitlab-ci.yml
@@ -33,15 +33,25 @@ qa:selectors:
   script:
     - bundle exec bin/qa Test::Sanity::Selectors
 
-qa:auto_quarantine:
+qa:master-auto-quarantine-dequarantine:
   extends:
     - .qa-job-base
   rules:
     - if: '$QA_TRIGGER_AUTO_QUARANTINE =~ /true|yes|1/i'
   script:
-    - bundle exec confiner -r .confiner/quarantine.yml
+    - bundle exec confiner -r .confiner/master.yml
   allow_failure: true
 
+qa:nightly-auto-quarantine-dequarantine:
+  extends:
+    - .qa-job-base
+  rules:
+    - if: '$QA_TRIGGER_AUTO_QUARANTINE =~ /true|yes|1/i'
+  script:
+    - bundle exec confiner -r .confiner/nightly.yml
+  allow_failure: true
+
+
 qa:selectors-as-if-foss:
   extends:
     - qa:selectors
diff --git a/qa/.confiner/nightly.yml b/qa/.confiner/nightly.yml
new file mode 100644
index 0000000000000..78089525b0e76
--- /dev/null
+++ b/qa/.confiner/nightly.yml
@@ -0,0 +1,19 @@
+- name: Quarantine E2E tests in Nightly that fail consistently
+  plugin:
+    name: gitlab
+    args:
+      threshold: 3
+      private_token: $QA_GITLAB_CI_TOKEN
+      project_id: gitlab-org/quality/nightly # https://gitlab.com/gitlab-org/quality/nightly/
+      target_project: gitlab-org/gitlab
+      failure_issue_labels: QA,Quality,found:nightly
+      failure_issue_prefix: "Failure in "
+      pwd: qa
+      timeout: 30
+      ref: master
+      environment:
+        name: nightly
+        pattern: 'pipeline: :nightly'
+      job_pattern: '^((?!quarantine).)*$'
+  actions:
+    - quarantine
-- 
GitLab