Commit graph

194 commits

Author SHA1 Message Date
Khalid Abu Shawarib 508e7e4e4f ci: Move style check job from test stage to review stage 2024-02-22 21:29:23 +00:00
Ondrej Holy c387235f61 ci: Allow to run pipeline manually from web
The manually started pipelines over the Run pipeline button are currently
blocked. Let's enable them again so one can e.g test Dockerfile changes
without merging them first.
2024-01-31 08:19:36 +01:00
Corey Berla 1234b5ad66 ci: Add script to check for potfile errors
It's easy to forget to update potfiles. Steal the script that
gnome-shell uses to check for this.
2024-01-30 13:51:53 -08:00
Peter Eisenmann fa3a66ba6d ci: fix inverted branch inclusion
This was an oversight in [1] and causes the pipeline not to run for
release branches, but for any other branch. Fixed by inverting the
condition.

[1] ecac11569e
2024-01-19 14:39:19 +01:00
Peter Eisenmann ecac11569e ci: combine branch pipeline rules
This prevents running a pipeline for any branch that is not a main or a
release branch, unless a merge request for it is created. It therefore
fixes the double pipeline issue where one pipeline would run for the
branch and one for the merge request itself.
2024-01-16 01:23:30 +01:00
Khalid Abu Shawarib 021dc400cd ci: Don't run pipeline on tag events 2023-12-22 19:58:14 +00:00
Khalid Abu Shawarib 4a41e3cff3 ci: Only enable automatic aarch64 pipeline for main 2023-12-22 19:55:24 +00:00
Khalid Abu Shawarib 1b3714a9a7 ci: Fix aarch64 test auto running outside GNOME 2023-12-22 19:03:14 +00:00
Khalid Abu Shawarib 663cb503ce Update .gitlab-ci.yml file
(cherry picked from commit 9dd2ca35138e5677627288f0eebb1cb4e924186e)

(cherry picked from commit 157c3c7108f8c78f8f1e570973bf33c085fa3eaa)
2023-12-13 23:27:45 +00:00
Khalid Abu Shawarib f6047f17fd ci: don't run asan pipeline on merge request events 2023-12-12 04:25:45 +01:00
Peter Eisenmann fdbef81b5f ci: fix leak suppression path
The leak suppression path needs to be absolute, so prefix it with
$CI_PROJECT_DIR. Also, fix the suppression file's file name.
2023-11-13 00:54:09 +01:00
Khalid Abu Shawarib b2efafc124 ci: Add experimental Address Sanitizer analysis
Run the tests after compiling with the address sanitizer.
2023-11-12 21:57:38 +00:00
Jordan Petridis 13dce90a04 Revert "ci: Pin to older ci template"
This reverts commit 6168784a52.
2023-05-26 11:35:44 +00:00
Corey Berla 6168784a52 ci: Pin to older ci template
The ci template was changed to run-tests during the build which
causes our pipelines to fail.  Revert to a previous ci template
until this is sorted out

See: https://gitlab.gnome.org/GNOME/citemplates/-/merge_requests/37
2023-05-04 20:35:45 +00:00
Ondrej Holy b9021e8339 ci: Make flatpak@aarch64 job manual in some cases
The flatpak@aarch64 is not allowed on other branches than master but
is allowed on forks. It would be nice to allow manual run in those cases
to save resources, but to allow testing aarch64-specific fixes.
2023-01-24 07:04:33 +00:00
Ondrej Holy 22d285e741 ci: Disable pages job on forks
The pages job is allowed on forks currently. It is not desired to run it
there and it is going to fail there anyway. Let's explicitly disable this
job on forks.
2023-01-24 07:04:33 +00:00
Ondrej Holy 29f4004fd3 ci: Replace only/except with rules
The only/except keywords were deprecated in favor of rules. Let's
replace them with rules.
2023-01-24 07:04:33 +00:00
Ondrej Holy 0bc1ad5293 ci: Fix $CI_DEFAULT_BRANCH usage for pages job
The pages job is not running currently on master. This is because
`only: refs: $CI_DEFAULT_BRANCH` is not supported (e.g. see
https://gitlab.com/gitlab-org/gitlab/-/issues/29591). Let's fix that
using one of the suggestions from that issue.
2023-01-24 07:04:33 +00:00
Corey Berla e03fbb42c4 ci: Publish docs to nautilus pages
We are generating the docs, so lets make them accessible online.

See: https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/941
2023-01-16 12:11:25 +00:00
Corey Berla 33e93e8df5 ci: Remove old incorrect command 2023-01-16 12:11:25 +00:00
António Fernandes d799c66311 ci: Prefer the json manifest
This is what Builder uses.
2022-12-21 12:33:22 +00:00
Zander Brown c2964d7a56 ci: build for aarch64
Rebase on the current flatpak-ci style/guidelines, thus enabling aarch64
builds (and publshing nautilus on gnome-nightly for aarch64)

https://gitlab.gnome.org/GNOME/Initiatives/-/wikis/DevOps-with-Flatpak
2022-08-30 22:47:33 +00:00
Bartłomiej Piotrowski 2ee7cea491 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:25:42 +00:00
Ondrej Holy cf9d7a6ebb ci: Make the update image job work with fedora:latest
For some reason, "buildah login" is not enough with fedora:latest
and "buildah push --creds" needs to be used to make it work again.
2021-10-11 06:45:26 +00:00
Ondrej Holy 7b469dfa87 ci: Use lineup-parameters python script
The lineup-parameters.c is hard to use with meson. Let's use the python
rewrite from
https://gitlab.gnome.org/GNOME/epiphany/-/blob/master/data/lineup-parameters
instead.
2021-10-11 06:45:26 +00:00
Ondrej Holy 44d574e176 ci: Remove fedora job
The fedora job was there before the flatpak job. But now we relies on
flatpak job and the fedora job doesn't really give much benefits. It is
rather waste of runners and maintainers time. Let's remove it.
2021-10-11 06:45:26 +00:00
Ondrej Holy 78275a7180 ci: Remove flatpak master job
The flatpak master job seems to be redundant currently. It uses the same
image as flatpak devel and their .yml files are equal. The two flatpak jobs
are relict from the times when GNOME SDK was unstable and broke CI often,
which is no more true. Let's remove the flatpak master job.
2021-10-11 06:45:26 +00:00
Ondrej Holy bb5a72d685 ci: Do not run style check on stable branches
The style check job currently fails on stable branches since the recent
uncrustify change. We could use older image on stable, or backport the code
changes, but I think that the style check job on stable branches is not
actually needed. Let's disable the style check job on stable branches to
fix pipeline there and avoid this situation in the future.
2021-10-11 06:45:26 +00:00
Ondrej Holy a77b5cf91b ci: Use fedora:latest instead of rawhide
There are various problems with the rawhide image currently and I don't
know how to workaround them. Let's use fedora:latest (temporarily) to fix
our pipeline.
2021-08-10 11:20:25 +00:00
António Fernandes 7834de2671 ci: Set nightly runtime repository
It was set to flathub because we used to depend on a stable runtime. [1]

We have since changed to depend on the unstable runtime[2], but the
Nightly flatpakref still configures the wrong repo on 
installation. If the user didn't have the gnome-nightly repository 
configured in advance, then the runtime cannot be found, failing the
installation.[3]

Update the repo URL, which I should have done in [2].

[1] c4afd14696
[2] d95a616116
[3] https://blogs.gnome.org/antoniof/2021/03/05/files-40-beta-more-productivity-and-some-eye-candy/#comment-541
2021-03-06 18:24:33 +00:00
Bastien Nocera 43b356b03b Revert "ci: Use Fedora latest instead of rawhide temporarily"
GNOME CI runners have been updated to the latest libseccomp so the
problem should no longer happen.

This reverts commit ab55380f20.
2020-12-11 13:49:55 +01:00
Ondrej Holy ab55380f20 ci: Use Fedora latest instead of rawhide temporarily
The pipeline currently fails with Fedora rawhide, because g-ir-scanner fails
with failures like: "ldd: error: you do not have read permission for
`/builds/GNOME/nautilus/_build/tmp-introspectgwhh729q/Nautilus-3.0'".
This obviously affects more projects:, e.g. GNOME/grilo!62. Let's use
Fedora latest for now as a workaround.
2020-11-20 09:41:44 +01:00
Ondrej Holy 8eb21a09fc ci: Remove broken triage job
The triage job is broken, which regularly causes CI failures. I've
made some attemts to fix it but I failed. I don't have capacity to
spent more time on it. Let's remove the job completely for now to
prevent the confusing CI failures.

Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1625
2020-11-20 09:39:57 +01:00
Ondrej Holy c90d787e1f ci: Use Buildah instead of Docker to generate images
The GNOME runners are no more privileged and thus it is not possible to
use Docker from the pipeline. Let's use Buildah instead Docker to fix
the image generation.
2020-11-20 09:38:24 +01:00
António Fernandes 9dbc32ded3 Revert "ci: Hardcode image version for style check job"
This reverts commit 831203e951.

The previous commit fixed the issue we were working around.
2020-11-18 15:02:55 +00:00
Ondrej Holy 831203e951 ci: Hardcode image version for style check job
The style check job currently fails as uncrustify from rawhide obviously
changed its behavior. It tries to change function pointer the following
way:

- gboolean (*each_function)(NautilusCanvasIcon *, gpointer),
+ gboolean ( *each_function )(NautilusCanvasIcon *, gpointer),

I don't think this is right, but don't know how to fix that ellegantly.
Note that this is because of "sp_before_ptr_star = false". Let's
hardcode the previous image varsion to avoid this change for now.
2020-09-07 09:59:59 +02:00
Ondrej Holy 7868470694 flatpak: Build all tests by default
The flatpak template has been changed recently and MESON_ARGS variable
doesn't have any effect currently. Let's drop MESON_ARGS and move the
build options into the manifests directly (ie. -Dtests=all).

See:
https://gitlab.gnome.org/GNOME/citemplates/blob/master/flatpak/flatpak_ci_initiative.yml
https://mail.gnome.org/archives/desktop-devel-list/2020-April/thread.html
2020-05-10 22:59:32 +00:00
Ondrej Holy 949251868d ci: Run nightly job even if cross environment stage fails
Currently, the nightly job is skipped if fedora rawhide, or flatpak
master job fails. This is not wanted as the nightly should be published
if flatpak devel job succeeds. Let's allow failures of those jobs to
not block the deploy stage.
2020-04-15 16:12:34 +02:00
Ondrej Holy c4e557b295 ci: Do not show update image job on merge requests
The update image job is always shown (under the GNOME namespace),
however, fedora rawhide job is used only on master/web. So let's show
this job only on master/web as well.
2020-04-15 16:12:34 +02:00
Ondrej Holy b65cda5fae ci: Run fedora rawhide job always on master
The fedora job is run only on schedules and tags. The job is pretty
fast now. So let's run it always on master so we know about possible
breakages immediately and not after several days.

Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/1441
2020-04-15 16:11:49 +02:00
Ondrej Holy 1b73cf2601 Revert "ci: Use test stage for flatpak devel job"
This reverts commit e7c2a0182a, because
the stage name doesn't have to be explicitely defined currently as it
was changed directly in the template:
5bffac6dfb
2020-04-05 16:22:26 +00:00
Ondrej Holy a6eca5c513 ci: Use docker image to speed up jobs
Fedora and style check jobs install dependencies on each run. This
causes that the pipelines take a long time. Let's use a custom docker
image to not block runners for such a long time and to get the pipeline
results faster. This commit also adds a new job to generate the docker
image for us.
2020-04-05 16:22:26 +00:00
Ondrej Holy b945567a64 ci: Add artifacts for style check job
It is not easy to find out  why the style check job failed. Let's expose
the style check job diff over artifacts to make it easier.
2020-04-05 16:22:26 +00:00
Ondrej Holy f13903f575 ci: Add style-check job
The whole code was reformatted using uncrustify script, but MRs are not
checked using the script. Let's add style-check job to prevent wrongly
formated MRs to be merged.
2020-04-05 16:22:26 +00:00
Ondrej Holy 2519d26f11 ci: Fix alignment of triage jobs
Triage jobs use just 2 spaces as tab size, whereas other jobs are using 4.
Let's fix this.
2020-04-05 16:22:26 +00:00
Ondrej Holy 2893aec73b ci: Replace underscore by space in stage name
The stage and job names can contain spaces and they are already used
in job names. Let's replace underscore in cross_environemnt stage to
make the pipeline output nicer.
2020-04-05 16:22:26 +00:00
Ondrej Holy 352e6688d0 ci: Remove obsolete review jobs
Teh review and stop_review jobs are no more needed as per flatpak_ci_initiative.yml
comments. Let't remove them to make the file more readable.
2020-04-05 16:22:26 +00:00
Ondrej Holy 9899617174 ci: Move code from template directly to job
The distro_test template is used only by one job. Let's move the code
directly to that job to make the file more readable.
2020-04-05 16:22:26 +00:00
Ondrej Holy 0733acc223 ci: Remove dead code
The coverage is not computed since the commit a5a405d, but .gitlab-ci.yml
still contains some coverage related code which is not currently used. Let's
remove that code to make it more readable.
2020-04-05 16:22:26 +00:00
Ondrej Holy e7c2a0182a ci: Use test stage for flatpak devel job
The flatpak devel job uses .pre stage currently.

This seems to be the reason why pipelines are not triggered in some
cases according: https://gitlab.com/gitlab-org/gitlab/issues/198518.

Let's use the unused test stage instead to fix the pipeline and to make
the pipeline output nicer.
2020-03-09 09:29:00 +01:00