-
Notifications
You must be signed in to change notification settings - Fork 296
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ci: More flatpak ci fixes #824
Conversation
Yup, makes sense! Though there are still some failures it seems. 😢 |
Not sure what happened there. Seems like the web server couldn't get started? All the other failures are variations of:
|
It looks like this got a lot closer...we possibly got OOM killed? bot, retest this please |
bot, retest this please |
I was seeing this when trying to run flatpak's tests in ostree's CI: ostreedev/ostree#824 The race here is that the python process can still be writing to the output while sed is reading it, and hence we'll find a difference on the next line. Fix this by making a tmp copy of the file, which then both sed and cmp will read consistently. I'm not *entirely* sure this will fix the problem as I couldn't easily reproduce the race locally, but I believe it at least fixes *a* race.
I think this is flatpak/flatpak#772 |
bot, retest this please |
I was seeing this when trying to run flatpak's tests in ostree's CI: ostreedev/ostree#824 The race here is that the python process can still be writing to the output while sed is reading it, and hence we'll find a difference on the next line. Fix this by making a tmp copy of the file, which then both sed and cmp will read consistently. I'm not *entirely* sure this will fix the problem as I couldn't easily reproduce the race locally, but I believe it at least fixes *a* race.
Ah yep, RAM was the problem. This should be GTG. |
ci/flatpak.sh
Outdated
dnf builddep -y ostree flatpak | ||
dnf install -y flatpak && rpm -e flatpak | ||
# From the current flatpak builds | ||
dnf install -y gcc sudo which attr fuse gjs parallel clang libubsan gnome-desktop-testing 'pkgconfig(fuse)' 'pkgconfig(gio-unix-2.0)' 'pkgconfig(gobject-introspection-1.0)' 'pkgconfig(json-glib-1.0)' 'pkgconfig(libarchive)' 'pkgconfig(libelf)' 'pkgconfig(libsoup-2.4)' 'pkgconfig(ostree-1)' 'pkgconfig(polkit-gobject-1)' 'pkgconfig(libseccomp)' 'pkgconfig(xau)' 'bubblewrap' docbook-dtds docbook-style-xsl intltool libattr-devel libcap-devel libdwarf-devel elfutils systemd ostree gpgme-devel /usr/bin/xmlto /usr/bin/xsltproc redhat-rpm-config /usr/bin/update-mime-database /usr/bin/update-desktop-database /usr/bin/gtk-update-icon-cache |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How about we just fetch it from the YAML file after we clone it, e.g. something like:
python3 -c 'import yaml; y = list(yaml.load_all(open(".redhat-ci.yml")))[0]; print("\n".join(y["packages"]))' | xargs dnf install -y
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, done (though I had to use NUL rather than newline separated to make e.g. pkgconfig(gobject-introspection-1.0) >= 1.40.0
work).
That said the reason I didn't do this is I think at least for flatpak we should switch upstream to do privcontainer rather than host as we are here - and that circles back to enhancing rhci for this, or prototyping it outside perhaps.
We need our `make install` to override the ostree RPM, so do it all in one txn. This sort of thing is where a more rigorous model like rdgo/gcontinuous use becomes better, but we'll hack it with shell for now.
OK, rebased and squashed. |
Nice! |
☀️ Test successful - status-atomicjenkins |
We need our
make install
to override the ostree RPM, so do it all in one txn.This sort of thing is where a more rigorous model like rdgo/gcontinuous use
becomes better, but we'll hack it with shell for now.