Commit graph

143 commits

Author SHA1 Message Date
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
44c286fffd docker: fedora: install libsodium
Used by a Rust plugin.
2020-01-17 08:49:31 +00:00
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
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
Guillaume Desmottes
af9982cffe docker/fedora: install Rust
Needed to build gst-plugins-rs, see gst-plugins-rs!205
2019-12-20 13:43:40 +05:30
Xavier Claessens
0b3645f7fd docker/fedora: Update meson to 0.52.1 2019-12-18 10:48:14 -05:00
Eric Marks
f4d335bc8c docker/fedora: Install libcaca and aalib
Add libcaca-devel and aalib-devel to dependencies so that cacasink and
aasink can be built.
2019-12-17 16:30:07 -05:00
Jordan Petridis
5c0ad2facd
ci_template: make sure powershell hard exists on errors
We set the env var as the shell of the image, but looks like
the gitlab runner is overriding that.
2019-12-05 00:59:34 +02:00
Jordan Petridis
b3aa9b5286
windows: Migrate to windows 1809 base
Rebuild the windows docker image against the current ltsc [1]
of server 2019. This requires moving some of the msys setup
to the runner job cause it causes docker build to hang

Switch the job tags so they now use the 1809 runner, instead
of 1607.

Tweak the PATHs in the msys job so bash doesn't complain about
slashes..

Lastly, increase the timeout of the windows jobs, as msys2
installs its deps at runtime

[1] https://docs.microsoft.com/en-us/windows-server/get-started-19/servicing-channels-19
2019-12-04 18:45:22 +02:00
Jordan Petridis
2fadd6e3d0 docker/windows: update the version of various deps we install 2019-11-26 17:42:14 +00:00
Nirbheek Chauhan
4e93f92783 docker/cerbero: Temporarily add nasm to the system setup
We will later install it as part of the cerbero bootstrap step when
generating the image after
https://gitlab.freedesktop.org/gstreamer/cerbero/merge_requests/320 is
merged.
2019-11-10 04:27:14 +05:30
Thibault Saunier
b0b76594c3 docker: Stop using mdv and use bat to colorize markdown 2019-11-06 15:43:11 +00:00
Matthew Waters
bcb1ae6cf2 Revert "docker/cerbero/fedora install openssl-devel libraries"
This reverts commit 4a8beec410.
2019-09-24 12:55:54 +10:00
Matthew Waters
4a8beec410 docker/cerbero/fedora install openssl-devel libraries
Temporary workaround until cerbero installs the library itself
2019-09-24 11:40:08 +10:00
Jordan Petridis
e1d7b721e0 docker: improve logging of the setup scripts 2019-09-23 10:54:40 +00:00
Jordan Petridis
d08496b142 docker/fedora: install debuginfo for python3-libs as well 2019-09-23 10:54:40 +00:00
Jordan Petridis
470b151620 fedora/docker: remove the fedora openh264 package
The cisco repository has been problematic for a while causing
dnf to error due to some gpg issue and break the pipe in non-interactive
ttys.

```
Importing GPG key 0xCFC659B9:
 Userid     : "Fedora (30) <fedora-30-primary@fedoraproject.org>"
 Fingerprint: F1D8 EC98 F241 AAF2 0DF6 9420 EF3C 111F CFC6 59B9
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-30-x86_64
The command '/bin/sh -c /usr/bin/sh /root/prepare.sh &&     /usr/bin/sh /root/cleanup.sh' returned a non-zero code: 141
```

https://gitlab.freedesktop.org/gstreamer/gst-ci/-/jobs/573870

We do have a meson subproject for openh264 nowdays in gst-build
and it will get enabled automatically once the distro package
is no longer there.
2019-09-23 10:54:40 +00:00
Edward Hervey
c732a9234c docker: Upgrade cerbero image to use fedora 30 2019-09-05 17:25:37 +02:00
Jordan Petridis
072cf0122a docker/windows: refactorings to get it to work with the new runner
* Install git-lfs as its required now by gst-integration-suites
* Clone gst-build eache time to avoid dated gst-build checkouts
and overwritting .wrap files. Similar to !137
* Split the dockerfile and add a second run stage refresh the
powershell env inbetween calls
* Remove the msys2 workaround as its not needed anymore
2019-08-16 17:17:01 +00:00
Xavier Claessens
31cec0a245 Add Windows MSVC and MSYS2 builds
This adds 3 new jobs that build against msys2 x86_64, msvc 2017 x86
and msvc 2017 x86_64. For the msvc build, some subprojects (like libnice)
don't satisfy all their deps, and are getting automatically disabled.

This doesn't add jobs that run the test suite also. Will hopefully
get implemented later on.
2019-08-16 17:17:01 +00:00
Philippe Normand
f4be784078 docker/fedora: Enable WPEWebKit support
These dependencies should enable the WPE plugin build in -bad.

See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/839
2019-08-08 15:31:28 +00:00
Jordan Petridis
7e88d99f95 docker/fedora: avoid hardcoding the fedora version in the setup script 2019-07-15 09:13:29 +00:00
Matthew Waters
a110f8399e docker/fedora: add glslc to the install list
Enables building the vulkan plugin with shaders
2019-07-05 13:21:29 +10:00
Matthew Waters
ef82e5a971 docker/android: cache gradle deps inside the docker image 2019-06-12 14:50:02 +10:00
Nicolas Dufresne
8a20ec0606 docker: cerbero: Fix for mingw tarball rename 2019-06-06 15:42:29 -04:00
Thibault Saunier
9afac85d0d fedora: Install gtk3 and gdk-pixbuf documentation 2019-05-29 09:05:33 -04:00
Thibault Saunier
9e62bd32c3 docker: Always get latest hotdoc release
We had another little mistake to fix and that might
happen often in the future so let's use latest releases for
now.
2019-05-13 13:58:57 -04:00
Thibault Saunier
f7bcf8dd6a docker: Update hotdoc to latest release 2019-05-13 11:26:23 -04:00
Thibault Saunier
09c9517c64 docker: Explicitely install flex before installing hotdoc 2019-04-25 16:50:28 -04:00
Thibault Saunier
e2db595678 docker:fedora: Use meson 0.50.1 2019-04-25 10:44:16 -04:00
Thibault Saunier
fee11e9374 docker: Install hotdoc and required packages to build the doc 2019-04-25 10:40:14 -04:00
Jordan Petridis
4c1a551c91 Fedora docker: Bump to f30
Needed to get an upgraded ffmpeg.
Also required to have a new enough version of gobject-introspection
and remove all warnings
2019-04-24 15:55:32 -04:00
Thibault Saunier
69f1f7760b fedora: Install temrinal markdown viewer
To enhance the launcher output
2019-04-16 15:47:24 +00:00
Matthew Waters
497415544b docker: add android-specific image
pre-includes the NDK/SDK
2019-03-26 04:00:57 +00:00
Nirbheek Chauhan
ad598c3f02 Always print timestamps when running Cerbero
This is useful when doing performance improvements or comparisons.
2019-03-25 21:49:29 +05:30
Nirbheek Chauhan
fc2b4a657c docker/cerbero: Always install lbzip2 for use in packaging
See: https://gitlab.freedesktop.org/gstreamer/cerbero/issues/132

Needed for https://gitlab.freedesktop.org/gstreamer/cerbero/merge_requests/139
2019-03-25 21:49:29 +05:30
Thibault Saunier
472901ba17 docker:fedora: Remove Qt5 devel packages
as we haven't tested building it and it leads to build issues in
examples.
2019-03-22 21:21:31 +00:00
Thibault Saunier
452f64bb5e docker:fedora: No need to add site-packages to PATH 2019-03-21 20:53:32 -03:00
Thibault Saunier
f04c2e7f38 fedora: Install meson 0.49.2
Working around https://github.com/mesonbuild/meson/issues/5087
2019-03-21 18:15:13 -03:00
Thibault Saunier
e229b559d4 Revert "docker/fedora: use meson from fedora repos"
This reverts commit a116f19eeb.
2019-03-21 18:15:13 -03:00
Thibault Saunier
3f3031eafb fedora: Install git-lfs 2019-03-21 18:15:13 -03:00
Jordan Petridis
fb91ee1830 docker/fedora: use the meson subprojects cmd to download subprojects
Introduced in 0.49.0 so we can avoid the need to configure in
order to cache the subproejct repos.
2019-03-14 15:33:05 +00:00
Jordan Petridis
71ef6dd804 docker/fedora: use upstream registry to retch the base image
Fedora is now hosting its official docker images at
https://registry.fedoraproject.org
2019-03-14 15:33:05 +00:00
Jordan Petridis
a9e17aad52 docker/fedora: use git-core instead of git
We don't need the full blown git pakcage and we can avoid
a couple of perl deps that way
2019-03-14 15:33:05 +00:00
Jordan Petridis
a116f19eeb docker/fedora: use meson from fedora repos
Fedora is still on version 0.49.2 while pip is on 0.50.
With the version from pip we can no longer run some gst-sharp tests
so we essentially revert back to 0.49

https://github.com/mesonbuild/meson/issues/5087
2019-03-14 15:33:05 +00:00
Matthew Waters
775c0b3520 gitlab: remove the android gst-build target
android is now being tested using cerbero for the binaries we produce.
2019-03-13 13:00:01 -04:00
Jordan Petridis
aa8205abdb
docker/fedora: Include common debug symbols in the image
Part of #14
2019-03-12 15:53:47 +02:00
Jordan Petridis
98176bd5bf docker/fedora/prepare.sh: add valgrind 2019-03-11 12:50:58 +00:00
Thibault Saunier
b8c24cc7f4 Add depencencies to build gstreamer-sharp in our image 2019-02-25 18:00:02 -03:00
Nicolas Dufresne
fb5e6c2595 docker: cerbero: Add Android cross toolchain
This runs the cross-android-universal bootstrap. Note that we remove the
Android NDK source as it is no longer needed during builds.
2019-02-02 10:50:09 -05:00
Nicolas Dufresne
bd83865236 docker: Use a local config for cerbero local_source and home_dir
Ohterwise the cerbero.cbc seems to take precendence on the localconf.cbc
during builds, which cause caching issues, since data does not get stored
at the right place.
2019-01-10 16:37:45 -05:00
Nicolas Dufresne
b16ec7445f docker: cerbero: Add MingW cross toolchains
This runs the cross-win32 and cross-win64 bootstrap.
2019-01-07 13:35:07 -05:00
Nicolas Dufresne
2481157931 docker: cerbero: Add in-docker sources caching
As our runner cache in most of the time cold, and is always cold for new
contributors, which should greatly speedup the build.
2018-12-18 13:56:18 +00:00
Xavier Claessens
aa13631e38 android: Use cross file shipped by gst-build
We want to test that cross files shipped by gst-build are working,
instead of a generating our own.
2018-12-13 17:08:16 +00:00
Xavier Claessens
791757de6c Rename 'android' docker image back to 'ubuntu'
There is no point in doing a different docker image for each build we
are going to do inside an Ubuntu distro. We can later use the same image
for native ubuntu builds, or other cross builds (e.g. android API 21,
etc).
2018-12-13 17:08:16 +00:00
Xavier Claessens
f7331ab4f8 Move Android NDK to /opt
It was installed in '/' which doesn't feel right. Installing it in /root
is also not correct because we want to run the build as user instead of
root in the future and cleanup.sh removes everything in /root. /opt
seems the best place because that's also the default location when
installing Android Studio.
2018-12-13 17:08:16 +00:00
Nicolas Dufresne
f9435d7312 docker: Create Cerbero Fedora Docker 2018-12-09 19:12:07 +00:00
Thibault Saunier
93ddefcc20 Install git in the test_manifest docker as necessary now 2018-12-05 23:53:53 -03:00
Jordan Petridis
032c8cc01e
docker fedora: add extra deps
featuring:
- flite
- elfuitls
- gsl
- couple of mesa packages
- sdl2
- graphene
- aom
- neon
- sbc
2018-11-30 20:48:54 +02:00
Jordan Petridis
8683c2940b
docker: add an image to run the tests of the manifest
So in the futuere we can avoid installing pytest each time
2018-11-30 20:43:39 +02:00
Jordan Petridis
e87e1fb6ca
docker: Add a new image for the gst-indent job
This is meant run GNU indent along with the gstreamer wrapper
through the codebase and error out for missconfigured code.

Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33
2018-11-30 20:38:51 +02:00
Jordan Petridis
f085d34a32
docker: Move android into a unified image 2018-11-27 16:07:57 +02:00
Jordan Petridis
d17930eabb
docker: move the alpine image to a different directory 2018-11-27 14:29:36 +02:00
Jordan Petridis
72ec8cd33f
docker: Add a unified image for fedora
This is meant to replace both the runtime and build images.
Spliting it in two increasing the maintainance required without
any big benefits.
2018-11-27 14:29:36 +02:00
Thibault Saunier
d2cfcef5bb Fix previous commit and do not install rsync
rsync is not needed in the end.
2018-11-25 16:17:29 -03:00
Thibault Saunier
b48405a455 docker:fedora: Add required package to build and upload the documentation 2018-11-24 09:49:50 -03:00
Xavier Claessens
a1726fee58 Add Android NDK toolchain in Ubuntu docker image 2018-11-22 14:15:07 -05:00
Xavier Claessens
68a71431b8 Build Ubuntu base image 2018-11-22 13:24:26 -05:00
Xavier Claessens
af66e26160 Make a change in Dockerfile-ubuntu to force rebuild of docker image 2018-11-22 12:00:26 -05:00
Thibault Saunier
7ede1f54aa Add a simple alpine based Dockerfile for images to build manifest 2018-11-13 16:51:36 +00:00
Víctor Manuel Jáquez Leal
8cb78a4c38 docker: Add gstreamer-vaapi dependencies 2018-11-12 16:04:13 +00:00
Jordan Petridis
9e0abc3c3b
docker: Use the upstream registry to build images 2018-11-09 15:05:38 +02:00
Jordan Petridis
dcbd3f91d4
Do not hardcode env variables 2018-11-08 20:50:13 +02:00
Jordan Petridis
17e6d06735
Docker Fedora: Add more dependencies
Also make the indentation 4-space widgth and consinstant
2018-11-08 20:50:13 +02:00
Jordan Petridis
d9604ca8d2
Build the docker images and push them to the gitalb registry 2018-11-07 16:15:43 +02:00
Thibault Saunier
2c1531ab57
Remove autotools support and update meson.
This simplifies our docker images and we should focus on meson
support for our new CI system!
2018-11-07 16:15:43 +02:00
Thibault Saunier
8ad477eb0e
docker: Add a dockerfile to export test result with allure
based on alpine
2018-11-07 16:15:43 +02:00
Thibault Saunier
778359feb8
docker: Add an archlinux dockerfile 2018-11-07 16:15:43 +02:00
Thibault Saunier
fc8b90123d
docker: ubuntu: Update to 18.04 2018-11-07 16:15:43 +02:00
Thibault Saunier
f1ea83a297
docker: fedora: Update to fedora 29 2018-11-07 16:15:43 +02:00
Edward Hervey
f51f8eea4c Add dockerignore 2017-10-28 11:02:06 +02:00
Edward Hervey
639dc49bdb docker: Add gdb to build images
So we can get backtraces
2017-10-21 13:10:26 +02:00
Edward Hervey
aa441579c4 docker: Add initial images 2017-10-21 12:45:38 +02:00