gstreamer/ci
Jordan Petridis 9c5523d529 ci: Make it easier to run the build scripts locally
* Move the exported PATH variables into a script so
we can source it in all the wrapper scripts.

* Add a guard to only copy over the cache when the
SUBPROJECTS_CACHE_DIR variable is set, which only
happens on CI by default

* Make it possible to run the scripts with default
values for some of the variables, like WERROR and MESON_ARGS.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7591>
2024-10-28 13:47:18 +00:00
..
docker ci/windows: Bump meson version to 1.5.2 2024-10-26 14:19:05 +03:00
fluster/visl_references/test_suites h264parse: Don't fake IDR without at least an i-slice 2024-10-02 20:33:13 +00:00
fuzzing fuzzing: correct typos in README.txt 2023-08-30 10:55:56 +00:00
gitlab ci: trigger_cerbero_pipeline: improve error in case of insufficient permissions 2024-04-12 18:01:28 +00:00
meson ci: Move the build cflags to a meson native file 2023-11-18 16:37:08 +00:00
scripts ci: Make it easier to run the build scripts locally 2024-10-28 13:47:18 +00:00
README.txt ci/README: basic instructions for running locally 2023-01-09 22:26:52 +00:00
run_retry.ps1 ci: Add scripts to retry windows builds on spurious errors 2024-10-23 14:38:20 +00:00

GStreamer Continuous Integration
================================

This repository contains all material relevant to the GStreamer
Continuous Integration system.

* Docker images

* Build scripts and code

Basic instructions for reproducing CI issues locally
====================================================

Note the URL of the image in the job logs, for instance:

```
Using docker image sha256:ac097589af0f486321adf7e512f2237c55533b9b08dabb49164a521a374d406d for registry.freedesktop.org/ocrete/gstreamer/amd64/fedora:2022-12-10.0-main with digest registry.freedesktop.org/ocrete/gstreamer/amd64/fedora@sha256:a2f7be944964a115ada2b3675c190bc9a094a5b35eba64a1ac38d52d55d13663
```

Pull the image:

```
docker pull registry.freedesktop.org/ocrete/gstreamer/amd64/fedora:2022-12-10.0-main
```

Run it:

```
docker run -it fedora:2022-12-10.0-main
```

At this point, you want to clone the relevant branch, eg if the issue occurs with main:

```
git clone https://gitlab.freedesktop.org/gstreamer/gstreamer.git
cd gstreamer
```

Adapt the above to your situation.

Now, export the relevant variables by observing the job logs and `.gitlab-ci.yml` at
he root of the GStreamer repository, then run the steps listed in the script section.