CentOS Linux 8 is EOL, attempting to install packages in it results in
an error. CentOS Linux is a rebuild of RHEL (stable versions). The
CentOS projects recommends to use CentOS Stream instead, which is a
build of the "public development branch for RHEL".
After the early EOL was announced on 2020-12-08, alternative projects
AlmaLinux and Rocky Linux have been established as binary compatible
forks of RHEL 8 (stable versions).
Both Alma and Rocky seem to be solid projects, see related Wikipedia
articles and their sources. Pick Alma and adjust the whole tree to use
the almalinux:8 docker image instead of centos:centos8.
Fix for:
Error: Failed to download metadata for repo 'appstream': Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried
Related: SYS#5818
Related: https://www.centos.org/cl-vs-cs/
Related: https://www.centos.org/centos-linux-eol/
Related: https://bugs.centos.org/view.php?id=18394
Related: https://en.wikipedia.org/wiki/AlmaLinux
Related: https://en.wikipedia.org/wiki/Rocky_Linux
Change-Id: I30e1a773b901b1d2187214445116c7f2aecc4e36
Allow to change the path between OSMOCOM_REPO_MIRROR and
OSMOCOM_REPO_VERSION. While at it, tweak related comments (comment above
the variable as usually, replace "repo" wording with "feed" for the
latest/nightly variable as we usually refer to it as feed), and mention
OSMOCOM_REPO_* in README.md.
In order to be able to use a different mirror for testsuite and systems
under test, the testsuite related Dockerfiles (osmocom-bb-host-master,
debian-stretch-titan) are not using OSMOCOM_REPO_PATH. We could add a
OSMOCOM_REPO_TESTSUITE_PATH on demand, as mentioned in the next commit.
Related: SYS#5370
Change-Id: I8010a4d49d4620a5c47c2ff4f909a9aeeaad7b73
Maintaining several versions of the same file in different folders
is a bad idea, because at some point their content gets out of sync.
This is exactly what happened to 'respawn.sh': sleep()ing was only
implemented in 'osmo-bts-master/respawn.sh', other versions of this
file would simply ignore '$SLEEP_BEFORE_RESPAWN'.
The easiest solution would be to have all common files in a single
directory, however Docker does not allow to ADD files from outside
of the build context. In other words, all files must be in the
same directory as the Dockerfile itself.
Modify 'make/Makefile' in order to copy the contents of common
directory to the current build context ('pre-build' target) and
remove it after building ('post-build' target).
Change-Id: I3ec86c8610b3b43d39ea8e3da444861d317ced4e
Move common code from osmo-*-master to debian-stretch-build and
centos8-build:
* add the OBS repository key (debian only)
* add the OBS repository with "nightly" feed (debian only, already done
for centos8)
* install telnet
* invalidate the cache once the repository is updated
While at it, remove deprecated MAINTAINER lines.
This fixes the need to read both the repository index of debian-stretch
and centos8 and having to invalidate the cache if either of them changes
(instead of reading just the relevant index and invalidating the cache
only if the relevant one changes).
A similar change was done with osmo-*-latest in
I443d52eba416ea298cc5421e280ad2f4ca59283b.
Related: OS#5049
Related: https://docs.docker.com/engine/reference/builder/#maintainer-deprecated
Change-Id: Id69f3eaf37f823bac0947366f27a25edd277a4cb
Similar to what is already done with DISTRO, which points to given image
of ours based on name. This time we do the same with upstream images,
such as debian:stretch or centos:centos8.
This way, for instance calling docker_images_require
"osmo-bsc-latest-centos8" would try to build the
osmo-bsc-latest/Dockerfile file starting from a centos8 image.
Change-Id: I33cb21aa024396974559fd98f9f3c64e2c351eda
This is initialized to docker.io, keeping the default behaviour
if not specified. However, it allows us to specify a private
registry later on.
Related: OS#4839
Change-Id: I32d4ee6256033c809108c1b86cb6b6c58d880f49
Create centos8-build similar to debian-stretch-build, as preparation for
ttcn-3 tests on centos 8.
Related: OS#4564
Change-Id: Ide1e88c92b7ac301f0ea8ca110c1b2eb43f9d5ad