1515 Commits

Author SHA1 Message Date
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
Steve Langasek
83e6102613 Temporarily disable autohinter due to a recursion problem 2021-12-12 14:37:37 -08:00
Steve Langasek
e2847293df Set SMOOTH_UPDATES = ALL, which is correct for how Ubuntu handles binaries 2021-12-06 13:06:10 -08:00
Steve Langasek
d9d6261b0c Merge remote-tracking branch 'juliank/no-testing-triggers' 2021-11-19 08:34:59 -08:00
Steve Langasek
8239fe9fd7 RIP Adam :/ 2021-11-09 13:59:12 -08:00
Steve Langasek
36459dcdb7 Fix fencepost error when fetching autopkgtest results from sqlite
When querying swift there is no way to take results only newer than a
specified point, you can only query newer than or equal to.  But for sqlite
we can absolutely use > instead of >= and avoid re-processing results we've
already seen.
2021-11-06 22:09:02 -07:00
Steve Langasek
bbdd8105b2 Split all triggers, not just the first one 2021-11-06 19:19:10 -07:00
Steve Langasek
e7eae446b6 Merge remote-tracking branch 'juliank/check-new-migration-reference' 2021-11-05 17:47:32 -07:00
Julian Andres Klode
11a023d133 Only log force-reset-test hints for matching packages
Logging all force-reset-test hints for every package causes
about 850 MB of logs in the last run of 880 MB of logs in total,
let's only log ones matching the package instead, as we do for
force-badtest.
2021-11-06 00:08:28 +01:00
Julian Andres Klode
e9576d55e2 Check for new baseline results if we don't have any yet
In Ubuntu, we only fetch results on demand, so we might not
have seen the results yet.

Debian always fetches results at the beginning so has all the
data ready.
2021-11-05 23:18:15 +01:00
Julian Andres Klode
b60734f118 Do not add autopkgtest triggers that are already in testing
If the version of the trigger in testing is the same, skip it.
2021-11-05 21:44:09 +01:00
Steve Langasek
ef29d8e2c2 Set ADT_BASELINE=reference to honor baseline retests 2021-11-05 13:33:41 -07:00
Steve Langasek
e3f9714dbf Turn on support for pulling autopkgtest results from sqlite instead of swift 2021-10-22 16:49:18 -07:00
Steve Langasek
d87dbf0db2 Merge branch 'adt-results-from-swift' 2021-10-22 16:16:06 -07:00
Steve Langasek
383887a8e3 bdmurray-linting 2021-10-22 16:12:26 -07:00
Steve Langasek
4784a4c99b Merge branch 'options-not-mutually-exclusive' 2021-10-07 14:32:52 -07:00
Steve Langasek
a7b58b76e6 --print-uninst and --nuninst-cache are not mutually-exclusive
This check has been present for a long time but there is no reason for it -
there is code elsewhere that explicitly checks for both options being set
together and DTRT.  And this saves a minute on each britney run to not
regenerate uninstallability information that was just generated.
2021-10-07 01:08:45 -07:00
Steve Langasek
6cd47f352b In the autopkgtest policy, cache the list of force-reset-test hints once
Due to the number of hints in standing use in Ubuntu, hints.search() is an
expensive operation, and we call it once for *every single test* referenced
from -proposed.  Since force-reset-test are a small proportion of the hints
in use, searching once for all the hints of this type and only searching
this subset for each autopkgtest improves performance (with 23000
autopkgtests referenced in -proposed, this saves roughly 1 minute of
runtime, or 11% on a 9-minute britney run; the number of packages in
-proposed is typically much higher at other points in the release cycle,
therefore the absolute improvement in performance is expected to be
greater.)

The force-reset-test hints are an Ubuntu delta so this is not expected to be
upstreamed; and it could eventually be dropped if and when baseline
retesting is implemented in Ubuntu and the number of hints required drops.

This could be implemented with a more generic, elegant solution in
HintsCollection, but again, the scalability problem of hints is hopefully
short-lived so I didn't consider it worth the investment here.
2021-10-07 00:14:49 -07:00
Steve Langasek
794b14b316 Implement support for pulling autopkgtest results from sqlite db 2021-10-07 00:41:56 +00:00
Steve Langasek
173deaff39 Support setting test results in swift and sqlite3 simultaneously 2021-10-07 00:41:56 +00:00
Steve Langasek
af8890bc4b Preliminary code to make autopkgtest policy download autopkgtest.db
Include test to assert britney failure if the database is unavailable
2021-10-07 00:41:56 +00:00
Steve Langasek
3814d63666 Make download_retry work with non-HTTP urls
urlopen() supports non-http URLs, but when called on them, http-related
features are absent - such as getcode().  Make the code work with file:///
URLs.
2021-10-07 00:41:56 +00:00
Steve Langasek
0b4cd56d68 Initial infrastructure for testing db-based autopkgtest results 2021-10-07 00:41:56 +00:00
Steve Langasek
82fad57aa9 Don't use expensive 'remove' hints
Since we've never used remove hints in Ubuntu and never will, we shouldn't
pay the cost for them in britney runs.  Remove references to them entirely,
to speed up britney runs.

This is an Ubuntu delta not expected to be upstreamed, and can be dropped at
some future point when we don't have 11,000 active hints.  (This count of
hints is expected to drop dramatically once we have autopkgtest baseline
retesting.)
2021-10-06 12:54:11 -07:00
Steve Langasek
1f520269de Iterate over binary packages from a source package before iterating over hints
The existing code attempts to "short circuit" processing of binaries in
unstable by first checking if the package is subject to a removal hint.

This is invalid in Ubuntu for two reasons:
- we do not use removal hints for removing packages from the release pocket
- there are 11,000 hints in Ubuntu (due to force-reset-test) - searching all
  hints is time-consuming and not a short-circuit at all.

Reorder the code so we only scan the hints if there's otherwise an
indication of something to do.
2021-10-05 13:21:44 -07:00
Iain Lane
32c3f288b0 autopkgtest: Check for kernel-triggered tests when migrating kernels
We currently skip the ALWAYSFAIL/REGRESSION handling for kernels. This
can lead to us missing genuine regressions in kernel uploads. The
idea is that results from one kernel flavour shouldn't influence
another.

We can keep this idea but do better and actually check for regressions:
when looking at results, if we're considering a kernel, only look at
results which were triggered by this kernel.
2021-05-21 16:13:13 +01:00
Iain Lane
ea64504820 conf: Update ADT_SWIFT_URL & amqp IP for the new deployment
We're shifting autopkgtest to a new deployment which hides the old
internal URL.

RabbitMQ now lives at a different place too, which has a DNS name.
2021-04-26 10:03:41 +01:00