Commit graph

135 commits

Author SHA1 Message Date
Jordan Petridis
c43fc2d576 ci: Pin the windows jobs to gstreamer runners for now
There seem to be some seemingly random failures if the
jobs get scheduled on the other windows runners,
and they need to be debugged further.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1736>
2024-08-22 01:17:18 +00:00
Jordan Petridis
b9fcb99cd4 ci: Update the .cargo/config file
```
warning: `/builds/alatiera/gst-plugins-rs/.cargo/config` is deprecated in favor of `config.toml`
```

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1736>
2024-08-22 01:17:18 +00:00
Jordan Petridis
b4f22a52ff ci: Add a default retry policy for jobs
Automatically retry if it's a system failure or similar

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1736>
2024-08-22 01:17:18 +00:00
Jordan Petridis
5172e8e520 ci: Use the windows specific image tags
Followup to c5dfc87953

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1731>
2024-08-20 17:21:20 +03:00
Tim-Philipp Müller
0a4dc29efe ci: tag cerbero trigger job as placeholder job 2024-08-14 17:23:59 +01:00
Jordan Petridis
086281b03d ci: Update ci-template sha
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1721>
2024-08-14 18:23:48 +03:00
Tim-Philipp Müller
e21f341a03 ci: set cerbero trigger job timeout to 4h
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1716>
2024-08-13 20:34:17 +01:00
Jordan Petridis
3e97fef6ce ci: Generate html and cobertura coverage with a single command
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1709>
2024-08-13 06:41:17 +00:00
Sebastian Dröge
743ab29ba8 Update Cargo.lock and MSRV to 1.71
cea608-types requires that now because it updated the env_logger
dependency. As a result, we can also update it here now.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1622>
2024-06-18 10:27:27 +03:00
Matthew Waters
1e964233c6 ci: run tests with RUST_BACKTRACE=1
Produces backtraces which would allow some initial debugging on hard to
find issues.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1606>
2024-06-06 14:02:55 +00:00
Tamas Levai
fe3607bd14 net/quinn: Remove dependency locks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1565>
2024-05-09 16:45:38 +02:00
Sebastian Dröge
58106a42a9 quinn: Fix up dependencies 2024-05-02 09:59:55 +03:00
Tim-Philipp Müller
6b30266145 ci: tag linter and sanity check jobs as a "placeholder" jobs
They hardly use any resources and almost finish immediately.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1533>
2024-04-08 23:42:23 +00:00
Tim-Philipp Müller
c8180e714e ci: make sure version Cargo.toml matches version in meson.build
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1532>
2024-04-08 14:46:00 +01:00
Sebastian Dröge
0dd03da91f ci: Ignore env_logger for cargo-outdated
It requires Rust >= 1.71.
2024-03-29 11:03:04 +02:00
Nirbheek Chauhan
ae7c68dbf8 ci: Add a job to trigger a cerbero build, similar to the monorepo
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1513>
2024-03-23 23:02:27 +00:00
Sebastian Dröge
76b9836e52 ci: Ignore GTK4 plugin when building with --all-features
And run clippy also with default / no-default features.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1452>
2024-02-08 12:36:37 +02:00
Sebastian Dröge
885928ea17 ci: Run cargo update as part of the cargo deny / cargo outdated jobs 2023-11-10 08:55:31 +02:00
Sebastian Dröge
63edc84103 Add Cargo.lock to the repository
This makes sure that any broken dependency updates are not breaking our
build, at the cost of requiring us to update the lock file regularly.

See also https://blog.rust-lang.org/2023/08/29/committing-lockfiles.html

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1385>
2023-11-09 10:08:08 +02:00
Nirbheek Chauhan
895ee1d00b ci: Make meson warnings fatal
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1364>
2023-10-18 18:49:02 +05:30
Sebastian Dröge
85c46ede5b ci: Run cargo-deny on the whole workspace with all features enabled 2023-10-04 18:56:50 +03:00
Sebastian Dröge
d999c1d3ba ci: Directly use the CI images from gstreamer-rs
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1280>
2023-07-20 02:59:51 +03:00
Sebastian Dröge
2dc4ce5da5 ci: Remove omx=disabled from the documentation job 2023-07-17 09:45:21 +03:00
Guillaume Desmottes
3eca8c60e3 ci: check for typos
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1170>
2023-04-10 13:35:32 +02:00
Tim-Philipp Müller
0b5cf4e5fd ci: add check for symlinks
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1169>
2023-04-08 23:20:54 +01:00
Loïc Le Page
f17622a1e1 webrtc: Add gstwebrtc-api subproject in net/webrtc plugin
This subproject adds a high-level web API compatible with GStreamer
webrtcsrc and webrtcsink elements and the corresponding signaling
server. It allows a perfect bidirectional communication between HTML5
WebRTC API and native GStreamer.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/946>
2023-04-04 16:29:44 +02:00
Jordan Petridis
9a50f1f318 ci: Update debian jobs to bookworm
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1125>
2023-03-09 22:09:13 +02:00
Sebastian Dröge
93051dba0e ci: Update image version
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1096>
2023-02-20 13:08:51 +02:00
Nirbheek Chauhan
a3d405f670 meson: Add options for all plugins
Required a slight rework of the build file, and how options are passed
to cargo_wrapper.py

Necessitated a bump of the required gstreamer version to 1.20, which
should be fine for the meson build since its primary function is to be
built as part of the gstreamer monorepo build to get a dev env.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/1028>
2022-12-28 22:30:11 +05:30
Sebastian Dröge
e6fa7c0b2b ci: Disable gst-build job for now
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/262

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/998>
2022-12-03 18:21:19 +00:00
Tim-Philipp Müller
8d1c7cef3e ci: add trigger job and only run documentation job post-merge
- require manual trigger to run pipeline on branches and MRs
- require manual trigger to run pipeline post-merge (excl. docs)

https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/417

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/965>
2022-11-09 20:47:22 +02:00
Tim-Philipp Müller
cc8d84330c ci: add integration stage and move documentation job to that
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/965>
2022-11-09 20:37:43 +02:00
Sebastian Dröge
e87251c7d9 ci: Update to cargo-c 0.9.14 2022-11-05 16:26:23 +00:00
Sebastian Dröge
ba20fc735e ci: Only warn about unknown lints instead of denying 2022-11-01 11:27:01 +02:00
Thibault Saunier
5c89c3db69 webrtc: Rename and add to meson build the signalling server
The binary was only called `server` it has been renamed to
`gst-webrtc-signalling-server` and is installed in meson.
2022-10-20 18:20:15 +00:00
Tim-Philipp Müller
363de0c1c6 ci: make windows msrv job manual to reduce load on windows runners
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/417
2022-10-20 12:59:18 +00:00
Nirbheek Chauhan
86a19e3765 ci: Include image tag names from the main repo
Now we don't need to keep anything in sync manually.

Also fix the images_template.yml include while we're at it.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/875>
2022-09-23 01:54:06 +05:30
Nirbheek Chauhan
814f279eeb ci: Update fedora image to latest tag for new meson
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/874>
2022-09-22 17:18:59 +05:30
Thibault Saunier
21e1756168 docs: Remove cruft 2022-09-15 19:27:52 -03:00
Thibault Saunier
dfc11c545b ci: Build documentation with hotdoc to verify Since markers
We use GStreamer image to build the documentation as it is the simplest
way to ensure that we are testing against the same thing as GStreamer
itself.
2022-09-15 18:33:03 -03:00
Jordan Petridis
3f5020ec83 ci: have build jobs depend on either build-* or update-* jobs
followup to 23c07d3c

When we trigger an update pipeline, instead of build-jobs we
replace them update-* jobs. In order for gitlab to not complain
add both of the jobs in the needs array, but mark them as optional
so either of them can be used depending on the usecase.
2022-09-14 15:30:35 +03:00
Jordan Petridis
2bf5f0bf67 ci: combine windows build jobs
Instead of having a matrix of jobs, use a single job running
all the tests like the linux jobs do.

This helps with improved cache hits as most of the deps are shared
between the builds.
2022-09-12 16:35:56 +03:00
Jordan Petridis
23c07d3cb3 ci: declare the depencency between build jobs
This enables the pipeline to execute jobs asyncronously when
they are ready, regardless if the pipeline stage has finished.
2022-09-12 08:16:10 +00:00
Jordan Petridis
3313a93ff7 ci/linux: also build with --no-default-features
Close #240
2022-09-12 08:16:10 +00:00
Jordan Petridis
165f3a788b ci/windows: Build all the crates at once
In gst-rs we build each crate on its own, since not all
crates share the same features and some conflict with each other.

However currently, that isn't the case in plugins-rs and instead
we can be building all the crates with the same flags and simplify
the the script.

Close #241
2022-09-10 14:29:23 +03:00
Jordan Petridis
de3972a707 ci: Add visual studio/msvc builds
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/841>
2022-09-08 15:12:59 +03:00
Jordan Petridis
4616e3225c ci: allow jobs to be interrupted
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/841>
2022-09-08 12:55:18 +03:00
Sebastian Dröge
919b60bb6b ci: Update to cargo-c 0.9.12 2022-09-07 12:15:21 +03:00
Xavier Claessens
ef78498dc2 ci: Fix running gst-inspect inside devenv
There are 2 gst-inspect-1.0 executables, one in root builddir and
another one in subprojects/gstreamer/tools/. The latter does not link on
gst-full, meson devenv is supposed to set the former first in PATH, but
it seems to be flicky.
2022-09-06 11:53:15 -04:00
Sebastian Dröge
3924e2e563 ci: Fix up image tags 2022-09-04 23:20:31 +03:00