Commit graph

401 commits

Author SHA1 Message Date
Guillaume Desmottes 604928a40b gitlab: build gst-omx with tizonia as target
Build just the minimum to be able to build gst-omx with this specific
target.
2020-03-10 03:48:14 +00:00
Jordan Petridis a99cdc8909 docker: allow to specify the branch to pull for various repos
Declare an docker build-arg [1] and use it
whenever cloning one of our repositories. If the buildarg
is not specified, the variable defaults back to 'master'
and thus the current behavior doesn't change.

From the .gitlab-ci.yml file, when building pass
the GST_UPSTREAM_BRANCH that's defined from the ci_template
as the buildarg so we will be building the corresponding branches
for the docker images.

Close #33

[1] https://docs.docker.com/engine/reference/builder/#arg
2020-03-08 18:53:23 +00:00
Nirbheek Chauhan 3608d69c1f gitlab/cerbero: Use new prefix for jobs built with MinGW 2020-03-05 08:39:17 +00:00
Xavier Claessens 28881dddb4 Add integration test for gstreamer-full-1.0 2020-03-04 18:50:21 +00:00
Nirbheek Chauhan 7d31018ce9 gitlab/cerbero: Do not add tmp files to cerbero-deps tarball
This is where the WINEPREFIX is now in Cerbero. This used to be
share/wine, but was moved to var/tmp/wine for clarity. It was causing
two problems:

1. The size of these generated files are ~1GB, which were ~500MB after
   tar.gz, and they were completely useless since they can just be
   regenerated by Wine the next time it's run. Let's not waste egress
   bandwidth.

2. Random build failures because wineserver and associated processes
   would not always exit before we started tarring up the prefix, then
   write to the directory on exit while tar was reading the directory
   causing `tar -czf` to fail:

```
$ tar -C ${CERBERO_HOME} -czf $CERBERO_DEPS build-tools build-tools.cache dist/${ARCH} ${ARCH}.cache
tar: build-tools/share/wine: file changed as we read it
Uploading artifacts...
manifest.xml: found 1 matching files
cerbero-build/logs: found 461 matching files
cerbero-build/cerbero-deps.log: found 1 matching files
cerbero-deps.tar.gz: found 1 matching files
Uploading artifacts to coordinator... ok            id=1807197 responseStatus=201 Created token=4_qFUP8z
ERROR: Job failed: exit code 1
```
2020-03-04 14:33:16 +00:00
Matthew Waters fbd1eb9283 cerbero-android: don't upload the '-runtime' package
It's useless for android
2020-03-04 11:46:50 +11:00
Jordan Petridis c7466e2edc windows: checkout the correct branch of gst-build for stable branch
Previously we would always checkout from master, which doesn't
end up working well for the stable branch. We already have a mechanism
to specify the correct branch to clone from each template. [1]

[1] https://gitlab.freedesktop.org/gstreamer/gst-ci/-/merge_requests/118
2020-02-27 08:50:24 +00:00
Thibault Saunier a73a597f12 gitlab: Run ges valgrind tests on devtools changes
We have validate 'unit test' there
2020-02-26 11:09:03 +00:00
Jordan Petridis 28633f2fcf
windows: try to avoid random failures due to pre-existing gst-build clone
This is slightly weird, cause I am not sure what causes the clone
to be there, since gitlab-runner supposedly always either use a
clean volume or at least runs git clean on the existing ones.

But its there and so we have to deal with failures like so
https://gitlab.freedesktop.org/tpm/gstreamer-sharp/-/jobs/1672137
2020-02-25 14:55:45 +02:00
Guillaume Desmottes ad25b174a4 gitlab: update fedora image
Update to meson 0.53.1
2020-02-24 12:01:53 +05:30
Guillaume Desmottes 316848d43f docker: fedora: update to meson 0.53.1
Needed to build Tizonia (gst-omx backend).
2020-02-24 09:50:47 +05:30
Jordan Petridis f7a83c65ab
ci_template: update the docker image versions 2020-02-10 13:53:27 +02:00
Jordan Petridis 65c18304c4 docker/fedora: upgrade base images to f31
All the images except the gst-build fedora image,
due to further changes being needed
2020-02-10 10:18:42 +00:00
Jordan Petridis def2e2d80b docker/fedora: add libappstream-glib to the image
Needed to validate the appstream files of GstDebugViewer
in gst-devtools.

https://gitlab.freedesktop.org/gstreamer/gst-devtools/merge_requests/155
2020-02-10 10:18:41 +00:00
Guillaume Desmottes 3aa542dfb8 gitlab: use libsodium from system
The Rust crate can either build its own libsodium or use the one from
the system. Do the latter to reduce build time.
2020-02-07 09:44:32 +05:30
Guillaume Desmottes 2f40cb1418 gitlab: update fedora image 2020-02-06 16:37:54 +05:30
Nirbheek Chauhan eeaa92fac5 gitlab/cerbero: Run gst-inspect on the built binaries
Using the latest cerbero image to get Wine for cross-win32|64.
2020-02-04 01:49:32 +05:30
Nirbheek Chauhan cb22d4c4f9 docker/cerbero: Install wine in system setup
This is now an optional runtime dependency that cerbero can make use
of for doing runtime testing of the built binaries. Needed for
building a new image so that !227 can be merged.
2020-02-04 00:16:09 +05:30
Guillaume Desmottes 08b346d96c docker: fedora: install Tizonia dep
Need to build gst-omx with Tizonia as target (#20).
2020-01-31 17:17:44 +05:30
Jordan Petridis ad6f4df17f ci_template.yml: Update the windows image version 2020-01-29 17:39:46 +00:00
Jordan Petridis 23f303eb94 docker/windows: work around a python ssl issue
Python fails to validate github.com SSL certificate, unless we first
run a dummy download to force refreshing Windows' CA database.
See: https://bugs.python.org/issue36137

Adapted from patches by Xavier Claessens!
2020-01-29 17:39:46 +00:00
Jordan Petridis 0320050e06 docker/windows: install cmake with choco as well 2020-01-29 17:39:46 +00:00
Jordan Petridis 6fb7b6744c docker/windows: copy the install scripts just before running them
This results into more docker layers, but it avoid invalidating
the previous layers when changing anything in the script, making
build times faster.

Adapted from patches by Xavier Claessens!
2020-01-29 17:39:46 +00:00
Jordan Petridis df6ebdeaaf docker/windows: install git, gitlfs, 7zip and python3 with choco
Move them into a seperate script to avoid needing to refresh the
env, and make it simpler.

Adapted from patches by Xavier Claessens!
2020-01-29 17:39:46 +00:00
Jordan Petridis c0caae0722 docker/windows: use direct download links from mirrors
Else Invoke-WebRequest gets redirected and ends up downloading
html page. Possibly due to an unkown user-agent? who knows.
2020-01-29 17:39:46 +00:00
Nirbheek Chauhan 21df205069 docker/windows: Download and install MSYS for Cerbero 2020-01-29 17:39:46 +00:00
Nirbheek Chauhan d8e87dc89a docker/windows: Install CMake for Cerbero 2020-01-29 17:39:46 +00:00
Nirbheek Chauhan 6267810f3a docker/windows: Fix 7zip extract command for MSYS2
-Wait is only needed for Start-Process. Also, explicitly extract the
tar file into C:\ -- don't assume the current directory is C:\
2020-01-29 17:39:46 +00:00
Nirbheek Chauhan cfb15f47b8 docker/windows: Clarify some MSYS2 install steps 2020-01-29 17:39:46 +00:00
Nirbheek Chauhan 1ae8f6491f docker/windows: Update python, git, and MSYS2
The git update is particularly important because of security
vulnerabilities on Windows related to NTFS.
2020-01-29 17:39:46 +00:00
Nirbheek Chauhan b722709cad docker/windows: Use load-balancing for sourceforge URLs
Instead of using a specific mirror, which may be slow or might
disappear.
2020-01-29 17:39:46 +00:00
Nirbheek Chauhan cec8de9054 docker/windows: Install Python to a path without spaces
This is needed for Cerbero since Autotools cannot handle paths to
binaries that have spaces in them.
2020-01-29 17:39:46 +00:00
Nirbheek Chauhan ddf9f8962f docker/windows: Download Python installer as python3-installer
Having a binary called 'python3' anywhere that might accidentally end
up in PATH is asking for trouble.
2020-01-29 17:39:46 +00:00
Philippe Normand a86020a9bf
docker/fedora: Install libdav1d
This library is required for the gst-plugins-rs rsdav1d plugin build.
2020-01-29 16:28:59 +02:00
Guillaume Desmottes 8ea2989e0b gitlab: run gst-plugins-rs tests
Fix #46
2020-01-24 11:58:02 +05:30
Guillaume Desmottes 44f421e9e5 gitlab: override 'except' on build rust job
The parent job has an except rule on gst-plugins-rs which was inherited
preventing the job to be run on gst-plugins-rs updates.

Fix #51
2020-01-24 11:31:29 +05:30
Guillaume Desmottes 44c286fffd docker: fedora: install libsodium
Used by a Rust plugin.
2020-01-17 08:49:31 +00:00
Guillaume Desmottes 7fb6c56784 gitlab: move gst-plugins-rs to its own job
Building Rust code is significantly slowing down ci so do it only for
projects which could make gst-plugins-rs regress.
2020-01-17 12:52:03 +05:30
Nicolas Dufresne 9e7b8f9392 CI: integration: Split this test in 4 jobs
That job was the slowest, now each jobs takes about 12 minutes, which
makes it slightly faster then msys2 jobs, and sometime iOS due to low
bandwidth and low availibility of OSX runners.
2020-01-15 10:10:28 -05:00
Guillaume Desmottes b9c68041b2 gitlab: cache CARGO_HOME in shared cache 2020-01-15 15:10:10 +05:30
Guillaume Desmottes 8e1b1c43c7 gitlab: enable gst-plugins-rs in build fedora jobs 2020-01-13 09:15:11 +05:30
Guillaume Desmottes 5fc211d107 gitlab: don't run gst-plugins-rs tests
They are not working with CI atm, see #46
2020-01-13 09:15:11 +05:30
Nirbheek Chauhan 10326927d5 gitlab-ci: Fix docker tag when pushing image
Missed in https://gitlab.freedesktop.org/gstreamer/gst-ci/merge_requests/213
2020-01-08 23:46:35 +05:30
Guillaume Desmottes f46a0d33c0 gitlab: build gst-omx with zynq as target
Build just the minimum to be able to build gst-omx with this specific
target.
2020-01-08 10:03:02 +00:00
Nirbheek Chauhan eedde1884a gitlab-ci.yml: Allow tagging images built on upstream branches
If we're on the gstreamer namespace, we should push all images built
on that namespace to the registry. This is needed to, f.ex., update
the docker image used in stable builds. This is needed for:
https://gitlab.freedesktop.org/gstreamer/cerbero/merge_requests/367
2020-01-07 12:58:21 +05:30
Nirbheek Chauhan 6b09187d21 docker/cerbero: Do not manually install nasm when building image
This is pulled in correctly via cerbero's bootstrap deps now.
2020-01-07 02:37:55 +05:30
Guillaume Desmottes e41650913e gitlab: disable most jobs for gst-plugins-rs
No need to run jobs which are not building gst-plugins-rs.
2020-01-02 14:03:26 +05:30
Nirbheek Chauhan d0fbcac3df gitlab/gst-build: Disable building rust plugins
gst-build now includes gst-plugins-rs, but gst-plugins-rs CI does not
run the gst-build CI jobs, so MRs can easily break gst-build CI.

F.ex: https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/merge_requests/186#note_371696

Disable this till that's resolved.
2019-12-25 17:11:17 +05:30
Guillaume Desmottes d175858bad gitlab: update Fedora image
Include Rust environnement fix.
2019-12-23 14:24:17 +05:30
Guillaume Desmottes 8a85aa6eba docker: export RUSTUP/CARGO_HOME in container
The rust binaries (rustc) needs those variables to be defined to work
properly.
2019-12-23 11:53:22 +05:30