Work around Meson issues if this env var contains characters that
cannot be represented in the active code page (e.g. CP1252).
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 865: character maps to <undefined>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8747>
They're not privileged so won't work anymore.
Using kvm tag for now as per discussion on IRC,
until a better solution comes along in future.
Keep placeholder-job tag on trigger job and
pre-commit checks jobs.
Add kvm tag to fluster job.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8677>
It's not used by anything in the monorepo, only used when
rebuilding the gstreamer-rs image (used by gst-plugins-rs
where the gtk4 plugin lives).
Doesn't make sense to build all of gtk4 on every CI run that
touches the relevant files just to make sure it still works
for the image rebuild, and it's a problem for users with long
filenames (such as `gstreamer-backport-bot`) where the pipeline
will simply not pass because the gtk glib-mkenums command line
length exceeds 32767 characters.
Better to set up a scheduled pipeline for that.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8636>
This reverts commit dcd11f0a104964f7fc02c38104ed57fd0aa794a2.
In dcd11f0a104964f7fc02c38104ed57fd0aa794a2 we started making use
of gitlab's changes:compare_to in hopes of addressing #3780
However compare_to seems to have different behavior based on:
* The type of the branch
* If the repo is a fork or not
* If the pipeline is a branch or MR pipeline
* If the commit is force pushed or not
* If the pipeline is associated with a "push" event,
* Manual and scheduled pipelines are not.
If we leave compare_to underfined and to its default value,
it causes issues with branch pipelines, as:
* If you push a new branch, it doesn't have anything to compare
against and changes: either will trigger or not, depending on the
gitlab version
* If you push to an existing branch, it only compares against the
previous commit.
* if you force push to a branch, it doesn't work at all it seems. [1]
Thankfully for merge request pipelines, it always seems to compare
against the Merge Request Target tree. But also if there is a Merge
Request open, and the value of compare_to isn't defined (say if it's a
force push or it's the first branch pipeline of the branch) it will
fallback to using the tree from the Merge Request Target, making it even
more confusing.
But if we try to overide it to fix the behavior for branches, we end up
breaking merge request. There seems to be a bug in gitlab (unclear if
its intended or not) where if you have access to the upstream
repository, gitlab will compaee_to against that in the MR pipeleine, but
otherwise it will try to compare against your fork's branch which will
certainly be outdated. Additionally it didn't seem to error out if the
branch specified doesn't exist only in one of the two places so its very
hard to reverse engineer the behavior.
[1] https://gitlab.com/gitlab-org/gitlab/-/issues/349694
Long story short, this is way more complicated than its worth, and has
caused a lot of issues since it was introduced. Revert the change and
try again another time.
Related https://gitlab.com/gitlab-org/gitlab/-/issues/389808Close#3965
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8563>
This is mostly done to remove the hardcoded HOME
env var that ci-templates appends to the image. See [1]
[1] https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2433#note_2243222
But it also allows us to add extra things useful for local
development to it, as long they don't interfere with the
build enviornment.
This also means we can switch the build image to be based
on top of the normal fedora one rather than toolbox,
so it will no longer advertise the toolbox compatible labels
since it was buggy anyway.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7455>
The gstreamer-rs CI needs to build gtk to test the gtk4 plugin in
gst-plugins-rs. Formalize support for gtk in the monorepo, and disable
it by default because it's not an important dependency; unlike
libnice.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7372>
This dehardcodes the builddir the scripts use, and allows
us to pass it as a cli argument.
It also allows us to pass the test stuite string as an
arg for test.sh
This makes the scripts a bit more usable for local development
as well.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7114>
Add pitch tests with different forward and backward playback rates.
Those tests depend on the libSoundTouch version to validate the buffers
checksums. The actual version uses libSoundTouch 2.3.2, use the
`--force-fallback-for=soundtouch` meson option to build using the same
version.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6247>
The gstreamer-rs repos use debian based images already,
which we can later base on this one. Additionally it's
good to have another distro target so we avoid weird
fedoraisms when possible.
It will also be simpler to keep it up to date, as we
don't need to run the test suite against this build as
well.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6656>
In certain cases, the validate runner will try to get a stacktrace
from gdb, which will currently complain about loading the .gdbinit
file.
warning: File "/builds/gstreamer/gstreamer/.gdbinit" auto-loading
has been declined by your `auto-load safe-path' set to
"$debugdir:$datadir/auto-load".
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5769>