Merge ~xnox/britney/+git/britney2-ubuntu:force-skiptest-all into ~ubuntu-release/britney/+git/britney2-ubuntu:master

Proposed by Dimitri John Ledkov
Status: Needs review
Proposed branch: ~xnox/britney/+git/britney2-ubuntu:force-skiptest-all
Merge into: ~ubuntu-release/britney/+git/britney2-ubuntu:master
Diff against target: 50 lines (+28/-1)
2 files modified
britney2/policies/autopkgtest.py (+2/-1)
tests/test_autopkgtest.py (+26/-0)
Reviewer Review Type Date Requested Status
Steve Langasek Needs Resubmitting
Review via email: mp+445460@code.launchpad.net

Commit message

force-skiptest: allow '/all' version specifier

Currently many kernels produce arch-all packages, and they seem to
trigger tests for many packages (hardcoded list + all dkms) on all
arches, even for kernels that do not exist on a given arch, or cannot
be tested.

At the moment this leads to a lot of test requests that are
impossible.

Add ability to specify a hint to prevent wiating on such
results. Specifically we currently need:

force-skiptest linux-meta-raspi/all
force-skiptest linux-meta-riscv/all
force-skiptest linux-meta-starfive/all

To post a comment you must log in.
Revision history for this message
Steve Langasek (vorlon) wrote :

Our capacity to review and maintain delta from Debian here is limited. Since there is in principle nothing Ubuntu-specific about this extension to the hint syntax, please get this agreed with the Debian release team at https://salsa.debian.org/release-team/britney2 and we can cherry-pick it from there.

Revision history for this message
Steve Langasek (vorlon) :
review: Needs Resubmitting

Unmerged commits

6be2106... by Dimitri John Ledkov

force-skiptest: allow '/all' version specifier

Currently many kernels produce arch-all packages, and they seem to
trigger tests for many packages (hardcoded list + all dkms) on all
arches, even for kernels that do not exist on a given arch, or cannot
be tested.

At the moment this leads to a lot of test requests that are
impossible.

Add ability to specify a hint to prevent wiating on such
results. Specifically we currently need:

force-skiptest linux-meta-raspi/all
force-skiptest linux-meta-riscv/all
force-skiptest linux-meta-starfive/all

Signed-off-by: Dimitri John Ledkov <email address hidden>

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/britney2/policies/autopkgtest.py b/britney2/policies/autopkgtest.py
2index 546a03c..6606270 100644
3--- a/britney2/policies/autopkgtest.py
4+++ b/britney2/policies/autopkgtest.py
5@@ -510,7 +510,8 @@ class AutopkgtestPolicy(BasePolicy):
6
7 if verdict != PolicyVerdict.PASS:
8 # check for force-skiptest hint
9- hints = self.hints.search('force-skiptest', package=source_name, version=source_data_srcdist.version)
10+ hints = self.hints.search('force-skiptest', package=source_name, version=source_data_srcdist.version) + \
11+ self.hints.search('force-skiptest', package=source_name, version='all')
12 if hints:
13 excuse.addreason('skiptest')
14 excuse.addinfo("Should wait for tests relating to %s %s, but forced by %s" %
15diff --git a/tests/test_autopkgtest.py b/tests/test_autopkgtest.py
16index 5c7bb72..825225a 100644
17--- a/tests/test_autopkgtest.py
18+++ b/tests/test_autopkgtest.py
19@@ -2056,6 +2056,32 @@ class AT(TestAutopkgtestBase):
20 ('excuses', 'Should wait for tests relating to green 2, but forced by autopkgtest')]
21 })
22
23+ def test_hint_force_skiptest_versionall(self):
24+ '''force-skiptest hint'''
25+
26+ self.data.add_default_packages(green=False)
27+
28+ self.create_hint('autopkgtest', 'force-skiptest green/all')
29+
30+ # regression of green, darkgreen ok, lightgreen running
31+ self.set_results({'autopkgtest-testing': {
32+ 'testing/i386/g/green/20150101_100000@': (0, 'green 1', tr('passedbefore/1')),
33+ 'testing/i386/g/green/20150101_100200@': (4, 'green 2', tr('green/2')),
34+ 'testing/i386/d/darkgreen/20150101_100000@': (0, 'darkgreen 1', tr('green/2')),
35+ 'testing/amd64/d/darkgreen/20150101_100000@': (0, 'darkgreen 1', tr('green/2')),
36+ }})
37+ self.run_it(
38+ [('libgreen1', {'Version': '2', 'Source': 'green', 'Depends': 'libc6'}, 'autopkgtest')],
39+ {'green': (True, {'green/2': {'amd64': 'RUNNING-ALWAYSFAIL', 'i386': 'REGRESSION'},
40+ 'lightgreen': {'amd64': 'RUNNING-ALWAYSFAIL', 'i386': 'RUNNING-ALWAYSFAIL'},
41+ 'darkgreen/1': {'amd64': 'PASS', 'i386': 'PASS'},
42+ }),
43+ },
44+ {'green': [('old-version', '1'), ('new-version', '2'),
45+ ('reason', 'skiptest'),
46+ ('excuses', 'Should wait for tests relating to green 2, but forced by autopkgtest')]
47+ })
48+
49 def test_hint_force_skiptest_different_version(self):
50 '''force-skiptest hint with non-matching version'''
51

Subscribers

People subscribed via source and target branches