904 Commits

Author SHA1 Message Date
Łukasz 'sil2100' Zemczak
e51cc58a2b Switch logic of detecting failures to looking for failed tests in policy_info. Explicitly list all failing tests in the bug comment. Change wording. 2019-07-19 15:43:54 +02:00
Steve Langasek
66036553ac Trigger linux rebuild test on upload of gcc-defaults
The update of gcc to gcc-9 introduced a regression in buildability of
anything relying on kernel headers.  This could have been caught by the
kernel's standard rebuild autopkgtest, but we currently only trigger the
linux autopkgtest for source packages named gcc-N, which excludes
gcc-defaults.

Include gcc-defaults in the list of packages that trigger a linux rebuild
test.

Bug-Ubuntu: https://bugs.launchpad.net/bugs/1836100
2019-07-10 14:30:28 -07:00
Łukasz 'sil2100' Zemczak
316fad3442 SRU ADT regression: temporarily use my e-mail in the From: header. 2019-06-25 18:49:38 +02:00
Łukasz 'sil2100' Zemczak
d21bd600cc SRU ADT regression: handle errors in sendmail. 2019-06-25 16:16:26 +02:00
Łukasz 'sil2100' Zemczak
1cbc21d258 SRU ADT regression: Fix state checking as now it again needs to include the info for distro and series. Add unit test. 2019-05-24 16:18:34 +02:00
Łukasz 'sil2100' Zemczak
49e3d7e51c SRU ADT regression: Remove the no-longer-needed state-file backup functionality as currently there's basically low risk that we'd crash mid-state-save. Add a test for this. 2019-05-23 19:08:29 +02:00
Iain Lane
c8492d4cc7
SRU ADT regression: Need to decode the returned bytes from urlopen() 2019-05-23 10:47:59 +01:00
Iain Lane
73dabf2136
SRU ADT tests: Fix tests after the previous changes
This is the problem when implementing to a mock...
2019-05-23 10:38:58 +01:00
Iain Lane
f10caba01d
SRU ADT regression: Handle unset changes_url (e.g. for syncs) 2019-05-23 10:27:24 +01:00
Iain Lane
c49f1ad8d5
SRU ADT regression: src is a dict 2019-05-23 10:26:22 +01:00
Iain Lane
34bd0d2706
Add config entry for SRU regression emails
Also rename the key to SRUREGRESSIONEMAIL_ENABLE, since
SRUREGRESSION_ENABLE sounds like we're turning off the regressions
themselves. If only. 😜
2019-05-23 10:02:33 +01:00
Iain Lane
bb032d98d8
SRU ADT: Be clear when printing log messages in dry-run mode 2019-05-22 17:47:29 +01:00
Iain Lane
c1f8ab2f9c
SRU ADT tests: Be more idiomatic
Use @patch decorator instead of ExitStack context manager. This is more
consistent with the rest of the testsuite we have in britney.

Use some more idiomatic assertions, e.g.
unittest.mock.assert_not_called().
2019-05-22 17:47:18 +01:00
Łukasz 'sil2100' Zemczak
1690624d11
Add a new policy to message bugs on SRU regressions
It works like this. We wait until all tests have finished running. and
then grab their results. If there are any regressions, we mail each bug
with a link to pending-sru.html. There's a state file which records the
mails we've sent out, so that we don't mail the same bug multiple times.
2019-05-22 17:47:17 +01:00
Łukasz 'sil2100' Zemczak
daaadf5bbd Re-add missing SRU members to the britney.conf hint permissions. 2019-02-20 16:09:26 +01:00
Iain Lane
c12d92efa4
autopkgtest: Handle 'blacklisted' version
The apt version comparison sorts 'blacklisted' greater than most version
numbers, which means that we accidentally apply force hints for version
'blacklisted' to all uploads. Since this is the only case of a hacked
version number, let's special case it so that 'blacklisted' hints only
match packages with 'blacklisted' version.
2019-01-24 13:08:03 +00:00
Iain Lane
bbabac140d
Repair requests without testpkg-version
We're supposed to synthesise an "unknown" version for these, but a bug
in the worker meant we didn't do that in some cases and these leaked
into swift. Let's repair it client-side.
2019-01-21 11:20:27 +00:00
Iain Lane
0ff44d90e7
autopkgtest: Handle status '8' as a pass
This means 'all tests were skipped', or 'no tests in this package'. The
former case is new after our recent autopkgtest rebase.

Upstream britney (624b185ba60709f1686fbaa2a7623a94c5cb23ef) handles this
as "neutral", which doesn't influence the result and is a more explicit
(better) way of expressing this situation. Once we rebase, we should
take that approach.
2018-12-11 09:44:55 +00:00
Iain Lane
73b4c3b065
autopkgtest: put delivery_mode in the right place 2018-12-06 14:18:19 +00:00
Iain Lane
f8bfbfe164
autopkgtest: Make pycodestyle clean (--ignore=E501,W504) 2018-12-06 09:48:30 +00:00
Iain Lane
62ca3b16b9
autopkgtest: Publish AMQP messages persistently
We want to ask the broker to write them out to disk, hoepfully
mitigating against it crashing.
2018-12-06 09:35:39 +00:00
Steve Langasek
9f91c536be gzip doesn't use libgcc so is not a useful smoketest. Use doxygen instead. 2018-12-06 11:05:52 +02:00
Steve Langasek
dd815d14fa Replace libreoffice with gzip as the libgcc smoke test for gcc.
Bug-Ubuntu: https://bugs.launchpad.net/bugs/1793260
2018-12-05 16:09:57 +02:00
Steve Langasek
3e3bf84cc4 Drop references to empty, no longer needed hints files 2018-11-18 16:24:16 -08:00
Steve Langasek
bf26a09948 Fix autopkgtests wrt the fact that excuses is no longer in the yaml 2018-09-20 13:34:18 +00:00
Steve Langasek
00a097f497 Don't use aptitude ever 2018-09-20 15:18:08 +02:00
Steve Langasek
414c91e10c Update list of install dependencies, for autopkgtests (python3-amqplib) 2018-09-20 15:18:08 +02:00
Iain Lane
f2456289ac autopkgtest: Run gcc-n's testuite, if it has one 2018-09-06 15:30:12 +01:00
Iain Lane
3e1ee5a2ef sourceppa: Add some more logging so we can hopefully see what is going on 2018-07-31 17:42:27 +01:00
Iain Lane
ff553758a6 run-autopkgtest: Add persistent messages
This means the server should write them to disk as soon as possible, so
they can be recovered if it crashes.
2018-06-08 09:25:59 +01:00
Iain Lane
c3fe5dc897 run-autopkgtest: Pass SUDO_USER as the requester if it's set
No place to hide
2018-05-02 12:56:34 +01:00
Steve Langasek
100a3f4e90 adjust variable name for ubuntu-sru as well 2018-04-08 23:45:02 -07:00
Steve Langasek
336b115ab5 adjust variable name so that hints files can reflect actual team names 2018-04-08 22:04:35 -07:00
Steve Langasek
82b448e3ad devel series hints are governed by the release team, not the archive team 2018-04-08 12:41:58 -07:00
Mathieu Trudel-Lapierre
88b4d023ad Use the CSafeLoader YAML loader to catch issues with complex objects 2018-03-08 13:30:00 +01:00
Mathieu Trudel-Lapierre
b16530a37d Flatten the defaultdict(set) for unsat_deps into a standard dict for output 2018-03-08 13:27:52 +01:00
Mathieu Trudel-Lapierre
f32907acea Fix review issues. 2018-03-08 11:11:44 +01:00
Mathieu Trudel-Lapierre
80bf9060de Re-add 'unsatisfiable dependencies' information which dropped with the excuses key. 2018-03-06 17:32:13 +01:00
Steve Langasek
94bffad136 As near as I can tell, the 'excuses' element within the yaml data is a
complete duplication of other structured data elsewhere in the yaml, and
does nothing but slow down the yaml parsing.  So, just avoid emitting it.
2018-03-02 17:01:31 -08:00
Steve Langasek
0969097d48 Turn on arm64 for autopkgtest. 2017-11-21 23:52:41 -08:00
Steve Langasek
c4c3c21387 Add support for 'team' hint files, so we don't have to manage them by individual team member names 2017-11-14 08:28:39 -08:00
Iain Lane
400a6c57c4 email: When there are multiple SPPHs, use the last one
We were just seeing an interesting crash in britney. It was trying to
look up the gpg_keys of ~python-modules-team, which is a suspended
account - in LP API terms that's a HTTP error 410.

  https://api.launchpad.net/devel/~python-modules-team/gpg_keys

The direct error was fixed in commit 272f41c, but we actually should
*not* have been trying to look up this team's email address in the first
place. This upload was an auto-sync and so should not cause email to be
sent. The problem is that it was synced into universe and then promoted
into main. We were looking at the SPPH for after the promotion, which
has different values in the various signer/creator/sponsor/... fields,
and that made us think that it was a regular upload to email about.

Fix this by always looking at the oldest SPPH which should correspond to
the initial upload and not whatever happened to it afterwards.
2017-11-09 13:04:33 +00:00
Iain Lane
272f41c4a5 email: Ignore suspended LP people
We were looking at ~python-modules-team, which is suspended and raises a
HTTPError that wasn't being caught.
2017-11-09 11:47:47 +00:00
Brian Murray
c2de27c3b3 Add in some more SRU team members and sort alphabetically. 2017-09-28 10:51:27 -07:00
Iain Lane
70c325fbbf autopkgtest: Save pending.json after every test request
We just had the autopkgtest queues DoSed because britney was crashing
after requesting each reverse dependency for a perl upload, but before
it had written pending.json out so it knew what not to request again.
This was 25,000 requests per arch...

Let's write pending.json straight after sending each request, so that
the next run - even after a crash - won't re-request the same things
again.
2017-09-07 12:24:00 +01:00
Andy Whitcroft
593acb2753 run-autopkgtest: note that --bulk is best efforts
We only currently support low-priority jobs via the ubuntu/huge-ubuntu
queue pairs.  For ppa and upstream jobs there is no low priority option
currently.  Clarify this in the description.

Signed-off-by: Andy Whitcroft <apw@canonical.com>
2017-08-02 01:14:18 +01:00
Andy Whitcroft
4af147c787 run-autopkgtest: add --bulk option to direct ubuntu jobs to the huge queue
Signed-off-by: Andy Whitcroft <apw@canonical.com>
2017-08-02 00:56:02 +01:00
Steve Langasek
5136a3efb5 Comment the calculation of last_due 2017-07-18 18:36:04 +02:00
Colin Watson
b073a71911 Check whether testsuite triggers have any binaries
We should only run autopkgtests for testsuite triggers if the source
package has any binaries on the relevant architecture, as otherwise it
should be expected to fail.
2017-07-18 12:18:28 +01:00
Steve Langasek
132ffaf465 Refine the logic for recording the nominal sent age of the mail
In the previous iteration, if we were ever down/frozen/disabled long enough
to miss sending two mails in a row, we would see unintended "catch-up"
behavior where each subsequent run of britney would send a mail until the
right total number of mails had been sent.  Don't do this; instead, catch us
up in one go to the most recent mail that should have been sent, avoiding
bunching of notifications.

This changes one of the tests also to match.
2017-07-06 21:14:19 -07:00