Commit Graph

6 Commits

Author SHA1 Message Date
Oliver Smith a8153577fe gerrit, master builds: use stretch, not jessie
Debian jessie (8) is EOL already, so switch to stretch (9). This is
required to build all Osmocom projects in docker, because at least
libosmocore fails to build with the old image (tests won't build with
GCC-4.9.x from jessie unless -Werror is disabled).

Do not build the jessie image anymore, and update the shared dockerfile.
Remove everything jessie specific, and make it work with stretch by
installing asciidoc-dblatex. Otherwise we get this error when building
manuals:

a2x: ERROR: missing configuration file: /etc/asciidoc/dblatex/asciidoc-dblatex.xsl

Add '--cap-add SYS_PTRACE' argument to the docker run command, because
otherwise the address sanitizer isn't working anymore with stretch
(which makes the OsmoPCU tests fail).

I've tried to split this patch up into multiple ones, but since there is
no asciidoc-dblatex package in jessie, we must add the dependency and
switch the image at the same time.

Related: OS#3726
Change-Id: I61fe93863d5367e3b9c01ab4726bb95bd16d891d
2019-09-24 08:04:53 +02:00
Oliver Smith 6c603bac02 docker/rebuild_osmocom_jenkins_image.sh: set -e
Exit with error if one of the docker commands is failing (i.e. don't
exit with 0 when building the jessie image failed, but the stretch
image got built properly).

Change-Id: I6faaf9303b4facb0965131615bc73541dd309c51
2019-04-02 14:15:40 +02:00
Oliver Smith 23d603a3af docker/rebuild_osmocom_jenkins_image.sh: pull images
Prevent building docker images on top of outdated Debian images, where
the package download feeds have been disabled.

Related: Change-Id I1076bbb7d77bdc99f5d60d641c09ce965fb9dfc6
         (docker-playground.git)
Related: OS#3869
Change-Id: Id840094aec51bf51d920aaa017a2f99fcb866f55
2019-04-02 14:15:33 +02:00
Holger Hans Peter Freyther f8a085347a docker: Use the same Dockerfile for jessie and stretch
The binaries built on the Jenkins to be used by the osmo-gsm-tester
require libgnutls.so.30. This is provided by the libgnutls30 package
which is not available on jessie (Debian 8) and a backport requires
some effort.

Re-use the existing Dockerfile for jessie and stretch (Debian 9) using
an argument. Refactor the shell script to pass the right argument. Add
the debian version into the tag name to make space for buster (Debian
10).

Change-Id: I44c8e49a548cb64defd2eba868ec4bd435de90ba
2019-02-19 05:06:38 +00:00
Your Name 3eca350f60 docker: rebuild: if building fails, try a --no-cache build
Building a docker image depending on a debian upstream has the problem that an
intermediate build result will depend on an APT package archive that is
probable to become outdated. It's necessary to do an 'apt-get update' regularly
to get the newest package archives and be able to install new packages. We
never know which 'apt-get install' steps we might be editing, so we'd have to
add an 'apt-get update' before each, or use an ADD line to find out whether the
package archive has changed, before each and every apt-get install step. We're
likely to miss those in the future, and it would be a large, complex change.

Instead, try to build the docker image with --no-cache in case a cached build
has failed. This should fetch the most recent debian upstream with a proper
archive.

Fixes the current problem that the rebuild_osmocom_jenkins_image.sh is stuck on
various build slaves, should trigger a --no-cache build on each slave.

Change-Id: I37110287dabd53d3537d94ecd74cf513396971b3
2018-01-15 14:10:21 +01:00
Holger Hans Peter Freyther 71737f21ba jenkins: Copy Dockerfile and script from buildhost
We are not using the Docker registry due difficult GPL compliance
but build the image on the build node itself. After prototyping
if containers can be used for building these files remained forked
on the node. These days it seems to be easier to complain than to
say thank you that this new approach has its merits. Copy the files
from the build slave to the directory they should have been in.

Change-Id: Icb0406f96b0c18e77be51ad8317c2668fb23a45e
2017-08-25 18:23:43 +08:00