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>
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>
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>
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>
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>
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>
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>
...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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
This reduces duplication, but it also means that if the FreeIPA
web UI module fails, the password change module will pick up
from a point where Firefox is set up and won't fail in a bogus
way because it isn't.
Signed-off-by: Adam Williamson <awilliam@redhat.com>
There are cases where we get logged back into the FreeIPA web UI
automatically by a stale kerberos ticket or something. If we're
logged in as the *right* user, let's just treat this as a soft
failure and continue with the test.
Signed-off-by: Adam Williamson <awilliam@redhat.com>