1541 Commits

Author SHA1 Message Date
Tim Andersson
ac6b0c1ba7
fix: don't queue unnecessary tests on i386
Recent investigations indicated that approximately 85% of all of the
i386 tests run at autopkgtest.ubuntu.com are pointless.

These tests are pointless for the following reason:
for end users, the dependencies of an arch: all package on
non-arch: all packages are satisfied by the amd64 binaries, not i386
binaries.

This commit introduces a check in the `tests_for_source` function, which
is the function that generates a list of tests to be requested for a
src package on a specified architecture.

The check itself takes the src package name, gets the list of binaries
for that src package and checks to see if the architecture for all of
the binaries of said src package is "all". If all the binaries are
Architecture: "all", then the function returns an empty list and no
tests will be requested for that src package on i386.

Since it's quite hard to test britney code, the implementation is
wrapped in a try except block as to avoid tracebacks blocking britney
runs.

The try except block should be removed once the change is considered to
be stable.
2024-07-23 17:06:33 +01:00
Brian Murray
5cad435a0b autopkgtest.py: use decode not str
I was on holiday too long?
2024-06-25 15:23:49 -07:00
Brian Murray
4e3ee76caf autopkgtest.py: both checksums need to be strings 2024-06-25 14:50:50 -07:00
Brian Murray
7d997562a0 autopkgtest: add some debugging to checksum checking 2024-06-25 14:34:50 -07:00
Brian Murray
f7eb93beb2 autopkgtest.py Download the checksum first since it is smaller. 2024-06-25 14:01:06 -07:00
Brian Murray
9398f75d21 Merge remote-tracking branch 'andersson123/no-content-length-check-checksum-instead'
Modify britney to use the database checksum instead of content-length
header from apache2.
2024-06-25 08:24:52 -07:00
Tim Andersson
84d9355125 Revert "Fix: autopkgtest now returns content-length header again"
This reverts commit b7807106233ad1230211626e4288232ee09a9c02.
2024-04-25 08:32:06 +01:00
Tim Andersson
d5c0c1fbb3 feat: check database checksum instead of content-length header
autopkgtest-cloud will now serve:
autopkgtest.ubuntu.com/static/autopkgtest.db.sha256

Britney now calculates the sha256 of the newly downloaded db locally and
checks that it matches the sha256 file served by autopkgtest-cloud,
instead of checking that the content-length header matches the
size of the new downloaded database.

Since the most recent apache2 security update in focal [1], the
content-length header isn't served by default, and it seems that when
it is served it's not entirely accurate. This check has become
brittle, and so we have implemented this new mechanism.

[1] https://bugs.launchpad.net/ubuntu/+source/apache2/+bug/2061816
2024-04-24 14:40:13 +01:00
Tim Andersson
b780710623 Fix: autopkgtest now returns content-length header again
reverts commit 25eb52aa3386ecbccd2d9c8dafd22498d40e2002

This must be reverted so that britney is aware of short reads of the db.
2024-04-16 17:13:17 +01:00
Steve Langasek
62aa68142d fix syntax error 2024-04-12 13:48:34 -07:00
Steve Langasek
25eb52aa33 Patch fetch_db to handle missing 'content-length' header
We don't know why the autopkgtest webserver has stopped providing a
Content-Length header but the current code doesn't handle its absence, so
detect this rather than throwing an exception.

Should be reverted once the header is back, we don't want to be in the dark
about short reads of the db.
2024-04-12 09:48:26 -07:00
Steve Langasek
9e28fceafa Merge branch 'no-die-on-rabbitmq-failure' 2024-04-08 17:38:17 -07:00
Steve Langasek
7a8e98dfab Merge remote-tracking branch 'juergh/juergh/remove-raspi' 2024-04-01 20:11:22 -07:00
Steve Langasek
13f2ba4277 Handle ConnectionResetError from rabbitmq.
As seen in
https://ubuntu-archive-team.ubuntu.com/proposed-migration/log/noble/2024-04-01/12:52:27.log

Having an entire britney run bail because of a connection reset is a bad
outcome!

Instead, catch this exception and avoid adding the test in question to the
list of queued tests (we can pick it up on the next run).

Possibly we should do more clever handling of a ConnectionResetError such as
reconnecting, but this is a minimum fix that will stop britney from aborting.
2024-04-01 18:14:35 -07:00
Steve Langasek
07cc085a77 Revert "Temporarily add armhf to BREAK_ARCHES for the time_t migration"
This reverts commit 5c03bdc9f8a97a8df05c3cc2cf66dabcfedffeaf.
2024-03-28 10:21:57 -07:00
Julian Andres Klode
2ac49d6e36 autopkgtest: Remove all-proposed for noble
We have migrated most, so let's stop doing this.
2024-03-28 14:49:44 +01:00
Steve Langasek
5c03bdc9f8 Temporarily add armhf to BREAK_ARCHES for the time_t migration 2024-03-27 19:13:15 -07:00
Julian Andres Klode
b2436f7ad5 Only remove tests from pending for non-ignored results
This avoids endlessly requeuing the test if the test produces
an older result.

This will make tests "disappear" if the infrastructure returns
old results for newer triggers but avoids the problem right
now where we end up queuing the same tests every run.
2024-03-25 18:17:47 +01:00
Julian Andres Klode
cdc015e7c4 Do not set all-proposed with migration-reference/0 2024-03-25 16:23:14 +01:00
Julian Andres Klode
467dfe8c8a Use all-proposed in noble for all architectures 2024-03-25 15:50:07 +01:00
Steve Langasek
a3da577f8f Merge branch 'no-implicit-dependency-policy' 2024-03-22 16:27:25 -07:00
Julian Andres Klode
ad797bd432 Revert "Temporarily disable use of sqlite db for autopkgtests"
The database has been regenerated, so let's switch back to using
it to speed up britney.

This reverts commit e0fb5d881654438dda09143e6b48c6d153975232.
2024-03-19 12:09:09 +01:00
Michael Hudson-Doyle
57710ee6e2 autopkgtest: Fix the date creation and comparison for time_t hack 2024-03-19 10:52:39 +01:00
Brian Murray
50d59b67db Fix a pep8 issue 2024-03-18 11:08:43 -07:00
Julian Andres Klode
bc3a6226ff Temporarily queue noble armhf tests with all-proposed=1
This is needed for the time_t transition.
2024-03-18 18:20:19 +01:00
Juerg Haefliger
700cf66c7b autopkgtest: Don't run tests on linux-meta-raspi
The raspi kernel doesn't support EFI and won't boot in OpenStack, so don't
try to run tests on it.

Signed-off-by: Juerg Haefliger <juergh@proton.me>
2024-02-20 10:37:01 +01:00
Steve Langasek
e5a438f7d4 Add support in code for disabling ImplicitDependencyPolicy, and disable it 2024-02-14 08:26:09 -08:00
Łukasz 'sil2100' Zemczak
08a27a5456 Attempt to get swift results working properly by using a workaround from security-britney. 2024-02-01 12:40:10 +01:00
Steve Langasek
e0fb5d8816 Temporarily disable use of sqlite db for autopkgtests
The database is being regenerated after an outage.  swift is slow but
we can get results more directly instead of being blocked by another day+.
2024-02-01 01:33:01 -08:00
Steve Langasek
2f0cb385c5 Update the swift base url to point directly at prodstack swift
Tim assures me the auth token in the name is read-only, and also exposed via
http redirects whenever one accesses the bucket via autopkgtest.u.c
frontend, so there is no security issue here; and accessing direct gets us
results even when the autopkgtest.db is out of date (which is the problem we
have right now that we want to route around).
2024-02-01 01:31:18 -08:00
Steve Langasek
cdd1a0cc59 Revert "Temporarily disable use of sqlite db for autopkgtests"
This reverts commit 50ffe4fe2f73ae81e1b017bfaa31ff66680bf059.
2024-01-31 17:57:28 -08:00
Steve Langasek
50ffe4fe2f Temporarily disable use of sqlite db for autopkgtests
The database is being regenerated after an outage.  swift is slow but
we can get results more directly instead of being blocked by another day+.
2024-01-31 11:31:05 -08:00
Steve Langasek
3e28539c17 Temporarily disable autohinter due to a recursion problem 2024-01-08 13:22:51 -08:00
Steve Langasek
acc93b376e Revert "Temporarily disable autohinter due to a recursion problem"
This reverts commit c93257d5cf8417cba3c72b6ed2404041753ab003.
2024-01-08 12:51:38 -08:00
Steve Langasek
c93257d5cf Temporarily disable autohinter due to a recursion problem 2024-01-08 09:19:11 -08:00
Steve Langasek
c60b67d182 Raise the python recursion limit
the autohinter is currently hitting the default Python stack limit; we should
try raising it, this is the intended britney behavior and the system is here
primarily to run proposed-migration so we should not be constrained by the
default
2024-01-08 08:19:16 -08:00
Steve Langasek
008fc3c065 autopkgtests accidentally in dry-run mode everywhere, fix logic 2023-03-14 07:53:37 -07:00
Steve Langasek
e5247de7b8 Add a dry-run option for the autopkgtest policy specifically
For rolling out britney on a new machine, we want to generate update_excuses
and update_output to confirm it's working correctly all the way through, so
we don't want to use the global --dry-run option; but we *do* want to
disable queuing tests and instead let the production instance of britney
queue the tests while we simply query the results.  Add support for
ADT_ENABLE=dry-run in britney.conf, parallelling the behavior of other
policies.
2023-03-10 12:59:39 -08:00
Steve Langasek
de19e280b2 More optimizations to not query unused baseline results 2022-08-23 15:05:50 -07:00
Steve Langasek
479662c63e Don't query for baseline results we won't use.
britney currently spends a majority of its runtime querying for baseline
test results that it won't find, and that it doesn't need.  Refactor to
eliminate many of these excess queries.
2022-08-23 14:03:41 -07:00
Brian Murray
0998eeaa1a We moved away from freenode a while ago 2022-06-29 10:52:13 -07:00
Steve Langasek
e25ce3df68 Revert "Temporarily disable use of sqlite db for autopkgtests"
This reverts commit d4dfa22ed167a4176132070627be3a17342c7ce7.
2022-05-02 22:07:53 +02:00
Steve Langasek
d4dfa22ed1 Temporarily disable use of sqlite db for autopkgtests
The initial db population for the series takes quite a while, so to not block
on this for the release opening process we can let britney talk directly to
swift in the short term.
2022-04-27 14:39:49 -07:00
Łukasz 'sil2100' Zemczak
1c32e3014b Re-add Bileto 4810 to the temporary exclude list. 2022-03-30 10:42:26 +02:00
Łukasz 'sil2100' Zemczak
d51e0be23a Fix typo in bileto ppa name. 2022-03-28 18:46:07 +02:00
Julian Andres Klode
f078aa28d0 do not group the ppc64el rebuilds by their bileto ppa 2022-03-28 10:54:21 +02:00
Haw Loeung
fd20237673
Update email address used for emails
@canonical.com is now DKIM signed and SPF published which means emails
from proposed-migration running on snakefruit sending direct would
likely be caught out. Since we're here, the project is Ubuntu related
so switch to using an @ubuntu.com address instead.
2022-03-22 10:58:40 +11:00
Michael Hudson-Doyle
53aaf8f8e9 allow retrying on "Reference test in progress, but real test failed already" 2022-02-11 09:21:28 +13:00
Julian Andres Klode
86618a1b1d Only set SMOOTH_UPDATES = libs oldlibs
Setting ALL has weird side effects with kernel upgrades and
other random binary packages being removed from source packages.
2022-01-27 18:54:38 +01:00
Steve Langasek
0374455b65 Revert "Temporarily disable autohinter due to a recursion problem"
This reverts commit 83e6102613b37f3e464ecd269b9dd9c621075021.
2021-12-13 18:31:03 -08:00