Thibault Saunier
5586511446
ci: Add a job to verify commit messages on MRs
...
This uses [gitlint] and is based on their linting rules with some minor
config so it matches our style pretty well.
[gitlint]: https://jorisroovers.com/gitlint/#configuration
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3980 >
2023-02-24 00:22:19 +00:00
Jordan Petridis
37a8cbcb3f
ci: Mark MESON_COMMIT for prefill in gitlab
...
Starting with gitlab 15.7 we can give hints to the UI when triggering
a pipeline manually that we might want to change a variable.
https://docs.gitlab.com/15.7/ee/ci/pipelines/index.html#prefill-variables-in-manual-pipelines
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3639 >
2023-02-03 11:28:19 +00:00
Tim-Philipp Müller
e2fe594a19
ci: mark valgrind ges job as allowed to fail
...
It's extremely flaky, especially with idle runners, and
it's not limited to just a single test.
Mark as allowed to fail until someone starts caring about it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3626 >
2022-12-22 19:28:12 +00:00
Tim-Philipp Müller
95979e3a4b
ci: build less for integration testsuite
...
- skip gst-omx
- skip sharp bindings
- skip examples and gst-examples
- skip check unit tests (only needed for check job)
- skip microdns (not needed and pulls in subproject)
- skip avtp (ditto)
- skip webrtc (same)
- skip benchmarks
- skip qt5 and gtk
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3520 >
2022-12-06 17:10:10 +00:00
Tim-Philipp Müller
0b33f3cd1f
ci: sprinkle some date -R to easier see how long build steps take
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3354 >
2022-11-08 18:02:39 +00:00
Tim-Philipp Müller
4f3daefcc3
ci: use 8 parallel jobs for the integration test suite
...
The runners have a lower core count than the previous
generation so the integration tests run much slower
overall than the used to, so fix that by running more
in parallel again. The build time is measured in seconds
and much faster than it used to be, so should still be
a reasonable trade-off, and means re-tried jobs will
complete faster.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3354 >
2022-11-08 18:02:39 +00:00
Jordan Petridis
8c85a3143f
ci: Allow the documentation job to always run post-merge
...
We want the docs to be deployed on every post-merge pipeline
on the main branch. In order to do that however we have to
also have the fedora build job always running.
This won't affect the documentation job run by MRs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3258 >
2022-10-27 17:45:06 +00:00
Jordan Petridis
04a2370373
ci: Make jobs explicitly depend on the trigger job to run
...
Instead of relying on the implicit dep from the image build
jobs.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3258 >
2022-10-27 17:45:06 +00:00
Jordan Petridis
0377218806
ci: consolidate pre-build CI stages
...
Back in the day we kept separate stages around to define
build order, however with DAG/needs now jobs run asynchronously.
Additionally on recent version its possibel to same jobs depend on
other jobs from the same stage.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3258 >
2022-10-27 17:45:06 +00:00
Jordan Petridis
d6ad95dbe2
ci: Replace obselete variable
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3258 >
2022-10-27 17:45:06 +00:00
Nirbheek Chauhan
2c3f9d4587
ci: Run windows jobs when win-* binary subprojects are updated
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3209 >
2022-10-18 02:48:54 +05:30
Nirbheek Chauhan
2d838a9b3d
ci: Fix website regen on push
...
Don't make the integrate stage manual, we need it to regen the website
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3134 >
2022-10-10 07:02:58 +00:00
Nirbheek Chauhan
0e73b36870
ci: Move non-image-tag variables back to .gitlab-ci.yml
...
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3065#note_1563706
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3068 >
2022-09-23 01:08:49 +05:30
Nirbheek Chauhan
cabcb56ce8
ci: Bump cerbero trigger timeout to 4h
...
macOS runners can get overworked and cause cerbero pipelines to take
longer than 3h to complete, because each cross-macos-universal job
takes about 2h and so it can take that long to get a runner allocated.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3065 >
2022-09-22 16:59:05 +00:00
Nirbheek Chauhan
a6a081cbef
ci: Use include syntax for files on the same gitlab instance
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3065 >
2022-09-22 16:59:05 +00:00
Nirbheek Chauhan
f051ad2488
ci: Move image tags into a separate template yml
...
This will allow gst-plugins-rs documentation CI to include this
template via a remote include and doesn't need to manually update the
image. This causes cascading failures across all repos, for example
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/874
is required for making gst-plugins-rs CI pass in Cerbero, which is
also run on the gstreamer monorepo.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3065 >
2022-09-22 16:59:05 +00:00
Nirbheek Chauhan
57292bfe78
ci: Remove unused FEDORA_DOCS_IMAGE variable
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3061 >
2022-09-22 09:57:22 +05:30
Nirbheek Chauhan
46b3f48bdb
ci: Bump meson to 0.62.2 in Fedora docker images
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3061 >
2022-09-22 09:56:05 +05:30
Tim-Philipp Müller
1789b028b6
ci: bump image tags so subprojects get updated
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2507 >
2022-09-17 22:41:40 +00:00
Thibault Saunier
339e5916c6
Build documentation for rust plugins
...
- Update the docker image we use, starting using the standard one adding
`gtk4-doc` as required by rust plugins
- Update the plugins_doc_caches as required, some more plugins are built
with the new image
- Install ninja from pip as the version from F31 is too old
- Avoid buildings all GSreamer plugins when building the doc as it takes
time and resources for no good reason
- Stop linking to `GInstanceInitFunc` as it is not present in latest GLib
documentation, leading to warnings in hotdoc.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2954 >
2022-09-15 20:11:47 +00:00
Thibault Saunier
a5e8208c46
docs: Generate gst-plugins-rs documentation
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2954 >
2022-09-15 20:11:46 +00:00
Tim-Philipp Müller
034faeae31
subprojects: update openh264 wrap to v2.3.0
...
.. and use tarball instead of git checkout.
Also bump ci image tags so the images cache the new tarball.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2968 >
2022-09-02 18:41:32 +01:00
Jordan Petridis
21ac55bac2
docker/windows: Pass a couple installargs to python3
...
From these, only PrependPath isn't enabled by default,
but its nice to explicitly enable the ones we need anyway.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2933 >
2022-08-26 15:56:47 +00:00
Nirbheek Chauhan
19ebcd3955
build: Fix some compiler warnings by upgrading wraps
...
03d9f144cb
2913e72d85
c945c99fba
There's one more pygobject warning that will be fixed with this:
https://gitlab.gnome.org/GNOME/pygobject/-/merge_requests/210
Also bump the image versions to regen them.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2814 >
2022-07-31 16:28:25 +05:30
Jordan Petridis
d3dfdeaf47
windows/Dockerfile: replace ADD arguments with Invoke-WebRequest
...
Have the windows susbsystem handle the networking layer and avoid
layer invalidation until the strings/urls are changed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2812 >
2022-07-29 19:56:11 +00:00
Jordan Petridis
f3a324c1a5
ci: Update the windows image
...
Mainly to get newer meson
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2812 >
2022-07-29 19:56:11 +00:00
Nirbheek Chauhan
83081f8ea5
ci: Disable werror for documentation build
...
The documentation build is running on an ancient Fedora 30 image that
cannot be updated at present, and it's now triggering deprecation
warnings in system headers:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2568#note_1418956
Disable werror here, it's not actually useful.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2568 >
2022-06-10 06:01:41 +00:00
Xavier Claessens
ea990ff817
ci: Make sure to always update subprojects
...
The command was not run in Windows jobs, better keep subprojects
handling in a single script.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2509 >
2022-05-27 14:33:53 +00:00
Jordan Petridis
79cf6beeb6
ci: run gst-inspect after the build
...
useful to quick inspect the elements built, later on we can
start verifying the list of elements against a known good list.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2458 >
2022-05-20 14:54:16 +00:00
Jordan Petridis
78b80836ab
ci: run ninja install post build
...
Make sure no weird regressions creep in.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2458 >
2022-05-20 14:54:16 +00:00
Jordan Petridis
6adb7eb22c
ci: use LONGPATH for the windows container
...
Sometimes the CI might create paths that are bigger than the 260
character limit.
ex:
```
error: unable to create file subprojects/gst-integration-testsuites/testsuites/validate/h264/parse.trickmode_predicted.seek_trickmode_predicted/flow-expectations/log-parse-src-expected: Filename too long
```
https://docs.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2395 >
2022-05-18 09:14:08 +00:00
Jordan Petridis
5cd3f68842
ci: remove windows-rust jobs
...
These are moved now into gstreamer-rs repository.
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/701
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2395 >
2022-05-18 09:14:08 +00:00
Jordan Petridis
c861664356
ci: re-enable artifacts upload for the windows jobs
...
Hopefully the timeout issues won't affect the new runner
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2395 >
2022-05-18 09:14:08 +00:00
Jordan Petridis
02c277258b
ci: Install Media Foundations on the windows container
...
In order to do this, we need to switch to the Server container
image, instead of the ServerCore we were using till now.
This image also only has Server2022 base variants.
This is a continuation of:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1783
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2395 >
2022-05-18 09:14:08 +00:00
Jordan Petridis
f31afe465f
ci: set the code page of powershell to utf-8
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2397 >
2022-05-15 09:34:58 +00:00
Jordan Petridis
7865d1155d
ci: add gst-env.py to the changes rules
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2397 >
2022-05-15 09:34:58 +00:00
Jordan Petridis
fff82f5650
ci: remove unused files
...
These are leftovers of the gst-ci repo, before the mono repo
merge and can be removed now.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2403 >
2022-05-14 11:13:10 +00:00
Jordan Petridis
8870f59a07
ci: update/rebuild windows image
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2302 >
2022-05-05 21:33:43 +00:00
Jordan Petridis
1d627e29cd
ci: fix the windows-rust image builds
...
There was a rule gated on the project name which wasn't removed
once we moved to the monorepo and this job was silently broken
since.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2302 >
2022-05-05 21:33:43 +00:00
Andoni Morales Alastruey
f89dff303a
gstreamer-sharp: ensure a consitent code format
...
Use EditorConfig and dotnet-format to ensure a consistent
code style.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/983 >
2022-04-05 08:28:50 +00:00
Tim-Philipp Müller
5ba4fe690c
ci: Don't check indentation on post merge pipelines
...
We're probably safe to assume that it hasn't changed
since the MR pipeline last checked it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2063 >
2022-04-01 23:19:21 +00:00
Tim-Philipp Müller
b6f134f445
ci: stop automatically running tests post-merge
...
We did that in order to find flaky tests so we could add
them to our ignore lists, but that's all done now and I
doubt anyone still looks at the results, so this is just
wasting runner cycles at this point.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2063 >
2022-04-01 23:19:21 +00:00
Daniel Stone
d19dbfc1e3
ci: Don't tie up a full job slot for cerbero trigger
...
We don't have a huge amount of capacity on shared runners, so better if
we don't use that limited capacity on a job which sits there doing
~nothing.
There is a new runner class called 'placeholder-job' which accepts a
huge number of parallel jobs, separately to normal jobs, on the
assumption that they will consume ~no resources; start using that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2071 >
2022-03-30 12:53:22 +00:00
Thibault Saunier
761f26080a
python: Add a suppression file for a leak in PyGObject
...
And ensure that the CI runs GES valgrind test when we change the
overrides as many GES tests are implemented in python
Proper fix is at: https://gitlab.gnome.org/GNOME/pygobject/-/merge_requests/204
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2060 >
2022-03-29 19:16:58 +02:00
Xavier Claessens
69863131bd
Bump Meson requirement to >=0.60.0
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1934 >
2022-03-14 08:56:54 -04:00
Andoni Morales Alastruey
2b827948d5
windows: increase the timeout to create the windows docker image
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1912 >
2022-03-11 19:40:05 +00:00
Andoni Morales Alastruey
b76204bf7d
ci: force a new windows image to update cerbero's bootstrap
...
See:https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/743#note_1270646
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1912 >
2022-03-11 19:40:05 +00:00
Jordan Petridis
303d2a9ab7
Revert "ci: Disable windows jobs for now"
...
This reverts commit be2815a07a
.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1827 >
2022-03-02 06:17:35 +00:00
Jordan Petridis
be2815a07a
ci: Disable windows jobs for now
...
The runner is down and under maintainance.
2022-02-24 15:34:34 +02:00
Nirbheek Chauhan
023bb9c425
ci: Increase cerbero trigger timeout to 3h
...
All cerbero jobs explicitly override the default project timeout from
1h to 3h, so this should also be 3h. It is quite common for cerbero
trigger jobs to timeout due to slow download speeds from the artifact
server to FDO gitlab.
https://gitlab.freedesktop.org/heirecka/gstreamer/-/jobs/18803342
https://gitlab.freedesktop.org/gstreamer/cerbero/-/jobs/18803360
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1686 >
2022-02-15 04:58:13 +05:30