Skip to content
Success

Changes

Summary

  1. debian-bookworm-build(-arm): new docker containers (details)
  2. debian-bookworm-erlang: new docker container (details)
  3. debian-bookworm-obs-latest: new container (details)
  4. jenkins-common: add + set default: debian bookworm (details)
Commit 5586b016f383f8a1718fb7ee04aa32808de08985 by laforge
debian-bookworm-build(-arm): new docker containers

Create debian bookworm (12) based containers for building all Osmocom
projects in master/gerrit/ttcn3 jenkins jobs.

This is a combination of debian-bullseye-build (ttcn3) and
debian-bullseye-jenkins(-arm) (master/gerrit), which were used for this
purpose but had several differences. Combining them solves the
following problems:
* The naming was confusing, as both the -jenkins and -build containers
   were used in jenkins and were used to build the Osmocom stack.
* This lead to adding the dependencies to the wrong containers / not
   adding them to both containers.
* Now we are sure that if a program builds from source in the master
   and gerrit verifications, it will also build in the ttcn3 jobs.

Other notable changes from the debian 11 containers:
* Python2 is finally gone (OS#5950, for the few projects that still
   need it like openbsc, I'll use debian 11 for the jenkins jobs)
* Removed osc and git-buildpackage, now that OBS package building is
   done in different docker containers (see osmo-ci/scripts/obs)
* Combined multiple RUN commands into one as they the image build
   down, used set -x to display what commands run exactly
* Use UID variable instead of hardcoding 1000
* Optimized order of commands, so e.g. the LLVM for Arm that we will
   rarely change gets installed/cached before the big list of apt pkgs
* Replaced old git.osmocom.org urls
* Removed apt-get upgrade; the base image will get upgraded from time
   to time, no need to upgrade within the image
* Add --depth=1 option to git clones and remove temporary git clones
* Removed generating locales code, it was only done by one of the two
   images and I couldn't find in the git log why we would need this (if
   we do need it we can add it back later)

The following patches add more debian bookworm containers and have
similar improvements.

Related: OS#6057
Change-Id: I49aaf62b5b97775f923453611df3b91354a640a0
The file was addeddebian-bookworm-build-arm/Dockerfile
The file was addeddebian-bookworm-build/Dockerfile
The file was addeddebian-bookworm-build-arm/Makefile
The file was addeddebian-bookworm-build/Makefile
Commit f0cd1c2d58fd7d653ba528d476792852ce2e0635 by laforge
debian-bookworm-erlang: new docker container

Related: OS#6057
Change-Id: I797ec0e6700860be8fb59bf6b1fab6fa44e53421
The file was addeddebian-bookworm-erlang/Dockerfile
The file was addeddebian-bookworm-erlang/Makefile
Commit a4fd5ba37b0397dfb9e38347cc24044d4cdc2fc2 by laforge
debian-bookworm-obs-latest: new container

Related: OS#6057
Change-Id: Ie30135362e37558010f9894bb80a3684786f5aee
The file was addeddebian-bookworm-obs-latest/Dockerfile
The file was addeddebian-bookworm-obs-latest/Makefile
Commit 82334bf12303cbb81b76bfd61752041b74c154d8 by Oliver Smith
jenkins-common: add + set default: debian bookworm

Related: OS#6057
Change-Id: I37e5393398f17c5c8809e17bb363fa86d769f2c2
The file was modifiedjenkins-common.sh