Skip to content

Commit 99d8a74

Browse files
committed
Add a shard:group# tag to tests for slow runners
Adds a shard:group[1-4] tag to each test, placing them into four distinct groups so that they can be run in parallel on separate gha instances when we're running slowly under qemu for arm64 testing. The tagging was done by a script just striping the alphabetic list of test file names. Four groupings was based on their being 225 tests, and the fastest runner in gha getting to ~70 of them before getting killed by the six hour run limit. Signed-off-by: Josh Partlow <jpartlow@glatisant.org>
1 parent b1023ad commit 99d8a74

225 files changed

Lines changed: 446 additions & 219 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

acceptance/tests/agent/agent_disable_lockfile.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
# The validation of the `vardir` at the OS level
44
# should be accomplished in another test.
55
'audit:high',
6-
'audit:refactor' # This test should not require a master. Remove the use of `with_puppet_running_on`.
6+
'audit:refactor', # This test should not require a master. Remove the use of `with_puppet_running_on`.
7+
'shard:group1' # For splitting out groups of tests for slow test runners
78

89
#
910
# This test is intended to ensure that puppet agent --enable/--disable

acceptance/tests/agent/agent_fails_with_unknown_resource.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
test_name "agent run should fail if it finds an unknown resource type" do
22
tag 'audit:high',
3-
'audit:integration'
3+
'audit:integration',
4+
'shard:group2' # For splitting out groups of tests for slow test runners
45

56
require 'puppet/acceptance/common_utils'
67

acceptance/tests/agent/agent_parses_json_catalog.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
'audit:high', # tests defined catalog format
55
'audit:integration', # There is no OS specific risk here.
66
'server',
7-
'catalog:json'
7+
'catalog:json',
8+
'shard:group3' # For splitting out groups of tests for slow test runners
89

910
require 'puppet/acceptance/common_utils'
1011
require 'json'

acceptance/tests/agent/fallback_to_cached_catalog.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22

33
tag 'audit:high',
44
'audit:integration', # This test is not OS sensitive.
5-
'audit:refactor' # A catalog fixture can be used for this test. Remove the usage of `with_puppet_running_on`.
5+
'audit:refactor', # A catalog fixture can be used for this test. Remove the usage of `with_puppet_running_on`.
6+
'shard:group4' # For splitting out groups of tests for slow test runners
67

78
step "run agents once to cache the catalog" do
89
with_puppet_running_on master, {} do

acceptance/tests/agent/last_run_summary_report.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
test_name "The 'last_run_summary.yaml' report has the right location and permissions" do
2-
tag 'audit:high'
2+
tag 'audit:high',
3+
'shard:group1' # For splitting out groups of tests for slow test runners
34

45
require 'puppet/acceptance/temp_file_utils'
56
extend Puppet::Acceptance::TempFileUtils

acceptance/tests/aix/aix_package_provider.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
test_name "aix package provider should work correctly" do
22

33
tag 'audit:high',
4-
'audit:acceptance' # OS specific by definition.
4+
'audit:acceptance', # OS specific by definition.
5+
'shard:group2' # For splitting out groups of tests for slow test runners
56

67
confine :to, :platform => /aix/
78

acceptance/tests/aix/nim_package_provider.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
test_name "NIM package provider should work correctly"
22

33
tag 'audit:high',
4-
'audit:acceptance' # OS specific by definition
4+
'audit:acceptance', # OS specific by definition
5+
'shard:group3' # For splitting out groups of tests for slow test runners
56

67
# nim test is slow, confine to only aix 7.2 and recent puppet versions
78
confine :to, :platform => "aix" do |aix|

acceptance/tests/allow_arbitrary_node_name_fact_for_agent.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
tag 'audit:high',
44
'audit:integration', # Tests that the server properly overrides certname with node_name fact.
55
# Testing of passenger master is no longer needed.
6-
'server'
6+
'server',
7+
'shard:group4' # For splitting out groups of tests for slow test runners
78

89
success_message = "node_name_fact setting was correctly used to determine the node name"
910

acceptance/tests/allow_arbitrary_node_name_for_agent.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
tag 'audit:high',
44
'audit:integration', # Tests that the server properly overrides certname with node_name fact.
55
# Testing of passenger master is no longer needed.
6-
'server'
6+
'server',
7+
'shard:group1' # For splitting out groups of tests for slow test runners
78

89
success_message = "node_name_value setting was correctly used as the node name"
910
testdir = master.tmpdir('nodenamevalue')

acceptance/tests/apply/classes/parameterized_classes.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
test_name "parametrized classes"
22

33
tag 'audit:high',
4-
'audit:unit' # This should be covered at the unit layer.
4+
'audit:unit', # This should be covered at the unit layer.
5+
'shard:group2' # For splitting out groups of tests for slow test runners
56

67
########################################################################
78
step "should allow param classes"

0 commit comments

Comments
 (0)