The default number of parallel jobs is two, which is too few. We can
easily use four or more. Should speed up image builds and also
downloading of (new) sources that aren't already cached in the image.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/411>
The relevant CI log
dyld: Library not loaded: /Users/gst-ci/builds/gstreamer/cerbero/cerbero-build/dist/darwin_universal/x86_64/lib/liborc-0.4.0.dylib
Referenced from: /Users/gst-ci/builds/xhaakon/gstreamer-sharp/cerbero-build/dist/darwin_universal/x86_64/bin/orcc
Reason: image not found
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/410>
Current windows image doesn't seem to be able to spawn procceses for reason,
use a different image until this is debuged
```
Running command 'c:/builds/alatiera/gst-ci/cerbero-build/build-tools/bin/meson --prefix=c:/builds/alatiera/gst-ci/cerbero-build/dist/msvc_x86_64 --libdir=lib -Ddebug=true --default-library=both -Doptimization=2 --backend=ninja --wrap-mode=nodownload -Db_vscrt=md --native-file c:/builds/alatiera/gst-ci/cerbero-build/sources/msvc_x86_64/gstreamer-1.0-1.19.0.1/_builddir/meson-native-file.txt -Dlibunwind=disabled -Ddbghelp=enabled -Dintrospection=disabled -Dexamples=disabled'
failed to create process
```
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/399>
It's purely for informative reasons. `du` will fail on the sources dir
if a branch name has unicode in it due to an MSYS/MinGW bug. The long
term fix is to from MSYS/MinGW to MSYS/MinGW-W64 or MSYS2/MinGW-W64.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/395>
This reverts commit 12c1689aaa.
Revert ci-fairy check-commits job for now as it seems a bit
buggy. It picks up commits that are not part of the branch
and breaks the CI.
Will investigate further and reintroduce it later.
Sometimes the git repo cached on the docker image gets corrupted on
Windows, in which case there is no way to clean things and resolve
that error. For example: https://gitlab.freedesktop.org/bilboed/gst-plugins-bad/-/jobs/5517037
```
++ cp -a C:/cerbero/.git .
cp: cannot create regular file `./.git/objects/pack/pack-cbdde9dc4dd07bff6761e6715e20d7c0abe62b9e.idx': Permission denied
cp: cannot create regular file `./.git/objects/pack/pack-cbdde9dc4dd07bff6761e6715e20d7c0abe62b9e.pack': Permission denied
```
Always delete the cached git repo and copy a pristine copy from the
image. This will also avoid accumulation of garbage in the git repo.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/376>
This is meant to be used for containers that are going
to be periodically rebuilt. For our usecase specifying
`fdo.upstream-repo` is enough to garbage collect all
the tags from the forks.
We also need to rebuild the images, so they don't have
include the label anymore.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/368>
With the MergeRequest rules template, its was impossible
to manually create or trigger a pipeline for a branch/commit
that was not part of a merge request.
This tweaks the workflow:rules such that there will always be
a pipeline for each commit (which will be set to a manual job trigger).
There is the downside that we will now be triggering 2 pipelines in
case of merge requests, but they will require manual action to be
started.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/369>
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>
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>