Commit graph

132 commits

Author SHA1 Message Date
Matthijs Velsink
fa2cf5a5f2 meson, ci: Bump Libadwaita version to 1.6.alpha
This requires building from source, so do that for ci.
2024-05-28 09:23:50 +00:00
Matthijs Velsink
bc5c9976e6 ci: Make build stage output reusable artifact, speed up
Some time ago an attempt was made to store untracked output as artifact,
but since `$(pwd)` wasn't evaluating anyways, nothing was uploaded. See
https://gitlab.com/gitlab-org/gitlab-runner/-/issues/31035#note_1555090802.

Also, the test restarts the entire build, which is not needed
and takes a long time.

Instead, we can have the Meson build output stored as artifact, and have
the test just run without rebuild. This speeds up the CI.

The sanitizers should not pull the artifact though, so make those only
depend on the container.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
7f541b4211 ci: Use updated meson commands and not ninja
The command `meson . _build` was depecrated in favor of `meson setup
_build`, so let's use that instead.

Also, stop using ninja commands directly, as meson has support for that
syntax now too, making for a more consistent interface.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
670404f222 ci: Fix and simplify sanitizers
Memory sanitizer needs `compiler-rt` to link properly.

There's a YAML anchor that specifies the basic keys already, so no need
to repeat them.

Also, remove a left over comment.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
d427c2511d ci: Fix tests for GTK 4.15
GTK 4.15 made the new Vulkan renderer the default. I tried getting the
tests to pass using that, but could not.

So for now, revert to the `new GL` renderer, which is still very new as
well.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
94c2919cc3 ci: Stop specifying dependencies manually
Fedora obviously builds gnome-control-center as well, and therefore
allows one to get all the required deps with `dnf builddep`. We can use
that to clean up the dependency list massively.

If we do need specific packages, we can add them in the future, but that
was anyways needed for new dependencies.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
33277d3aec ci: Properly save build logs as artifact
The `artifacts` key for a job can only be specified once, so using a
YAML anchor for it does not directly work. Instead, we have to do it
inside `artifacts`.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
ea44120f0c ci: Update FDO ci-templates version
To build a new container, it looks like
185ede0e9b
is needed.

However, we cannot update to the newest ci-templates version, as from
logs it appears there is currently an issue with `buildah rm` (possibly
https://github.com/containers/buildah/issues/5488). This might be
related to the podman version being used.

As per the suggestion in
https://gitlab.gnome.org/Infrastructure/Infrastructure/-/issues/1247#note_1992394
let's update to the what seems to be the last working version.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
5a43d7ab9b ci: Start using FDO_REPO_SUFFIX for clearer image names
Currently, containers get stored based on their Fedora version, but that
can make it hard to see which container is used in which branch.
Instead, we can use `FDO_REPO_SUFFIX` to sort the containers based on
their branch name.

This would also make it easier to see which containers can be removed,
as there are currently gigabytes of unused containers it seems.

To make it as neat as possible, the images now get stored as
`main/2024-05-19.0-fedora-rawhide` for example.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
246510777c ci: Stop building gnome-online-accounts from git
Recent improvements to GOA (among which a port to GTK4) required
building it from git. Now that Fedora 40 is out with that version in it,
we can use that instead.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
77702c929b ci: Stop building some deps from the GTK4 port era
When the switch to GTK4 happened, commit b3b86894 introduced manual
builds of some dependencies as GTK4 support was still very new. Now that
GTK4 has been out for quite some time, these dependencies are available
in Fedora with GTK4 support, so just use them instead.

Note that `gnome-desktop3-devel` is still needed for the g-s-d build.
2024-05-27 10:20:28 +00:00
Matthijs Velsink
0c5b674763 ci: Remove "crun" tag
This was needed as a workaround for Infrastructure/GitLab#545, but that
has long been solved.

The manual asan test can (potentially) be used again too now.
2024-05-27 10:20:28 +00:00
Felipe Borges
f87eb9fdb4 ci: Include gtk-doc in base container
We now build our docs by default, we need gtk-doc.

See commit dbbe0476cb
2024-04-08 15:33:56 +02:00
Matthijs Velsink
b43b7053b9 ci: Check sorting of POTFILES.in in fixed locale
Sorting is locale dependent, so make sure it is always the same.
2024-04-08 13:02:40 +00:00
Matthijs Velsink
60dfb43ccd ci: Fix potfiles check for submodules
Submodules can also contain translatable files, but the CI does not
automatically pull submodules.

Fix that for the potfiles check.
2024-04-08 13:02:40 +00:00
Matthijs Velsink
46e602415e ci: Add potfile check
This script checks for files that are translatable, but are missing from
POTFILES.in. Also, it checks whether files that are in POTFILES.in are
translatable at all or are missing.

Based on nautilus!1418.

Closes #2845
2024-04-08 13:02:40 +00:00
Peter Hutterer
dbbe0476cb ci: Build with our various conditional options enabled
Add another stage identical to the default build but this time with
the various off-by-default options enabled (one per job).
2024-04-04 07:23:57 +00:00
Hari Rana
d9970d4f27 flatpak: Suffix app ID with .Devel
This commit changes the app ID from `org.gnome.SettingsDevel` to `org.gnome.Settings.Devel`, as recommended by the GNOME Developer Documentation - https://developer.gnome.org/documentation/tutorials/application-id.html#application-id-for-flatpak-development.

Additionally, some changes have been made in the buildsystem, to properly substitute the app ID depending on the profile in use.
2024-03-21 16:14:31 +00:00
Felipe Borges
19f04f7605 ci: Rebuild container image with newer Fedora Rawhide 2024-02-26 13:21:09 +01:00
Andy Holmes
3dabda4a3d ci: build gnome-online-accounts from git
Due the unstable GOA API, namely the recent port to GTK4, GOA
needs to be built from current `master` to build and run.
2024-02-12 17:58:35 +00:00
Matthijs Velsink
a82b5ac9ef Revert "ci: Don't run style check on main"
Reverts d92b90d1, because `$CI_COMMIT_BRANCH` is not available for MRs...
2024-02-07 18:16:51 +00:00
Corey Berla
d92b90d1b6 ci: Don't run style check on main
It always succeeds, so we are just wasting resources.
2024-02-06 09:08:03 +00:00
Felipe Borges
639b7262d4 ci: Don't build GTK from the source
Our build container has the gtk version we need.
2024-02-01 12:47:49 +01:00
Felipe Borges
3f308c1756 ci: Depend on libgweather4-devel 2024-01-31 10:38:07 +01:00
Felipe Borges
6390af5c35 ci: Drop gcr3 package
We now depend on gcr >= 4.
2024-01-31 10:38:07 +01:00
Peter Hutterer
977a10aba4 CI: Remove systemtap-runtime to avoid podman failures
Fixes podman issue
  Error: Error reading blob sha256:4bb4a44c73af78e20e3d4c36bc1ce95b4b77a546f11a65babf752f869f1ca655:
  open /var/lib/containers/storage/vfs/dir/9b8cfd27e86ef18db67fbda7d61d72046f3f5d8ad312655713d4cd8b065c80cd/usr/bin/staprun: permission denied

Related to https://gitlab.gnome.org/Infrastructure/Infrastructure/-/issues/1247
2024-01-31 09:17:50 +00:00
Peter Hutterer
3c8bd249f5 CI: Install clang-tools-extra for clang-format 2024-01-31 09:17:50 +00:00
Felipe Borges
a0732990c0 ci: Install 'glslc' for Gtk build with Vulkan 2024-01-08 10:01:51 +01:00
Felipe Borges
9880569714 ci: Stop building GLib from the source 2023-10-25 12:42:00 +02:00
Felipe Borges
52b8af088c ci: Allow failure for the style-check-diff CI job
This shouldn't block us from landing work, is more of a warning.
2023-10-12 10:09:44 +02:00
Dark Dragon
16e0c687bd Add style check to CI 2023-10-05 11:26:47 +00:00
Niels De Graef
bdc9986d1c ci: Use JUnit reports from Meson
Meson has been generating Junit XML files of its test results since
0.55, so we can use that to show the test results in the GitLab UI.
2023-08-23 23:56:41 +02:00
Felipe Borges
f83352e1bc ci: Be explicit about dnf5 during build
Since we are in this weird transition between dnf4->dnf5 in fedora
rawhide.
2023-08-11 08:50:09 +00:00
Felipe Borges
4a9214b1b9 ci: Build glib from the source
We were facing this CI build failure error

[573/879] Linking target panels/online-accounts/gnome-control-center-goa-helper
FAILED: panels/online-accounts/gnome-control-center-goa-helper
cc  -o panels/online-accounts/gnome-control-center-goa-helper panels/online-accounts/gnome-control-center-goa-helper.p/gnome-control-center-goa-helper.c.o -Wl,--as-needed -Wl,--no-undefined -Wl,--start-group /usr/lib64/libgoa-backend-1.0.so /usr/lib64/libgoa-1.0.so /usr/lib64/libgtk-3.so /usr/lib64/libgdk-3.so /usr/lib64/libz.so /usr/lib64/libatk-1.0.so /usr/lib64/libpangocairo-1.0.so /usr/lib64/libharfbuzz.so /usr/lib64/libgio-2.0.so /usr/lib64/libgdk_pixbuf-2.0.so /usr/lib64/libcairo-gobject.so /usr/lib64/libpango-1.0.so /usr/lib64/libcairo.so /usr/lib64/libglib-2.0.so /usr/lib64/libgobject-2.0.so -Wl,--end-group
/usr/bin/ld: /usr/lib64/libtracker-sparql-3.0.so.0: undefined reference to `g_assertion_message_cmpint'
collect2: error: ld returned 1 exit status

g_assertion_message_cmpint is available in newer glib than what's in
our container image.
2023-08-02 13:53:57 +02:00
Felipe Borges
250767e720 ci: Install dnf5-plugins instead of dnf-plugins-core
Since "builddep" is part of dnf5-plugins in DNF5.

See https://gitlab.gnome.org/GNOME/gnome-control-center/-/jobs/2933787

Unknown argument "builddep" for command "dnf5". Add "--help" for more information about the arguments.
$ echo "== Installing =="
== Installing ==
$ ninja -C _build install
ninja: Entering directory `_build'
ninja: fatal: chdir to '_build' - No such file or directory
Cleaning up project directory and file based variables 00:02
ERROR: Job failed: exit code 1
2023-07-11 13:16:52 +02:00
Felipe Borges
1e73e10435 ci: Add sassc dependency
Needed for our libadwaita local build.
2023-07-11 13:16:39 +02:00
Christopher Davis
bb88cddb5c ci: Add appstream and rebuild CI image
libadwaita 1.4 depends on appstream, and builds have
been failing because the subproject fails to build.

This commit adds appstream as a dependency so that
the libadwaita subproject can build without issues.
We also bump FDO_DISTRIBUTION_TAG to rebuild the image.
2023-06-07 17:43:24 -04:00
Maksym Hazevych
f13d0edab9 meson & ci: Update libadwaita dependency version 2023-06-06 13:40:33 +00:00
Bastien Nocera
16702a1b00 ci: Build own GTK version
So that the "Finalizing foo, but it still has children left" message is
not truncated. This commit will be reverted when GTK is new enough in
our image.
2023-03-14 19:42:59 +01:00
Bastien Nocera
4d2803dc4c ci: Update CI image
Bump the version of the CI image to force a rebuild. This should bring
us a newer version of Mesa that would fix problems running GTK4 with
Xvfb as a display server:
libEGL fatal: did not find extension DRI_Mesa version 1

Closes: #2397
2023-03-14 18:05:09 +01:00
Georges Basile Stavracas Neto
10cf38fb87 ci: Bump FDO_DISTRIBUTION_TAG
Let's build a newer image, with a more recent version of GLib.
2023-02-14 13:31:23 -03:00
Marco Melorio
6629701885 ci: Disable rotfiles-fuse from flatpak build
It makes the build fail apparently.
2022-11-24 13:20:13 +01:00
Marco Melorio
7ad4c2d065 ci: Remove unneeded copying in the flatpak build
This was missing out the `polkit-autogen` file, so the flatpak build was
failing because of that. Fix this by removing the copying phase and use
the correct manifest path directly instead.
2022-11-24 13:20:13 +01:00
Michael Catanzaro
a57202adcb Update rawhide CI image
We need a newer image to get GTK 4.8
2022-10-25 15:09:33 -05:00
Michael Catanzaro
560659ffb3 Update rawhide CI image
We need a newer image to get GTK 4.8
2022-10-25 19:02:33 +00:00
Pablo Correa Gómez
2374048e53 ci: Install setxkbmap needed for tests and upgrade image
Otherwise, any other operation running the tests has the utility missing
2022-10-25 19:02:33 +00:00
Pablo Correa Gómez
40ebc30fb8 ci: Make sure the project is built before running the tests 2022-10-25 19:02:33 +00:00
Sebastian Keller
7f6dc4511f tests: Add test for keyboard shortcut normalization
This tests if the shortcuts generated from an event are in the format
that the shell expects.
2022-08-22 12:49:13 +00:00
Bartłomiej Piotrowski
1720d39c83 Update (or drop) the Docker image used by Flatpak job
The gnome-runtime-images have been recently migrated to Quay. This is already reflected in the template.

Please note this MR has been created semi-automatically. If it doesn't make sense, feel free to close it.
2022-07-27 12:43:42 +02:00
Georges Basile Stavracas Neto
bbe3ae4a91 Switch to 'main' everywhere 2022-04-26 14:43:01 -03:00