Commit graph

138 commits

Author SHA1 Message Date
Nirbheek Chauhan
885d4b84a5 ci: Fix project URL when triggering cerbero pipelines
When merge request pipelines are triggered on the gstreamer namespace,
CI_PROJECT_URL will be gitlab.[...]/gstreamer/gstreamer but we need to
use gitlab.[...]/$USER/gstreamer because that's where the source
branch is located.

This exhibits as cerbero pipelines failing because it can't find the
specified branch:

https://gitlab.freedesktop.org/gstreamer/cerbero/-/pipelines/639379

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2761>
2022-07-16 06:16:17 +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
12442748aa ci: use the correct vs toolcahin version for cerbero
This seems to be a leftover from when we upgraded from vs15
to vs16.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2395>
2022-05-18 09:14:08 +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
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
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
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
Thibault Saunier
956270f3ab ci: Trigger cerbero on user project if a branch with the same name exists there
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2264>
2022-04-21 12:50:43 -04:00
Matthew Waters
bd5d24822a build/fuzzing: integrate fuzz targets into the build system
Currently disabled but may be enabled later.

Updates the existing fuzzing to use shared libraries as that's easier
for meson to deal with if there is a mix of static and shared libraries
on the system.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2123>
2022-04-07 08:17:35 +10: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
Matthew Waters
f0e5c8e0f2 ci/fuzzing: update glib version to 2.72.0
Fixes an issue where on configure, glib's internal gnulib was tripping
up the undefined behaviour sanitizer with a divide by 0.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1976>
2022-03-18 18:35:05 +11:00
Matthew Waters
03ff52ee69 ci/fuzzling: fix oss-fuzz build
gst-plugins-base doesn't have a cairo option anymore.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1975>
2022-03-18 13:16:42 +11: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
Tim-Philipp Müller
e3ae87a648 ci: remove jenkins files which are no longer used
Fixes #1031

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1763>
2022-02-22 10:49:49 +00:00
Nirbheek Chauhan
a10bcd1671 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-05 09:21:48 +05:30
Nirbheek Chauhan
66933d1f05 ci: Add a variable to identify triggered cerbero pipelines
This commit is required for proper functioning of the following
cerbero merge request: https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/800

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1638>
2022-02-04 20:19:57 +05:30
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
Nirbheek Chauhan
72bd408c39 ci: Remove windows-sdk-8.1 from docker image
We don't need this, we use the Windows 10 SDK provided by Visual
Studio Build Tools.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1570>
2022-01-28 02:01:39 +05:30
Jordan Petridis
b0370cdf00 ci: replace license notice
This file was copied from microsoft documentation [1]
and its header was refering to the license on that repo.

This change was lost during gstreamer/gstreamer!1000

[1] 9ec230dfd4/LICENSE-CODE

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1487>
2022-01-03 12:43:15 +02: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
Matthew Waters
fdb16cddb1 ci/fuzzing: update for mono repo
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1253>
2021-10-26 14:09:24 +00:00
Mathieu Duponchelle
8d7dde2587 ci: fix plugins cache diffs directory
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/867>
2021-10-18 22:34:11 +00: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
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
Xavier Claessens
d4296b7d3d trigger_cerbero_pipeline.py: Do not hardcode gitlab instance
When GStreamer is forked into a private GitLab instance we should
trigger cerbero into that private instance too. Otherwise the token
won't be accepted.

Also do not hardcode the cerbero project ID because it is instance
specific.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1056>
2021-10-06 09:04:30 +00: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
Xavier Claessens
bc40073836 ci: Fix subprojects caching in Windows image
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/931>
2021-10-05 23:44:03 +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
Xavier Claessens
c4e14ef426 handle-subprojects-cache.py: Fix shebang 2021-10-04 20:00:40 -04:00
Jordan Petridis
e7ef042400 ci: Rebuild windows image
Get updates and newer ca-certificates in.

Also update the way we install chocolatey

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1002>
2021-10-01 14:53:53 +03:00
Thibault Saunier
9270f072cc ci:doc: Rewrite script to import doc on fdo ensuring the right job is used
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/999>
2021-09-30 20:05:00 +00:00
Thibault Saunier
a619f2cedf docs: Always build documentation on gstreamer/gstreamer main branch
So artifacts can the be imported on gst.fd.o.

And update the importation script accordingly

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/952>
2021-09-29 16:40:00 +00:00
Thibault Saunier
37d7e9a22d ci: Wait for cerbero pipeline to finish
So we are sure the pipeline is marked as failed if the cerbero sub pipeline fails

See https://gitlab.com/gitlab-org/gitlab/-/issues/341737 for details

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/946>
2021-09-28 10:58:25 -03:00
Thibault Saunier
c6b9c81fdd ci: Remove now useless .gitlab-ci.yml files
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>
2021-09-24 16:21:18 -03:00
Thibault Saunier
091946a478 ci: Port CI to the new monorepo
Main differences with previous setup are:
- No manifest creation
- gst-indent is executed only when the bot is assigned (instead of the manifest task)
- Cerbero jobs are triggered in the cerbero repo
- Remove cerbero and android related files as they now are in cerbero
  itself.
- Update `container.ps1` to the new file layout

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/891>
2021-09-24 16:21:18 -03:00