Nirbheek Chauhan
4a4b87372c
ci: Fix documentation build on CI for 1.20 branch
...
Due to some interaction between the latest meson version and the
subproject cache on the image, the build fails:
File "/usr/local/lib/python3.7/site-packages/mesonbuild/mesonmain.py", line 153, in run
return options.run_func(options)
File "/usr/local/lib/python3.7/site-packages/mesonbuild/msubprojects.py", line 679, in run
results = loop.run_until_complete(asyncio.gather(*tasks))
File "/usr/lib64/python3.7/asyncio/base_events.py", line 587, in run_until_complete
return future.result()
File "/usr/lib64/python3.7/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.7/site-packages/mesonbuild/msubprojects.py", line 126, in run
result = self.run_method()
File "/usr/local/lib/python3.7/site-packages/mesonbuild/msubprojects.py", line 411, in update
self.wrap.update_hash_cache(self.wrap_resolver.dirname)
File "/usr/local/lib/python3.7/site-packages/mesonbuild/wrap/wrap.py", line 228, in update_hash_cache
with open(self.get_hashfile(subproject_directory), 'w', encoding='utf-8') as file:
FileNotFoundError: [Errno 2] No such file or directory: './subprojects/pango-1.48.11/.meson-subproject-wrap-hash.txt'
https://gitlab.freedesktop.org/tpm/gstreamer/-/jobs/29467932
The error is in a different wrap each time. Restricting the meson
version to an older one fixes it, which is fine for a stable branch.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3139 >
2022-10-07 19:47:19 +05:30
Nirbheek Chauhan
0d49446f8c
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/2821 >
2022-07-31 14:32:41 +01:00
Jordan Petridis
ef8c9b195b
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/2808 >
2022-07-30 13:10:19 +00:00
Jordan Petridis
1caecb8685
ci: Update the windows image
...
Mainly to get newer meson
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2808 >
2022-07-30 13:10:19 +00:00
Xavier Claessens
51a1ae44ff
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/2808 >
2022-07-30 13:10:19 +00:00
Jordan Petridis
6ba2212c64
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/2808 >
2022-07-30 13:10:19 +00:00
Jordan Petridis
4219365756
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/2808 >
2022-07-30 13:10:19 +00:00
Jordan Petridis
bb9962823a
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/2808 >
2022-07-30 13:10:19 +00:00
Jordan Petridis
758492bb4d
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/2808 >
2022-07-30 13:10:19 +00:00
Tim-Philipp Müller
fa74785d27
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/2106 >
2022-04-02 00:47:22 +00:00
Tim-Philipp Müller
54fb9ee553
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/2106 >
2022-04-02 00:47:22 +00:00
Daniel Stone
71f524be33
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/2083 >
2022-03-31 16:13:48 +01:00
Nirbheek Chauhan
492fa162cf
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/1720 >
2022-02-16 03:58:02 +00:00
Tim-Philipp Müller
61a7bffabf
ci: use 1.20 as upstream branch
2022-02-07 16:22:25 +00:00
Nirbheek Chauhan
59115b5241
ci: Trigger all jobs on gitlab CI script changes
...
Also fix typo in trigger variable that was causing triggered cerbero
pipelines to run deps builds and upload cache.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1641 >
2022-02-07 16:22:25 +00:00
Nirbheek Chauhan
673b742751
ci: Add a Windows native cross-arm64 job with a new image
...
Needed an update to the windows Dockerfile to:
1. Install the 'UniversalBuildTools' workload for Cerbero
2. Install ARM and ARM64 workloads for cross-uwp-universal in Cerbero
3. Install VS 2019 since we need that for ARM64 NEON support in Opus
We can't test UWP in gstreamer.git because glib needs custom patches
for that. It will be tested in Cerbero.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1570 >
2022-01-28 02:01:39 +05:30
Tim-Philipp Müller
8557f10acf
ci: run fedora amd64 docker jobs on packet runners
...
Which have much better network connectivity to fdo gitlab.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1420 >
2021-12-06 17:36:26 +00:00
Nicolas Dufresne
06f1dfc724
ci: fedora-docker: Cache media files
...
As of now all integration tests endup fetching 600MB of media every run. This
will increase the docker side, but this is to the traceof that the docker
image will quickly be cached on all runners.
Fixes #841
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1413 >
2021-12-06 12:18:25 +00:00
Jordan Petridis
eb33309050
ci: Avoid fetching tags for build jobs
...
Avoid fetching tags since we don't need them for builds.
Only caveat might be what happens when a pipeline from
a tag is triggered
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1400 >
2021-11-30 17:01:52 +02:00
Jordan Petridis
1ffa79d1aa
ci: Looks like we where not triggering pipelines for tags
...
Oops.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1400 >
2021-11-30 17:01:52 +02:00
Jordan Petridis
98cd5f9b8b
ci: Set GIT_DEPTH variable
...
This switches gitlab-runner to using shallow clones
related #841
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1400 >
2021-11-30 17:01:52 +02:00
Marc-André Lureau
836fb53351
ci: fix minor comment typo
...
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1371 >
2021-11-22 12:46:15 +04:00
Nicolas Dufresne
d692393619
ci: Do not clone in the trigger job
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1298 >
2021-11-02 22:10:42 +00:00
Stéphane Cerveau
47a4c74e9b
ci: gstreamer-full: remove static build
...
The gstreamer-full jobs act as
static builds, no need to perform it twice.
gstreamer-full-minimal can be nodebug.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1215 >
2021-10-21 13:10:36 +00:00
Thibault Saunier
ba34f6a113
Revert "ci: Split base and core valgrind on different runners"
...
Those job are not the ones that take most time in normal run (they
where when running with --n-runs) and that leads to using more runners
which might be a problem at this point.
This reverts commit 4ad22b05a1
.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1212 >
2021-10-20 22:35:27 +00:00
Stéphane Cerveau
58caa8af62
ci: gstreamer-full: reenable build
...
The gstreamer-full job should be run
during the integrate stage always.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1190 >
2021-10-19 18:26:03 +00:00
Tim-Philipp Müller
9bd8c45db0
ci: install newer meson via pip in documentation job
...
Since updating the existing image seems difficult and efforts
to redo the setup are still work in progress.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1084 >
2021-10-18 18:03:19 +01:00
Tim-Philipp Müller
d4bdbeaa0d
meson: add 'gpl' option and only build plugins with (A)GPL deps if explicitly enabled
...
Require explicit opt-in to build plugins with (A)GPL dependencies.
Keep ugly/bad options on 'auto' for now so cerbero doesn't fail.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1084 >
2021-10-18 18:03:19 +01:00
Thibault Saunier
e73fc26cf6
ci: Build introspection support on static builds
...
But disable python in GES as it is not supported on static builds
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 20:27:35 -03:00
Thibault Saunier
64462f627b
ci: Move rules from .build fedora x86_64
to .build
...
They should apply to all job that extend it as the 2 jobs that depend on
`.build` but not on `.build fedora x86_64` is
`build nodebug fedora x86_64` which pulls `build static nodebug fedora x86_64`
both jobs should be manual on `main` and they should run only if some
files "modules_changes" happened
Also make sure we do no automatically run job on `main` branches from forks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1141 >
2021-10-14 13:42:21 +00:00
Thibault Saunier
eb839a8423
ci: Fix ordering of rules to always build on main
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1141 >
2021-10-14 13:42:21 +00:00
Thibault Saunier
42501adc4c
ci: Check for closed bugs for unit tests too
...
And add FIXMEs for test that should have been reenabled but haven't,
we will reenable them when CI is stable enough!
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1121 >
2021-10-14 12:59:29 +00:00
Andoni Morales Alastruey
4be5c7ce0a
Fix GStreamer msys2 builds in the CI
...
Install ninja and the toolchain in the docker image.
Use the UCRT64 environment for building
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1000 >
2021-10-14 10:13:51 +00:00
Andoni Morales Alastruey
a1e332bf7e
ci: prepare the Windows image for MSYS2 cerbero builds
...
* Install MSYS2 and VS with choco
* Install Windows SDK 8.1 requied for libvpx
* Improve build time of the windows image using as much RUN layers as
possible
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1000 >
2021-10-14 10:13:51 +00:00
Thibault Saunier
4c046c9e8a
ci: Run tests post merge
...
This will make tracking new races much easier
Mark other jobs as manual when pipeline is running on master
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1129 >
2021-10-13 18:40:51 +00:00
Jordan Petridis
89540bd528
ci: have the fedora docker build depend on the trigger job
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1120 >
2021-10-12 23:35:20 +00:00
Thibault Saunier
4ad22b05a1
ci: Split base and core valgrind on different runners
...
Those are very slow compared to other jobs and it should mitigate the problem
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1113 >
2021-10-12 16:59:16 +00:00
Jordan Petridis
c26d840f65
ci: remove outdated rule for gstreamer-full-minimal
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1065 >
2021-10-10 15:01:37 +00:00
Jordan Petridis
cfe2bf8239
ci: update rules that pointed to gst-ci subproject
...
The files are now moved into ci/ at the root of the repo.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1065 >
2021-10-10 15:01:37 +00:00
Thibault Saunier
ce76a286ed
validate:launcher: Sync asset only when passing --sync
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1020 >
2021-10-06 17:00:54 +00:00
Xavier Claessens
d189b0d0ec
ci: Fix typo in cerbero trigger
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1056 >
2021-10-06 09:04:30 +00:00
Jordan Petridis
c50a35da2b
ci: remove duplicate stage key in documentation job
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/931 >
2021-10-05 23:54:13 +03:00
Xavier Claessens
cdbb3e6ba4
ci: Remove "check allow-edit" job because gitlab does it by default
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/931 >
2021-10-05 23:54:13 +03:00
Xavier Claessens
275c540984
ci: Update fedora image for cerbero trigger
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/931 >
2021-10-05 23:54:13 +03:00
Jordan Petridis
66066ffa03
ci/docker/fedora: update rustc and meson versions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/931 >
2021-10-05 23:44:03 +03:00
Jordan Petridis
67c8e634e0
ci: port to fd.o citemplates
...
https://gitlab.freedesktop.org/freedesktop/ci-templates
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/931 >
2021-10-05 23:44:03 +03:00
Jordan Petridis
bfbffc73ab
ci: remove duplicate keys
...
They are redefined/copied just below
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/931 >
2021-10-05 23:14:56 +03:00
Nicolas Dufresne
8f39de3283
ci: Add a dummy trigger job/stage
...
This is to avoid triggering docker images for no reason, and bring back
running gst-indent always.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1054 >
2021-10-05 17:22:57 +00:00
Nicolas Dufresne
88ceb249be
ci: Document the difference between the two doc jobs
...
Naming is hard, so I opted for a small comment to explain this one.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1054 >
2021-10-05 17:22:57 +00:00
Jordan Petridis
0f77939714
ci: Rework workflow rules to prevent duplicate pipelines
...
Currently gitlab spawns 2 pipelines, one for the branch and
another for the merge request.
Update our rules so that only one of them is spawned depending
on the situation.
https://docs.gitlab.com/ee/ci/yaml/index.html#switch-between-branch-pipelines-and-merge-request-pipelines
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/958 >
2021-10-05 11:49:01 +00:00