Jordan Petridis
d53dfcf94e
ci: use a custom powershell script to run windows tests
...
There are a couple things going on here.
First, we need to avoid building egl/wayalnd/x11 crates on windows
as they can't be built.
Then we need to avoid running -sys tests as they don't succeed
currently. See [1]
Finally use a matrix:parallel job to tests multiple build
configurations.
[1] https://github.com/gtk-rs/gtk3-rs/issues/54
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/701 >
2022-05-18 19:51:49 +03:00
Jordan Petridis
5e27da5a1c
ci: add an msvc 2017 test
...
Tests disabled for now, till some quirks are worked out.
Thi should be good enough to at least not break the build though.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/701 >
2022-05-18 19:51:49 +03:00
Thibault Saunier
56a46fc6fd
ci: Re-implement the gi-checker in python
...
To cleanup and ignore the gstreamer-utils crate
2022-05-11 10:14:54 -04:00
Jordan Petridis
b62d22852e
ci: cleanup the checkouts in the docker image after install
2022-05-10 10:11:47 +03:00
Sebastian Dröge
ba955a22bd
ci: Update image version for including a newer GStreamer build
2022-05-03 15:42:18 +03:00
Sebastian Dröge
c82aefd2a4
ci: Run coverage job on the stable image
2022-04-07 18:51:20 +03:00
Sebastian Dröge
680d4af732
ci: Update to Rust 1.60
2022-04-07 18:48:59 +03:00
Sebastian Dröge
d92e49a797
ci: Update image version
2022-04-06 09:39:25 +03:00
Vivienne Watermeier
1274a59472
video: update navigation API for recent changes
...
Add support for the new send_event_simple and event_get/set_coordinates
functions, as well as touchscreen events and modifier state. See:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1633
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2010
2022-04-05 19:49:05 +00:00
Sebastian Dröge
72027a6d60
ci: Update image version
2022-04-05 19:49:05 +00:00
Jordan Petridis
e6dc3f5b3e
ci: Patch the gtk4 build in the CI image so it builds
...
wayland-protocols 1.25 subproject fails to build on
debian 11, but in general switch subprojects to stable
branches.
Upstream MR:
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4580
2022-03-17 18:05:13 +02:00
Sebastian Dröge
a3b95d60ae
ci: Update to meson 0.61.3, GTK 4.6 branch and rebuild GStreamer
2022-03-15 15:46:11 +02:00
Sebastian Dröge
ab04715dc7
ci: Update to Rust 1.59
2022-02-24 19:41:19 +02:00
Sebastian Dröge
bf660cf22a
Update minimum supported Rust version to 1.57
2022-02-22 00:00:39 +02:00
Sebastian Dröge
70e95d4576
ci: Update to get GStreamer 1.20.0 release
2022-02-04 12:24:09 +02:00
Sebastian Dröge
23565c8723
ci: Update GStreamer version
2022-01-29 18:18:13 +02:00
Sebastian Dröge
a734f38ee6
ci: Update image to get newer GStreamer build
2022-01-25 13:20:58 +02:00
Sebastian Dröge
847e800269
ci: Update to meson 0.60.3
2022-01-13 23:13:32 +02:00
Sebastian Dröge
cf50295b73
ci: Update to Rust 1.58
2022-01-13 23:13:32 +02:00
Jordan Petridis
d245056e7b
ci: add gtk4 to the image
...
This is a prerequisite to porting the examples to gtk4
2022-01-11 18:26:34 +02:00
Sebastian Dröge
badec2252c
ci: Update to Rust 1.57
2021-12-02 17:51:19 +02:00
Sebastian Dröge
04a87085f6
ci: Update image to get new and fixed cargo-outdated 0.10.1 version
...
The previous version had some problems with acquiring the package cache.
2021-11-17 09:56:20 +02:00
Sebastian Dröge
41b1263061
ci: Update image to get newer GStreamer
2021-11-16 20:18:31 +02:00
Guillaume Desmottes
3cf2104726
switch back to official cargo-outdated
...
Latest release supports Rust 2021.
2021-11-10 07:42:48 +01:00
Sebastian Dröge
b4282c9444
ci: Update cargo-outdated to a branch with Rust edition 2021 support
2021-11-04 13:40:16 +02:00
Sebastian Dröge
c00a97f5ec
Update to Rust edition 2021 and minimum supported Rust version 1.56
...
Also update CI image to use meson 0.60.
2021-10-31 11:47:34 +02:00
Sebastian Dröge
4579fb006b
ci: Update to Rust 1.56 and meson 0.59.2
2021-10-22 22:04:45 +03:00
Guillaume Desmottes
fc49a0cfd8
ci: build some plugins
...
I'll need those for the tests of a new element I'm writting for
gst-plugins-rs.
2021-10-22 09:38:44 +02:00
Guillaume Desmottes
da61c19b69
ci: install gst from mono repo
2021-10-07 15:33:19 +02:00
Sebastian Dröge
514c18ad5a
ci: Update image with a newer GStreamer version
...
As preparation for updating the bindings to the latest 1.19 APIs.
2021-09-19 10:08:37 +03:00
Sebastian Dröge
4951fb8630
ci: Update stable image to Rust 1.55 and update to meson 0.59.1
2021-09-09 22:20:06 +03:00
Jordan Petridis
abfa75b334
ci: update base image to debian 11
...
also update the ci-template sha
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/836 >
2021-08-16 15:25:08 +00:00
Guillaume Gomez
38dfeb9b00
Update minimum supported rust version to 1.54
2021-07-30 20:26:11 +02:00
Sebastian Dröge
6ad0e9e0a0
ci: Update minimum supported Rust version to 1.53
...
One of our dependencies needs 1.53 now and we can't realistically
support older versions like this.
2021-07-26 10:29:06 +03:00
Sebastian Dröge
156dffd00e
ci: Update images to Rust 1.53, rustup 1.24.3, meson 0.58.1
2021-06-18 16:30:55 +03:00
Marijn Suijten
6e2cba928a
ci: Bump image version to rebuild images with master
GStreamer
2021-06-03 20:35:28 +02:00
Marijn Suijten
fc1716cd8a
ci/install-gst: Clone gst-build master branch
2021-06-03 20:35:28 +02:00
Guillaume Desmottes
1fa5028b90
ci: update Rust stable to 1.52
...
Looks like it's needed for the plugins:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/512
2021-05-17 09:41:55 +02:00
Marijn Suijten
d203745cfc
ci: Install rustdoc-stripper
in Nightly Rust image
...
This saves two build-jobs from performing the same (expensive!)
compilation+installation over and over again, when it is much cheaper to
cache it in the image instead.
2021-05-05 12:23:40 +02:00
Guillaume Desmottes
c3946eef7c
ci: generate cobertura report directly
...
grcov 0.8.0 now has cobertura support so we no longer need to to export
to lcov format and then convert.
Extract the summary from the generated html so the metric matches the
one from the html report (for some reason the cobertura ones are
differents).
The new gitlab summary parsing regexp is now:
<abbr .*>(\d+.\d+) %<\/abbr>
2021-04-23 12:28:54 +00:00
Guillaume Desmottes
ba0b9801e3
ci: use latest grcov release
...
0.8.0 now display a warning but no longer panic on the overflow issue.
2021-04-23 12:28:54 +00:00
Guillaume Desmottes
1b9c0482d1
ci: uses grcov 0.6.1
...
Newer versions suffer a regression breaking the job.
2021-04-16 09:02:36 +02:00
Sebastian Dröge
d69f8793d5
ci: Update minimum supported Rust version to 1.51
...
Various dependencies require that now for const generics.
2021-03-27 14:23:25 +02:00
Sebastian Dröge
c51a645ee2
ci: Update to Rust 1.51
2021-03-25 17:43:10 +02:00
Sebastian Dröge
e7e629e6e6
ci: Update to meson 0.57.1
2021-03-25 17:43:04 +02:00
Sebastian Dröge
e20ab8d80c
ci: Update to Rust 1.50 and meson 0.56.2
2021-02-11 17:36:40 +02:00
Guillaume Desmottes
01e1cfce54
ci: add coverage job
...
Uses the new llvm source-base coverage from nightly to generate coverage
reports:
- full html report as artifact
- cobertura report for gitlab MR integration
- output coverage summary for gitlab parsing
Here is the regexp to set in gitlab as "Test coverage parsing":
\s*lines\.*:\s*([\d\.]+%)
Ignore sys crates when calculating coverage are those are fully
generated anyway.
Resources:
- https://github.com/marco-c/rust-code-coverage-sample
- https://github.com/mozilla/grcov/issues/468#issuecomment-691615245
- https://www.greycastle.se/how-to-show-flutter-test-coverage-in-gitlab-ci/
2021-01-11 15:41:21 +01:00
Sebastian Dröge
2376f53fd4
ci: Update to Rust 1.49
...
Minimum supported version is still 1.48
2020-12-31 16:54:16 +02:00
Sebastian Dröge
94b5184c99
ci: Update to rustup 1.23
2020-11-27 17:33:10 +02:00
Sebastian Dröge
7db21a3375
ci: Update stable/minimum support Rust version to 1.48
2020-11-19 16:43:02 +02:00
Sebastian Dröge
773d92f9f5
ci: Store stable and minimum supported Rust version (MSRV) in template variables
...
And don't make the actual version numbers part of the jobs.
2020-11-05 16:55:29 +00:00
Sebastian Dröge
a3395062f1
ci: Build gstreamer from the 1.18 branch for now
...
git master has ABI changes in gst-plugins-bad.
2020-11-01 09:58:52 +02:00
Sebastian Dröge
b23fcd3904
ci: Update to meson 0.56.0
2020-11-01 09:58:52 +02:00
Sebastian Dröge
9c141a2fbf
ci: Explicitly select stable Rust version
...
And for now we stay at 1.46.0 because 1.47.0 has a bug that prevents
clippy from succeeding.
2020-11-01 09:58:52 +02:00
Sebastian Dröge
a540274c72
ci: Update minimum supported version to 1.41
...
Needed for gst-plugins-rs now because one dependency requires a newer
version now.
2020-09-09 09:25:15 +03:00
Sebastian Dröge
f1b4592d17
ci: Rebuild GStreamer to update to 1.18.0
2020-09-08 15:37:48 +03:00
Sebastian Dröge
82b469bc59
Update CI images for Rust 1.46 and GStreamer 1.17.90
...
And also update to meson 0.55.1 while we're at it.
2020-08-27 19:42:02 +03:00
Sebastian Dröge
6abad01d88
ci: Update GStreamer version
2020-08-11 09:07:30 +03:00
Sebastian Dröge
01397b213d
ci: set -e
in all shell scripts
...
Otherwise errors are silently ignored.
2020-07-28 09:46:21 +03:00
Sebastian Dröge
1d3df7eaa5
ci: Update CI image for Rust 1.25, rustup 1.22.1, meson 0.55 and switch to cargo-outdated release
2020-07-28 09:44:37 +03:00
Sebastian Dröge
052c056dd1
Update CI image to latest GStreamer git
...
And also update meson to 0.54.3
2020-07-05 23:09:01 +03:00
Guillaume Desmottes
4b553c3ae7
ci: check commit using ci-fairy
...
See https://freedesktop.pages.freedesktop.org/ci-templates/ci-fairy.html#checking-commits
In this setup it will check for any leftover fixup!/squash! commits and
that messages don't have the 'Signed-off-by:' tag.
2020-06-11 13:57:23 +00:00
Guillaume Desmottes
59cfdc5e1a
ci: rebuild to update GStreamer
...
Need the new audio and video formats APIs.
2020-06-09 09:26:31 +02:00
Guillaume Desmottes
cac9767167
ci: rebuild image to update to Rust 1.44.0
2020-06-05 10:07:01 +02:00
Guillaume Desmottes
737d998a54
ci: rebuild images to update gst
...
Will be needed to bind the new webrtc APIs.
2020-06-03 11:45:57 +02:00
Guillaume Desmottes
5775e531d9
ci: rebuild images to update gst
...
Will be needed to bind the new audio and video caps APIs.
2020-06-02 14:22:05 +02:00
Guillaume Desmottes
6cf5914e21
ci: rebuild images
...
This will update to latest Rust stable (1.43.1).
2020-05-08 09:14:07 +02:00
Vivia Nikolaidou
a0fa164b7b
Update ci gstreamer to master
2020-04-30 18:17:21 +03:00
Guillaume Desmottes
f28a92c46c
ci: update ci template
...
Prevent creating a second useless layer, see
https://gitlab.freedesktop.org/freedesktop/ci-templates/-/merge_requests/26
Update image tag to ensure building images is still working.
2020-04-28 16:08:56 +02:00
Guillaume Desmottes
fe30b4a388
ci: improve docker image layering
...
At the moment we are building 3 independent images, each one having a different
Rust version. This works perfectly fine but we can save storage space and
bandwith by making a smarter use of Docker's layering system.
Introducing a new 'base' image containing all the deps, including
GStreamer, acting as a base for the actual images.
As a result most of the actual content is now shared accross the same
Docker layer. This would save us from downloading/building all the deps
when updating images and will reduce storage and transfers for runners.
2020-04-28 15:25:48 +02:00
Guillaume Desmottes
2aa529fbdf
ci: remove cargo-audit
...
It's been replaced by cargo-deny in all modules.
Don't regenerate images for now, it's not a problem to keep it around
until the next images update round.
2020-04-28 11:40:14 +02:00
Guillaume Desmottes
d31a9fece4
ci: install cargo-audit
...
Not needed for gstreamer-rs as it uses 'cargo deny' but still used by
gst-plugins-rs and gstreamer-rs-sys.
2020-04-27 14:12:26 +02:00
Guillaume Desmottes
1567513e8a
ci: force images rebuild
...
No change, will be used to ensure that gst-plugins-rs images are
actually updated.
2020-04-27 12:41:47 +02:00
Guillaume Desmottes
e40e23b82c
ci: move image tags to its own file
...
Will be used by gst-plugins-rs to reference gstreamer-rs images as
bases.
2020-04-24 14:00:11 +02:00
Guillaume Desmottes
932d4720c0
ci: fix CARGO_HOME caching
...
CARGO_HOME's semantic depends on when it's used in the pipeline:
- it's the install prefix when installing Cargo
- it's the crate cache location when building jobs
env.sh is sourced at the start of all jobs and was overidding the
CARGO_HOME path defined in the CI template for caching. Fix this by
moving the prefix install path to install-rust.sh.
2020-04-21 09:35:33 +00:00
Sebastian Dröge
47d839e58a
Switch from cargo-audit to cargo-deny
...
This provides a superset of the features, including license checks.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/238
2020-04-16 12:12:45 +02:00
Guillaume Desmottes
99f91167af
ci: build GStreamer instead of importing tarball
...
Makes it much easier to update to a new gst version.
2020-04-16 09:47:15 +02:00
Guillaume Desmottes
429962bdd7
ci: use fdo ci template
...
Build our own images instead of manually installing everything we need
for each job. This should hopefully speed up our ci and make it more
robust.
2020-04-16 09:46:57 +02:00