summaryrefslogtreecommitdiff
path: root/tooling/bin/qa/package_and_qa_check
diff options
context:
space:
mode:
Diffstat (limited to 'tooling/bin/qa/package_and_qa_check')
-rwxr-xr-xtooling/bin/qa/package_and_qa_check45
1 files changed, 0 insertions, 45 deletions
diff --git a/tooling/bin/qa/package_and_qa_check b/tooling/bin/qa/package_and_qa_check
deleted file mode 100755
index 21deb0fcd2d..00000000000
--- a/tooling/bin/qa/package_and_qa_check
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/usr/bin/env ruby
-# frozen_string_literal: true
-
-require 'pathname'
-
-# This script checks if the package-and-qa job should trigger downstream pipelines to run the QA suite.
-#
-# It assumes the first argument is a directory of files containing diffs of changes from an MR
-# (e.g., created by tooling/bin/find_change_diffs). It exits with a success code if there are no diffs, or if the diffs
-# are suitable to run QA tests.
-#
-# The script will abort (exit code 1) if the argument is missing.
-#
-# The following condition will result in a failure code (2), indicating that package-and-qa should not run:
-#
-# - If the changes only include tests being put in quarantine
-
-abort("ERROR: Please specify the directory containing MR diffs.") if ARGV.empty?
-diffs_dir = Pathname.new(ARGV.shift).expand_path
-
-# Run package-and-qa if there are no diffs. E.g., in scheduled pipelines
-exit 0 if diffs_dir.glob('**/*').empty?
-
-files_count = 0
-specs_count = 0
-quarantine_specs_count = 0
-
-diffs_dir.glob('**/*').each do |path|
- next if path.directory?
-
- files_count += 1
- next unless path.to_s.end_with?('_spec.rb.diff')
-
- specs_count += 1
- quarantine_specs_count += 1 if path.read.match?(/^\+.*, quarantine:/)
-end
-
-# Run package-and-qa if there are no specs. E.g., when the MR changes QA framework files.
-exit 0 if specs_count == 0
-
-# Skip package-and-qa if there are only specs being put in quarantine.
-exit 2 if quarantine_specs_count == specs_count && quarantine_specs_count == files_count
-
-# Run package-and-qa under any other circumstances. E.g., if there are specs being put in quarantine but there are also
-# other changes that might need to be tested.