Nirbheek Chauhan
6208a61946
cerbero ci: Add hacks for build tools
...
Instead of putting a hammer-like symlink to ../../gstreamer/cerbero,
do recipe-specific relocation hacks. Fixes random errors like:
```
++ ln -sf /builds/nirbheek/cerbero ../../gstreamer/cerbero
ln: ../../gstreamer/cerbero/cerbero: cannot overwrite directory
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/350 >
2020-09-23 12:50:16 +05:30
Nirbheek Chauhan
98e3c7d8b8
cerbero ci: Refactor cerbero_before_script
...
We were doing a few things suboptimally:
1. Making a symlink from the current directory to
../../gstreamer/cerbero so that build-tools kept working, which
should not be necessary since cerbero relocates all binaries inside
the cerbero homedir after extracting the cache.
2. Hard-coding the cerbero builddir when building on Windows because
`pwd` was outputting an MSYS-style path which Python can't read
3. rsync-ing all the contents of $CERBERO_HOST_DIR, which is
bad because we should be building on top of the artifact cache.
The only thing we want from $CERBERO_HOST_DIR is cerbero-sources
(the network cache), and we can setup the toolchain during
bootstrap with the new --system and --toolchains arguments which
were split out of --system-only.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/350 >
2020-09-22 21:58:59 +05:30
Nirbheek Chauhan
ef981bafc9
cerbero ci: Actually use the new cerbero_setup.sh script
...
Revert after merging.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/350 >
2020-09-22 18:41:39 +05:30
Nirbheek Chauhan
0c7275212a
manifest: Check all deps logs when picking cerbero commit
...
Instead of picking the 'slowest build', look at all the deps logs and
pick the commit that is mentioned in the maximum number of deps logs.
In practice, this will either be the newest commit or the previous
commit. If it's not the newest commit, we will warn and use an older
one.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/349 >
2020-09-22 16:59:48 +05:30
Jordan Petridis
386e40c22e
citemplate: set PYTHONFAULTHANDLER for tests
...
In case python segfaults, which might happen for things with
a C-FFI like pygobject, make it so we get a proper backtrace.
https://docs.python.org/3/using/cmdline.html#envvar-PYTHONFAULTHANDLER
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/341 >
2020-09-22 08:15:19 +00:00
Nicolas Dufresne
dec76861ea
manifest: Fix URL for cerbero deps log
...
There was a missing 'f' prefix, so the {branch} was not expanded.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/348 >
2020-09-21 11:57:59 -04:00
Nicolas Dufresne
808fc283f3
manifest: Build useful error message
...
This helps detecting issue with optional steps like cerbero deps
lookup.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/348 >
2020-09-21 11:57:26 -04:00
Nirbheek Chauhan
705e375893
Revert "cerbero ci: Also disable the deps build"
...
This reverts commit 555c49f9d1
.
The job is working fine now and takes slightly more time than the iOS
build, so it can be re-enabled.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/347 >
2020-09-21 19:33:17 +05:30
Nirbheek Chauhan
eed018920c
cerbero ci: Sprinkle some 'time' commands in the script
...
Sprinkle some 'time' commands so we can measure how long things take
and we can know where to spend time optimizing first.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/346 >
2020-09-19 12:00:15 +05:30
Nirbheek Chauhan
01c53ebf02
ci: Switch cerbero script URL back to gst-ci master
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/345 >
2020-09-18 01:44:26 +05:30
Nirbheek Chauhan
555c49f9d1
cerbero ci: Also disable the deps build
...
There seems to be some issues uploading the cache from the Windows
runner.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/344 >
2020-09-18 00:02:27 +05:30
Nirbheek Chauhan
dab27ee564
cerbero ci: Try to fix deps build on the gstreamer namespace
...
Can't ln twice: it does a cp on MSYS.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/344 >
2020-09-17 23:23:02 +05:30
Nirbheek Chauhan
f24e7b721a
cerbero ci: Don't expand the ssh private key
...
Because of set -x we were printing the key into the CI logs:
https://gitlab.freedesktop.org/gstreamer/cerbero/-/jobs/4572836#L797
Don't ever expand the variable in shell.
2020-09-17 23:18:30 +05:30
Nirbheek Chauhan
bdbec90a49
Switch MSVC job to manual till we can upload deps cache
...
The deps cache job is failing:
https://gitlab.freedesktop.org/gstreamer/cerbero/-/jobs/4568410
Because of which MRs in other repos are unable to download the cache
and are building everything from scratch, which is inflating CI times
to 2 hours:
https://gitlab.freedesktop.org/marian/gst-plugins-bad/-/jobs/4567025
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/343 >
2020-09-17 16:58:07 +05:30
Jordan Petridis
260935e39e
citemplate: post-merge fix for url path
...
switch it so it looks at the stable branch for the cerbero_setup
script.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/342 >
2020-09-17 02:14:55 +03:00
Jordan Petridis
b857a5ada1
citemplate: add initial cerbero msvc builds
...
This commit adds the last bits needed to have a working
CI job of cerbero using mingw and msvc17 toolchain.
It adds a new stage to the docker image that mirrors
the setup of the cerbero fedora docker build, and
tweaks the cerbero_setup script run by jobs with
a couple windows specific fixes.
Close #39
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/334 >
2020-09-16 20:56:14 +03:00
Jordan Petridis
6ffc323ff5
gitlab/cerbero_setup.sh: refactor some tests to if/else statments
...
and replace the ccache check
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/329 >
2020-09-15 16:42:58 +00:00
Jordan Petridis
7d46f1ac5e
ci_template: move the cerbero scripts from yaml to a new file
...
Its hard to manage ever growing bash scripts in yaml, and
its even harder to run them locally to reproduce the environment.
This is essentially a copy-paste of the scripts, to make review
easier. We can refactor later.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/329 >
2020-09-15 16:42:58 +00:00
Jordan Petridis
050aec524b
citemplate: workaround stale subproject cache
...
The revision of the wrap for pygobject was switched recently [1]
[1]: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/189
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/339 >
2020-09-15 17:24:32 +03:00
Jordan Petridis
fd7b78a918
docker/fedora: install more debug symbols
...
These are needed for the webrtcbin tests
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/339 >
2020-09-15 16:24:51 +03:00
Jordan Petridis
0f50f3901e
cerbero/fedora: install which into the image
...
We used to get this as transient dependency it seems,
which broke rebuilds of the img once w/e pkg was
depending on it, stopped.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/338 >
2020-09-10 01:01:30 +03:00
Jordan Petridis
58df3e6f58
citemplate: update the buildah bootstrap image
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/338 >
2020-09-09 17:35:25 +03:00
Jordan Petridis
dd43637fce
ci_template: correctly spell the global var
...
Close #83
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/337 >
2020-09-09 16:05:00 +03:00
Jordan Petridis
2a3589dc2d
citemplate: rework gitlab rules
...
Rework rules of jobs to prever duplicate pipelines.
https://docs.gitlab.com/ce/ci/yaml/README.html#prevent-duplicate-pipelines
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/331 >
2020-08-27 15:39:35 +03:00
Jordan Petridis
524a75e6ff
ci_template: remove rules from the docker build
...
We can run the jobs always automatically since, most of the
time they will be copying/reffing the existance image in the
registry.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/331 >
2020-08-27 15:35:12 +03:00
Nirbheek Chauhan
159e0e8134
citemplate: Allow spaces in filenames when indenting
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/328 >
2020-08-06 01:34:18 +05:30
Tim-Philipp Müller
1ab716b71d
citemplate: add support for .indentignore file to indent job
...
See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1465
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/328 >
2020-08-05 00:32:17 +01:00
Jordan Petridis
91c85b7ca9
citemplate: skip integration testsuites for gstreamer-sharp
...
Close #80
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/326 >
2020-07-26 12:25:55 +00:00
Jordan Petridis
c44f415a4b
citemplate: make it so docker builds only run for detached pipelines
...
Currently, if you have a MR open, there 2 pipelines being
triggered. One normal, and one detached.
Previously, if you were to rebuild an image, the jobs of the
docker build stage would be executed concurrently, race
and end up both rebuilding the image.
Make them manual for normal pipelines to avoid such occurrence
and waste of resources.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/320 >
2020-07-26 09:57:43 +00:00
Jordan Petridis
fe54d6d8cd
citemplate: properly pin the image of the docs job
...
we don't need the image to be copied or rebuilt, as
its currently pinned shortly and won't change anytime soon.
ammends dc48666742
!324
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/325 >
2020-07-24 18:54:50 +03:00
Jordan Petridis
dc48666742
citemplate: revert the docs job to the previous image build
...
The update to f31 from !271 triggered an error in hotdoc it seems,
so rollback for now till we figure it out.
https://gitlab.freedesktop.org/gdesmott/gst-plugins-base/-/jobs/3764215
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/324 >
2020-07-23 15:19:46 +03:00
Jordan Petridis
a892850eb2
docker/fedora: update base to fedora 31
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/271 >
2020-07-23 06:58:10 +00:00
Nirbheek Chauhan
af11a2cd52
gitlab: Support android tarballs compressed with xz
...
Needed for
https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/540 .
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/322 >
2020-07-11 01:28:37 +05:30
Mathieu Duponchelle
13c2d964da
gitlab: update hotdoc
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/321 >
2020-07-10 01:09:26 +02:00
Jordan Petridis
4fd36e5d73
docker/fedora: add gtest to get openh264 to build again
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/315 >
2020-07-03 16:38:46 +03:00
Matthew Waters
3f6395c2e9
gst-build: only enable werror for gst recipes
...
It may throws various warning that are treated as errors for other
repositories
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/171 >
2020-07-03 15:20:30 +03:00
Jordan Petridis
a5135b1596
citemplate: use the default keyword for our global policy
...
It was introduced in a recentish release along with pipelines
for merge requests, but it required the use of rules.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/318 >
2020-07-03 09:47:27 +00:00
Jordan Petridis
d57693328b
citemplate: avoid the need to upgrade buildah in docker build
...
We only need the newer version from the image, to support
the --arch arg, but we don't really use it yet so we
could live without it.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/318 >
2020-07-03 09:47:27 +00:00
Jordan Petridis
f5569ad5dc
citemplate: run check in gst-examples but not integration tests
...
gst-example contains tests for check but not integrations suite
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/318 >
2020-07-03 09:47:27 +00:00
Jordan Petridis
e18eb064c1
citemplate: run the docs job in more modules
...
Needed to catch regressions in the docs cache files.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/318 >
2020-07-03 09:47:27 +00:00
Jordan Petridis
efdb7c545c
citemplate: slightly improve logging of docker build jobs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/318 >
2020-07-03 09:47:27 +00:00
Guillaume Desmottes
dbc4ca1b2f
ci: use gst-indent from docker image
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/318 >
2020-07-03 09:47:27 +00:00
Thibault Saunier
b6ccc2169f
gitlab: Update hotdoc
2020-07-02 18:09:32 +02:00
Mathieu Duponchelle
51d0c73074
ci_template: update hotdoc
2020-07-01 19:02:38 +02:00
Nirbheek Chauhan
70f6af0e81
msys2: Fix pacman update
...
Match the official steps by MSYS2 upstream for updating on CI:
https://github.com/msys2/setup-msys2/blob/master/main.js#L98
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/317 >
2020-06-30 18:17:07 +05:30
Jordan Petridis
e94919137c
citemplate: check if the gitlab registry is enabled on the fork
...
If its not CI_REGISTRY_IMAGE will be null and break the job.
Instead paste a helpful message with the documentation on how
to enable the registry.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/316 >
2020-06-30 00:12:45 +03:00
Jordan Petridis
41e979e1e4
citemplate: remove tag restriction for docker builds jobs
...
There isn't anything particular that needs to be on the gstreamer
runners, and the other shared runners should be able to handle
them fine.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/314 >
2020-06-29 15:43:31 +00:00
Guillaume Desmottes
0a085866ae
docker: move gst-indent script into docker image
...
This script is now very stable, so downloading it everytime is no longer useful.
It can also helps avoid network errors when running ci jobs.
Fix #70
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/306 >
2020-06-29 17:12:00 +03:00
Jordan Petridis
5c490de1bd
citemplate: also check the forked registry for image builds
...
In case you are developing a set of changes in a module, in
conjunction with a branch in gst-ci, you will end up with
a template with a different tag than the upstream repo, which
will be refferencing your gst-ci forked registry.
But that image won't existin in the namespace the
module would be running at, so we need to copy it from there.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/308 >
2020-06-26 12:14:28 +00:00
Jordan Petridis
3a004f7ca4
citemplate: use the fd.o pre existing buildah image to build containers
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/308 >
2020-06-26 12:14:28 +00:00