Commit Graph

2106 Commits

Author SHA1 Message Date
Adam Williamson
7de1c4837a Go back to 'std' video driver for UEFI tests
This should be safe now we finally figured out #1518464.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-06-04 11:08:07 -07:00
Adam Williamson
06fbeca281 Avoid unconditional wait for Timbuktu screen in _boot_to_anaconda
The way this currently works, the test unconditionally waits 60
seconds for the "Timbuktu screen" (the warning dialog shown on
pre-release images) to appear when anaconda is starting up, even
if it's testing an image where it doesn't show up. Now we test
Atomic nightlies and live respins and stuff this happens quite a
lot, so let's avoid it. This way if the hub appears during those
60 seconds we'll spot it right away and continue, otherwise we
behave the same as before.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-24 14:18:21 -07:00
Adam Williamson
05c9f4fbcd Make sure all check_screen calls have explicit timeout
Upstream is gonna change the default from 30 to 0, it seems:
https://github.com/os-autoinst/os-autoinst/pull/965
so let's go ahead and change these two cases where we have no
explicit timeout to have one.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-24 14:17:24 -07:00
Adam Williamson
33ac181955 Use mirrorlist instead of baseurl for updates tests
The reason we have all this horrible code to use the commented-
out baseurl lines in the repo files instead of the metalinks
that are usually used is a timing issue with the metalink
system. As a protection against stale mirrors, the metalink
system sends the package manager a list of mirrors *and a list
of recent checksums for the repo metadata*. The package manager
goes out and gets the metadata from the first mirror on the
list, then checksums it; if the checksum isn't on the list of
checksums it got from mirrormanager, it assumes that means the
mirror is stale, and tries the next on the list instead.

The problem is that MM's list of checksums is currently only
updated once an hour (by a cron job). So we kept running into
a problem where, when a test ran just after one of the repos
had been regenerated, the infra mirror it's supposed to use
would be rejected because the checksum wasn't on the list - but
not because the mirror was stale, but because it was too fresh,
it had got the new packages and metadata but mirrormanager's
list of checksums hadn't been updated to include the checksum
for the latest metadata.

All this baseurl munging code was getting ridiculous, though,
what with the tests getting more complicated and errors showing
up in the actual repo files and stuff. It occurred to me that
instead of using the baseurl we can just use the 'mirrorlist'
system instead of 'metalink'. mirrorlist is the dumber, older
system which just provides the package manager a list of mirrors
and nothing else - the whole stale-mirror-detection-checksum
thing does not happen with mirrorlists, the package manager just
tries all the mirrors in order and uses the first that works.
And happily, it's very easy to convert the metalink URLs into
mirrorlist URLs, and it saves all that faffing around trying to
fix up baseurls.

Also, adjust upgrade_boot to do the s/metalink/mirrorlist/
substitution, so upgrade tests don't run into the timing issue
in the steps before the main repo_setup run is done by
upgrade_run, and adjust repo_setup_compose to sub this line out
later.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-18 16:41:13 -07:00
Michel Normand
d661eaaad4 New needles encrypted tests, blue background bypass brc#1551662
The background is now blue for ppc64le, so add related needles as bypass.
no such problem with ppc64 (BE)

problem initially detected on Rawhide compose 20180204
but still present on f28 compose 20180302
             and Rawhide compose 20180513

Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
2018-05-16 12:55:29 +02:00
Adam Williamson
307f3a0d58 Add needles to handle console login with 'white on grey' colors
https://bugzilla.redhat.com/show_bug.cgi?id=1403365 has been
around approximately forever and I still haven't managed to
debug it; let's just make needles for it, as it's not really a
critical bug, the system still *works*.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-14 18:47:49 -07:00
Adam Williamson
891fb57140 Add yet another layout_us-gdm variant
Really not sure why the appearance of this needle seems to change
so much, but oh well.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-14 18:46:55 -07:00
Adam Williamson
085cc7d281 Add variant console passphrase needle for i386
For quite a while on i386 the 'enter passphrase' console screen
has used bright white text, for some reason. Let's just have a
variant needle for this instead of worrying too hard about why.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-14 18:45:24 -07:00
Adam Williamson
8754611eef Extend some boot timeouts in upgrade tests
Sometimes rebooting during upgrade tests seems to take longer
than these timeouts allow, so let's bump them a bit.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-11 09:02:21 -07:00
Adam Williamson
c69b01f447 Add variant install_lang_inactive needle
Different font kerning, for some reason. Hope I don't have a
huge needle retake here...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-09 23:27:38 -07:00
Adam Williamson
c074fe5e34 Add some more variant needles (passphrase entry, Firefox)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-07 16:24:36 -07:00
Adam Williamson
fdaa4783e7 _check_install_source: handle 'added repo' and 'enabled repo'
The text changed from 'added repo' to 'enabled repo' in Rawhide
after F28, so let's handle both at least till F28 is EOL.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-07 15:50:47 -07:00
Adam Williamson
c3a511e052 support_server: workaround RHBZ#1554390 (breaks dnsmasq on F28)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-03 14:00:41 -07:00
Adam Williamson
34dbe78406 Use virtio-rng for all tests
...to try and avoid running into RHBZ#1572916, which is killing
Rawhide tests it seems. Let's hope this doesn't result in host
entropy starvation. If it does I might try patching os-autoinst
to seed virtio-rng from /dev/urandom, not /dev/random...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-03 13:12:34 -07:00
Adam Williamson
452140fdbb Re-arrange the repo fixups to be a bit clearer and more correct
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-03 11:51:50 -07:00
Adam Williamson
7912648e5b Escape the $ in previous commit, tweak repo debugging bits
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-03 11:28:30 -07:00
Adam Williamson
6089ec6c55 More repo baseurl munging, for update upgrade tests to F28 now
Now F28 went stable, we're not disabling updates on upgrade any
more, and this bug got exposed: the location of the updates and
updates-testing repos actually changed between F27 and F28, so
the `baseurl` line from fedora-repos in F27 isn't correct for
F28. When doing an upgrade from < 28 to > 27, we need to correct
the URL when we're done installing stuff from the old release
repos but before we start trying to pull stuff from the new
release repos.

This repo munging crap is really getting fragile, it'd be great
if we could get that metadata timing issue resolved so we could
reliably use mirrormanager...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-03 10:06:58 -07:00
Adam Williamson
6b62cb87ed Another fix for the repo fix...
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-02 15:55:59 -07:00
Adam Williamson
c236fbcd21 Drop a stray # in previous commit, which made it not work
This is from my local test, sigh.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-02 15:48:24 -07:00
Adam Williamson
cef45346b6 Try to fix up some errors in fedora-repos baseurls in F28
This is breaking all f28 update tests, sigh.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-02 15:35:50 -07:00
Adam Williamson
cec1da9372 Remove bodhi-client 0.9 support in repo_setup_updates
...don't need it any more, F25 went EOL ages ago.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-05-02 15:08:34 -07:00
Adam Williamson
1e67cc802f Add Workstation upgrade test to update tests
Since we set up this whole process to run upgrade tests for
updates to run the FreeIPA ones on the Server base image, it
should be easy to also run Workstation upgrade tests on the
Workstation base image. So let's do that! Let's do the most
complex test only, the encrypted upgrade one.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-27 17:10:53 -07:00
Adam Williamson
e931cfa0a5 Test FreeIPA upgrade on updates
This adds the FreeIPA server and client upgrade tests to a new
updates-server-upgrade flavor which fedora_openqa will schedule
for updates. This way, we can test whether updates break
FreeIPA upgrades, which is a request the FreeIPA team made to
me. This has been deployed on staging for the last week or so
and appears to work fine.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-26 11:35:18 -07:00
Adam Williamson
aae0041f6f Fuck off JSON, just fuck off and die in a fucking fire
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-25 15:48:36 -07:00
Adam Williamson
22dc620fa7 Add a couple more cantarell 101 needles (ppc64)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-25 15:16:08 -07:00
Adam Williamson
0ab8c6bd3f Click on language select screen (RHBZ #1566066)
We've been seeing an odd case lately where the language select
screen is not foregrounded when it appears (so all text is
grey). It happens very occasionally on x86_64, but a lot on
ppc64. To work around this, let's add a needle that matches the
inactive screen, and click on the screen when it appears just
to make sure it's active.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-25 15:04:52 -07:00
Adam Williamson
ef322198eb Add another CJK variant needle
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-19 16:20:01 -07:00
Adam Williamson
555a4bba6d Add some more new needles for font changes (cantarell, CJK)
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-18 16:28:28 -07:00
Adam Williamson
7e8a3010bb Fix bracket matching in previous commit
Syntax checks? In a text editor? THAT'S CRAZY TALK

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-09 17:19:03 -07:00
Adam Williamson
51b46bab7b g-i-s suppression change now applies to FAW 28+
Since gnome-initial-setup-3.28.0-5.fc28 , the g-i-s screens
that are supposed to be suppressed as part of
https://fedoraproject.org/wiki/Changes/ReduceInitialSetupRedundancy
are now suppressed on FAW installs as well as traditional ones.
So adjust the logic accordingly.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-09 16:50:16 -07:00
Adam Williamson
28080d3187 Add yet a couple more cantarell 101 needles
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-09 15:02:09 -07:00
Adam Williamson
23192baa5d Use better pattern for checking if there are coredumps
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-04 14:13:39 -07:00
Adam Williamson
cdf33cc2ae Catch and upload coredumps in post-fail hook
We were doing this in a post-install test, but not on failures.
We need it to figure out why Firefox is crashing on aarch64...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-04 12:10:33 -07:00
Adam Williamson
07527a8afa Set aarch64 timeout scale to 1.5x, not 5x
This is what I meant...

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-04-03 18:04:45 -07:00
Adam Williamson
fcc1d630c6 Add a couple more cantarell101 needles
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-30 17:52:16 -07:00
Adam Williamson
89bdea410f Rejig how we count the g-i-s screens we'll encounter
Trying to keep track of what these magic numbers mean is really
getting messy, so let's do it a bit more explicitly, using the
page names g-i-s uses internally, and lots of comments. This
should make it clearer and more maintainable when stuff changes.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-29 19:06:51 -07:00
Adam Williamson
70d3f0269c Of course, we have to actually auth *properly*...
...just clicking the button ain't gonna work. D'oh.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-28 22:17:33 -07:00
Adam Williamson
1f2e333043 Handle an auth dialog appearing after login on FAW
This will happen until a fedora-release PR is merged and sent
out for F28.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-28 21:24:31 -07:00
Adam Williamson
749136e93e Add needle missing from previous commit
Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-28 21:14:21 -07:00
Adam Williamson
baa7ac4e39 Handle KDE update test when KDE has aleady found updates
We do the 'desktop update' test for KDE via the notification
icon thingy, and it behaves differently depending on whether it
has already detected there are updates or not. The test only
works at present in the case where it *hasn't* - it expects the
notification icon to be in the extended panel and it expects to
see a 'refresh' button, neither of which is the case if it's
already noticed there are updates to install.

We should also force PackageKit to update its list of available
updates after we set up our 'special' update, otherwise on this
path KDE will only install the updates it found *before* we did
our stuff, and the test will fail as our special update won't be
there.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-28 19:53:19 -07:00
Adam Williamson
de3f4a873c Sleep a bit less in notification tests (to fix KDE postinst)
In F28 tests, the notification 'counter' thing that we rely on
to check there's only *one* notification seems to suddenly
disappear...right around 10 minutes after the desktop starts up,
which is just how long our test idles for to catch crashes that
happen a little after boot. That causes test fails. Let's try
just cutting the wait down to 8 minutes to see if that helps.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-28 19:20:29 -07:00
Adam Williamson
c2a5846064 Fix KDE live notification test (dismiss network notification)
KDE in F28+ seems to show a network connection notification on
live boot, for some reason. Just dismiss it to help the test
pass.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-28 19:01:46 -07:00
Adam Williamson
df9db4fb2f Bump disk size for KDE package set install to 11GiB (#1541433)
KDE package set install constantly runs into #1541433. While
that's not being fixed, let's bump the disk size so we can see
if the install actually works.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-27 13:02:49 -07:00
Adam Williamson
7d253b9e65 Add some variant Russian / US layout indicator needles
Seems like the indicator arrow's vertical position changed in
F28, for some reason. Anyway, new needles.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-27 12:07:12 -07:00
Adam Williamson
75d1b80db7 Bump a magic timeout a bit for aarch64
aarch64 managed to hit the problem this 'magic timeout' tries
to avoid, so let's extend it :(

e.g. https://openqa.stg.fedoraproject.org/tests/267174

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-27 11:45:22 -07:00
Adam Williamson
81540165e8 Adjust repo_setup for add-on Modularity
I believe this should do all the right repo modifications for
add-on Modularity (i.e. F28+ Server installs, for now).

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-26 13:27:31 -07:00
Adam Williamson
2c26ce1ede Simply repo_setup by removing MODULAR bit
We don't need all the MODULAR stuff any more as we no longer do
oldModularity composes like that.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-26 12:56:10 -07:00
Adam Williamson
7ca549f4e1 Try 3GiB RAM per aarch64 worker
The hosts only have 16GiB, so 4GiB per worker is pretty high.
3 really should be enough.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-23 16:05:03 -07:00
Adam Williamson
c0eee06e9a aarch64: two CPUs per VM, 1.5x timeout
Tweaking aarch64 settings a bit to try and improve reliability.
I'm going to cut down to 3 workers per box along with this.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-23 15:54:21 -07:00
Adam Williamson
24f2eb39d9 Check for test3's existence at start of freeipa_password_change
This test expects to pick up from freeipa_webui, but that test
is not fatal (i.e. it can fail and we still carry on to this
one). We should probably make them independent, but for now,
just check if 'test3' (one of the users freeipa_webui creates
and that this test requires) actually exists, at the start. If
not, we can just die right away.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
2018-03-23 09:18:39 -07:00