Emmanuele Bassi
8070bac06c
ci: Use extends instead of YAML anchors
...
The `extends` keyword is more readable than YAML's weird anchor syntax,
and we don't have too many anchors in our job definitions anyway.
2020-05-17 00:30:07 +01:00
Matthias Clasen
31cf894092
ci: Run tests with different backends
...
Run the testsuite under x11, wayland and broadway
in the fedora-x86_64 job. This requires us to use
the v17 image which includes weston.
2020-05-15 14:11:53 -04:00
Christoph Reiter
94202e6339
CI: use bash style variable expansion for the mingw cache key
...
It doesn't understand the powershell syntax which leads to the cache
key being empty which leads to cache restore being skipped
which leads to slow builds not using ccache.
See https://gitlab.com/gitlab-org/gitlab-runner/-/issues/2747
2020-05-06 21:23:14 +02:00
Christoph Reiter
662539acf7
CI: Switch to new Windows runners
...
They use powershell instead of cmd.exe, use the tag win32-ps instead of win32,
and run Windows 2016 instead of 2012r2.
The old runners will be switched off in the comming weeks.
2020-04-29 20:12:34 +02:00
Emmanuele Bassi
e692385baa
ci: Update the version of Meson in our Docker image
...
Needed for !1017 .
2020-04-08 12:26:58 +01:00
Emmanuele Bassi
bf6087f2da
ci: Add dbus-launch to the Docker build
2020-03-20 15:36:39 +00:00
Emmanuele Bassi
341b2a3d39
ci: Add a static analysis job
...
Use the Clang static analysis tool.
For the time being, we're going to allow it to fail, but the plan is to
fix every issue it raises.
2020-02-25 19:06:39 +00:00
Emmanuele Bassi
d9608a0357
ci: Move style-check to .pre phase
...
We want the style checks running at the start of the CI pipeline, no
need to have a specific phase for it.
2020-02-25 17:57:46 +00:00
Emmanuele Bassi
92d86c4a9f
ci: Update all fedora images to v14
2020-02-25 17:19:08 +00:00
Emmanuele Bassi
a87966b2bf
ci: Rename the "style-check" phase to "analysis"
...
We want to re-use it for other jobs.
2020-02-25 17:15:00 +00:00
Emmanuele Bassi
97b5775c1f
ci: Add a separate "docs" stage
...
Don't build the API reference on deploy; build it in a separate job,
instead, so we can run it on all pipelines, and deploy it only for
master.
2020-02-25 17:09:24 +00:00
Emmanuele Bassi
3a054d5a90
ci: Update flatpak jobs
...
The CI infrastructure was changed to run with fewer privileges, so we
need to adapt our Flatpak jobs to compensate.
See: https://mail.gnome.org/archives/desktop-devel-list/2020-February/msg00055.html
2020-02-19 15:04:58 +00:00
Emmanuele Bassi
9a631f2942
ci: Remove G_MESSAGES_DEBUG
...
We don't need all the debugging messages.
2020-02-13 17:10:19 +00:00
Emmanuele Bassi
9332abfd5b
ci: Allow flatpak jobs to fail
...
We have more accurate CI jobs, now; the Flatpak jobs are nice to have.
2020-02-13 17:09:35 +00:00
Matthias Clasen
2e0af29839
Make release builds mandatory for ci
...
The tests are now passing in release builds, lets keep
it that way.
2020-02-13 11:21:15 -05:00
Emmanuele Bassi
3dc6a07f5d
ci: Re-enable ccache
2020-02-13 14:55:39 +00:00
Emmanuele Bassi
f2da5e5617
ci: Deploy the API ref before flatpak
2020-02-12 18:12:53 +00:00
Emmanuele Bassi
2b425fa88a
ci: Allow release job to fail
...
We need to investigate release-specific failures, and possibly fix our
test suite to deal with debug-specific poking through the internal
state.
For the time being, allow the release job to fail, but this is strictly
a temporary measure.
2020-02-11 15:12:14 +00:00
Emmanuele Bassi
76aba1f046
ci: Add a style check pass
...
We should at least try to get the style check done by a machine, as
opposed to have humans go through merge requests with coding style
nitpicks.
2020-02-11 14:47:22 +00:00
Emmanuele Bassi
59028d7d0f
ci: Generate the report for the release builds
...
We are going to need to hide the report generation into the test runner
script, as we want the job to produce the reports even in case of
failure, instead of bailing out immediately.
2020-02-11 14:47:22 +00:00
Emmanuele Bassi
c00896a090
ci: Remove static build job
...
Now that we figured out why the build was failing on Fedora when the
profiling code was enabled, we can go back to building both shared and
static libraries by default.
2020-02-11 13:39:52 +00:00
Emmanuele Bassi
5ace9ef4e8
ci: Use the new Fedora image
2020-02-11 13:39:52 +00:00
Emmanuele Bassi
74b5bb12fb
ci: Disable ccache
2020-02-11 13:39:52 +00:00
Emmanuele Bassi
c06a08d63a
ci: Split the static and shared builds (again)
...
Sadly, we can't do a static build with the profiling code enabled
because we don't have a static GLib build available.
2020-02-11 13:39:52 +00:00
Emmanuele Bassi
9e38a70c6b
ci: Replicate the CI image scripts from GLib
...
They are easier to use and document, and allow us to add new base images
in the future without making a mess.
2020-02-11 13:39:52 +00:00
Emmanuele Bassi
56f9cdd99d
ci: Refactor the CI pipeline
...
We should have a single job for building both static and shared
versions of GTK. On the other hand, having a separate job for the
release build would be a plus.
Additionally, we shouldn't use an opaque script to build GTK; the only
step in the process that requires hand-holding is running the tests
suites under Xvfb, and having the build options visible from the YAML
file gives us a better idea of what kind of build we're running.
2020-02-11 13:39:52 +00:00
Emmanuele Bassi
51e155bffa
ci: Deploy the API reference on our GitLab pages
...
Now that we can build gtk-doc as a sub-project, we can go back to
publishing the API reference for the master branch every time we
build it.
2020-01-29 09:46:13 +01:00
Matthias Clasen
3120fb29e1
ci: Save syscap files from performance tests
...
They might become useful at some point.
2020-01-22 15:55:31 -05:00
Matthias Clasen
c8485af819
Use the v9 image for ci runs
...
The v9 image add sysprof-devel, so we can build
and run performance tests using libsysprof.
2020-01-21 19:30:59 -05:00
Christoph Reiter
5ef2748cef
CI: Install a newer MSYS2 pango package; Don't allow failures again
...
gtk master requires a newer pango than msys2 has, so install our own copy on top.
See #2243
2019-12-18 09:25:06 +01:00
Emmanuele Bassi
994a807819
ci: Use latest CI image
2019-12-16 19:01:03 +00:00
Niklas Hambüchen
3936412332
Try building static libs on CI
2019-11-15 18:42:36 +01:00
Emmanuele Bassi
b271db4f5b
ci: Allow msys2 jobs to fail
...
The msys2 runner has started failing for internal reasons:
- gtk-3-24 times out
- master fails with a ld.exe assertion:
BFD (GNU Binutils) 2.33.1 assertion fail
../../binutils-2.33.1/bfd/cofflink.c:2348
Both seem related to some MSYS2 issue. Until the runner is updated, we
should not block on it.
2019-11-05 10:44:05 +00:00
Emmanuele Bassi
c48fe6d7ec
ci: Update the image to Fedora 31
...
Fedora 31 ships with a newer version of Pango.
2019-11-01 12:52:19 +00:00
Emmanuele Bassi
9b7bda6137
ci: Comment job, not just the stage
...
GitLab doesn't like it when we keep a job but disable the stage.
2019-07-03 17:57:27 +01:00
Emmanuele Bassi
1b4ed58331
ci: Disable deploy jobs
...
The version of gtk-doc in our CI image is not new enough to cope with
the fact that GTK lost container properties.
2019-07-03 17:54:32 +01:00
Matthias Clasen
4eaf860e86
meson: Rename documentation option to gtk_doc
...
This name is what most of the stack is using.
Lets follow along, even though it is (imo)
uglier.
2019-07-01 20:16:37 -04:00
Matthias Clasen
92994bac6c
Save gsk output from ci
2019-06-03 02:09:46 +00:00
Christoph Reiter
24fcfa91b1
CI: update docker image to fedora 30
...
So we don't have to build glib as a subproject.
2019-05-10 15:48:33 +02:00
Emmanuele Bassi
3412d18dc2
ci: Use the v5 CI image
...
Otherwise the dependencies for the HTML report won't be available.
2019-04-13 14:18:14 +01:00
Emmanuele Bassi
3bc8ab91a2
ci: Add an HTML report generator
...
The JUnit cover report is useful, but only up to a point; for instance,
it's not used unless it's part of a merge request. This means you don't
get a report if you're pushing to a branch that does not have an MR open.
With a simple Python script and some minimal templating, we can generate
an HTML report from the "I Can't Believe it's not JSON™" log that Meson
produces, and keep it as a CI artifact.
2019-04-13 14:11:30 +01:00
Emmanuele Bassi
f58f0732c2
ci: Cache the reftest artifacts
...
Keeping the reftest output images as artifacts of a job allows us to
browse them and download them straight from GitLab.
2019-04-12 20:58:29 +01:00
Emmanuele Bassi
5c608fe070
ci: Install Monospace fonts
...
The reftests require them.
2019-04-12 20:09:10 +01:00
Emmanuele Bassi
f756c3b8a0
ci: Add manual jobs for Flatpak bundles
...
Bundles can be useful on branches and MRs as an opt-in.
2019-04-05 20:29:16 +01:00
Emmanuele Bassi
220c516691
ci: Call the report script on failure as well
...
GitLab's CI will bail out at the first failure, which means the
JSON-to-JUnit conversion script won't run unless it's part of the same
script that we run for building an testing.
2019-04-05 20:29:16 +01:00
Emmanuele Bassi
ba07279c95
ci: Add JUnit report for the test suite
...
We can convert the JSON output for `meson test` into a JUnix XML report,
which can be consumed by GitLab.
2019-04-05 20:29:16 +01:00
Matthias Clasen
e54e72b290
Add a flatpak manifest for org.gtk.IconBrowser4
...
And build it in ci.
2019-04-02 00:33:05 +00:00
Matthias Clasen
41bb875221
widget-factory: Rename to org.gtk.WidgetFactory4
2019-04-02 00:27:33 +00:00
Matthias Clasen
365400c13e
gtk-demo: Rename to org.gtk.Demo4
2019-04-02 00:27:32 +00:00
Christoph Reiter
80c26ab904
CI: install meson 0.50
2019-03-28 22:47:18 +01:00