Nirbheek Chauhan
ab85826498
ci: Eliminate MSYS from the windows docker image
...
We require MSYS2 now
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5043 >
2023-07-17 05:52:24 +00:00
Nirbheek Chauhan
038a8c5308
ci: Speed up windows image builds a bit
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5043 >
2023-07-17 05:52:24 +00:00
Nirbheek Chauhan
df57fffed7
ci: Reduce the size of the windows image a bit
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4939 >
2023-07-07 09:46:19 +05:30
Nirbheek Chauhan
1ddec0d361
ci: Installing wixtoolset can take a long time, bump the timeout
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4939 >
2023-07-07 09:46:19 +05:30
Nirbheek Chauhan
0b26ca0c6e
ci: Update to VS 2022 Build Tools
...
We need the Windows 11 SDK for Windows Graphics Capture API support,
which will be enabled at runtime based on feature availability on
Windows, so should work correctly on Windows 8, 8.1, 10, and 11.
However, if we enable it in the VS 2019 installer, it will install
both Windows 10 SDK (required) and Windows 11 SDK (optional), which
will bloat the image by 3GB or more.
So just move to VS 2022 for the Windows images, which requires only
the Windows 11 SDK.
Had to remove the UWP build tools because they were causing the
installation to fail, likely due to an installer bug. We don't need
UWP anymore anyway. We just need the ARM64 build tools for the
cross-arm64 monorepo build.
Also stop installing into C:\BuildTools and let Meson pick the install
up with --vsenv.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4939 >
2023-07-07 09:46:19 +05:30
Andoni Morales Alastruey
2769986ca9
ci: update meson to 1.1.1 in the CI image
...
co-authored-by: Jordan Petridis <jordan@centricular.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3846 >
2023-06-12 13:57:05 +00:00
Sebastian Dröge
a7dd69f371
ci: Update to Rust 1.70
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4758 >
2023-06-06 07:35:22 +00:00
Jordan Petridis
8e9db20a3b
windows/Dockerfile: Pin python to 3.11.2
...
Version 3.11.3+ and 3.12 change the way subprocess with shell=True
works to no longer use the PATH but instead rely on %ComSpec% or
%SystemRoot% which are currently not present in the cerbero env.
51b079a2d6
Pin to 3.11.2 until we fix cerbero.
https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/427
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4468 >
2023-04-26 01:38:19 +00:00
Sebastian Dröge
dd78aa053b
ci: Update to Rust 1.69
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4468 >
2023-04-26 01:38:19 +00:00
Jordan Petridis
4e8d0b766c
ci: Add rust in the windows base image
...
This is preperation for gstreamer/gstreamer!3889
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4327 >
2023-04-03 18:48:55 +00:00
Stéphane Cerveau
bf903a05f4
ci: add wixtoolset to windows image
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4157 >
2023-03-14 09:37:21 +00:00
Jordan Petridis
797e94eb6d
ci: prepare_cerbero_env: Use predictable git clone path
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4063 >
2023-02-24 15:53:23 +02:00
Nirbheek Chauhan
e2a8aac2b0
ci/windows: Remove cargo-vendor sources from the cerbero source cache
...
Copying the source cache to a running Cerbero CI job on Windows causes
strange / corrupted errors that talk about hard links like:
++ cp -a C:/cerbero/cerbero-sources .
cp: will not create hard link `./cerbero-sources/gstreamer-1.0/subprojects/gst-plugins-good/sys/osxaudio' to directory `./cerbero-sources/cargo-c-0.9.12/cargo-vendor/adler/benches'
[...]
So, delete it. The vendored sources are cached by cargo in its own
cache inside CARGO_HOME, which is build/rust/cargo/ and is preserved
in the image. We won't need to redownload any of this.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3805 >
2023-01-26 16:03:58 +00:00
Nirbheek Chauhan
895290f411
ci: Bootstrap with visualstudio variant enabled
...
visualstudio variant now pulls in more build-tools deps on top of
mingw since it enables the rust variant by default. It's also the
variant that's tested on Cerbero CI.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2507 >
2022-09-17 22:41:40 +00: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
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
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
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
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
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
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
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
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
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