diff --git a/.gitlab/ci/rails/rspec-foss-impact.gitlab-ci.yml.erb b/.gitlab/ci/rails/rspec-foss-impact.gitlab-ci.yml.erb index e9c66a49f72984fe7b7082e3c9c15f709eadd255..1fc7dc283833e9ee210a1864308f866793862416 100644 --- a/.gitlab/ci/rails/rspec-foss-impact.gitlab-ci.yml.erb +++ b/.gitlab/ci/rails/rspec-foss-impact.gitlab-ci.yml.erb @@ -87,3 +87,11 @@ rspec system foss-impact: parallel: <%= rspec_files_per_test_level[:system][:parallelization] %> <% end %> <% end %> + +<% if rspec_files_per_test_level[:tooling][:files].size > 0 %> +rspec tooling foss-impact: + extends: .base-rspec-foss-impact +<% if rspec_files_per_test_level[:tooling][:parallelization] > 1 %> + parallel: <%= rspec_files_per_test_level[:tooling][:parallelization] %> +<% end %> +<% end %> diff --git a/.gitlab/ci/rails/rspec-predictive.gitlab-ci.yml.erb b/.gitlab/ci/rails/rspec-predictive.gitlab-ci.yml.erb index 90f1b6fc5a8e1d258bcf84c84b98ae3635212070..b47e7f59163a097d8781761f2550a7e7c836cc09 100644 --- a/.gitlab/ci/rails/rspec-predictive.gitlab-ci.yml.erb +++ b/.gitlab/ci/rails/rspec-predictive.gitlab-ci.yml.erb @@ -97,6 +97,15 @@ rspec system predictive: <% end %> <% end %> +<% if rspec_files_per_test_level.dig(:tooling, :files).size > 0 %> +rspec tooling predictive: + extends: + - .base-rspec-predictive +<% if rspec_files_per_test_level.dig(:tooling, :parallelization) > 1 %> + parallel: <%= rspec_files_per_test_level.dig(:tooling, :parallelization) %> +<% end %> +<% end %> + <% end %> <% if test_suite_prefix == 'ee/' %> @@ -154,4 +163,13 @@ rspec-ee system predictive: <% end %> <% end %> +<% if rspec_files_per_test_level.dig(:tooling, :files).size > 0 %> +rspec-ee tooling predictive: + extends: + - .base-rspec-ee-predictive +<% if rspec_files_per_test_level.dig(:tooling, :parallelization) > 1 %> + parallel: <%= rspec_files_per_test_level.dig(:tooling, :parallelization) %> +<% end %> +<% end %> + <% end %> diff --git a/scripts/generate_rspec_pipeline.rb b/scripts/generate_rspec_pipeline.rb index 70a0c87be35bd5bfbcbbe3dfabb5e162d5da36b4..d4f6253f15a717ad4e12b8c5466fa4ec43c199e7 100755 --- a/scripts/generate_rspec_pipeline.rb +++ b/scripts/generate_rspec_pipeline.rb @@ -11,7 +11,7 @@ # Class to generate RSpec test child pipeline with dynamically parallelized jobs. class GenerateRspecPipeline SKIP_PIPELINE_YML_FILE = ".gitlab/ci/_skip.yml" - TEST_LEVELS = %i[migration background_migration unit integration system].freeze + TEST_LEVELS = %i[migration background_migration unit integration system tooling].freeze MAX_NODES_COUNT = 50 # Maximum parallelization allowed by GitLab OPTIMAL_TEST_JOB_DURATION_IN_SECONDS = 600 # 10 MINUTES