From 84255c7bb860a165878308507443ddf09c0443df Mon Sep 17 00:00:00 2001 From: Oliver Smith Date: Fri, 30 Apr 2021 15:02:04 +0200 Subject: [PATCH] centos8: don't download .repo file Generate the .repo file on the fly instead of downloading it from the OBS repository. Ensure the gpgkey gets downloaded via HTTPS. I'm about to use centos8-obs-latest with an alternative repository, which does not have the .repo file. Adjust other containers for consistency. Related: SYS#5370 Related: https://download.opensuse.org/repositories/network:/osmocom:/latest/CentOS_8/network:osmocom:latest.repo Related: https://download.opensuse.org/repositories/network:/osmocom:/nightly/CentOS_8/network:osmocom:nightly.repo Change-Id: Ic9ffa79cfe5a74bdc59d5ddd505a9af7be574bf9 --- centos8-build/Dockerfile | 11 +++++++++-- centos8-obs-latest/Dockerfile | 11 +++++++++-- osmo-ran/Dockerfile | 10 +++++++++- osmo-ran/split/ran-bsc_mgw/Dockerfile | 10 +++++++++- osmo-ran/split/ran-bts_pcu/Dockerfile | 10 +++++++++- osmo-ran/split/ran-trx-ipc/Dockerfile | 10 +++++++++- osmo-ran/split/ran-trx-uhd/Dockerfile | 10 +++++++++- 7 files changed, 63 insertions(+), 9 deletions(-) diff --git a/centos8-build/Dockerfile b/centos8-build/Dockerfile index 68920e0a..0e8b5f5e 100644 --- a/centos8-build/Dockerfile +++ b/centos8-build/Dockerfile @@ -10,8 +10,15 @@ RUN echo "metadata_expire=60" >> /etc/dnf/dnf.conf && cat /etc/dnf/dnf.conf # Make additional development libraries available from PowerTools and Osmocom nightly (e.g. libdbi) RUN dnf install -y dnf-utils wget && \ yum config-manager --set-enabled powertools && \ - cd /etc/yum.repos.d/ && \ - wget $OSMOCOM_REPO_MIRROR/repositories/network:osmocom:nightly/CentOS_8/network:osmocom:nightly.repo + export MIRROR_HTTPS="$(echo $OSMOCOM_REPO_MIRROR | sed s/^http:/https:/)" && \ + { echo "[network_osmocom_nightly]"; \ + echo "name=Nightly packages of the Osmocom project (CentOS_8)"; \ + echo "type=rpm-md"; \ + echo "baseurl=${OSMOCOM_REPO_MIRROR}/repositories/network:/osmocom:/nightly/CentOS_8/"; \ + echo "gpgcheck=1"; \ + echo "gpgkey=${MIRROR_HTTPS}/repositories/network:/osmocom:/nightly/CentOS_8/repodata/repomd.xml.key"; \ + echo "enabled=1"; \ + } > /etc/yum.repos.d/network:osmocom:nightly.repo RUN dnf install -y \ autoconf \ diff --git a/centos8-obs-latest/Dockerfile b/centos8-obs-latest/Dockerfile index a9dfc9be..6e4f27e3 100644 --- a/centos8-obs-latest/Dockerfile +++ b/centos8-obs-latest/Dockerfile @@ -11,8 +11,15 @@ RUN echo "metadata_expire=60" >> /etc/dnf/dnf.conf && cat /etc/dnf/dnf.conf # Osmocom latest OBS repository RUN dnf install -y dnf-utils wget && \ yum config-manager --set-enabled powertools && \ - cd /etc/yum.repos.d/ && \ - wget $OSMOCOM_REPO_MIRROR/repositories/network:osmocom:latest/CentOS_8/network:osmocom:latest.repo + export MIRROR_HTTPS="$(echo $OSMOCOM_REPO_MIRROR | sed s/^http:/https:/)" && \ + { echo "[network_osmocom_latest]"; \ + echo "name=Latest tagged versions of osmocom cellular network elements (CentOS_8)"; \ + echo "type=rpm-md"; \ + echo "baseurl=${OSMOCOM_REPO_MIRROR}/repositories/network:/osmocom:/latest/CentOS_8/"; \ + echo "gpgcheck=1"; \ + echo "gpgkey=${MIRROR_HTTPS}/repositories/network:/osmocom:/latest/CentOS_8/repodata/repomd.xml.key"; \ + echo "enabled=1"; \ + } > /etc/yum.repos.d/network:osmocom:latest.repo RUN dnf install -y \ telnet diff --git a/osmo-ran/Dockerfile b/osmo-ran/Dockerfile index 3a5dac9e..5b28b44b 100644 --- a/osmo-ran/Dockerfile +++ b/osmo-ran/Dockerfile @@ -26,7 +26,15 @@ RUN case "$DISTRO" in \ dnf install -y dnf-utils wget && \ yum config-manager --set-enabled PowerTools && \ cd /etc/yum.repos.d/ && \ - wget ${OSMOCOM_REPO_CENTOS}/network:osmocom:$OSMOCOM_REPO_VERSION.repo \ + export MIRROR_HTTPS="$(echo $OSMOCOM_REPO_CENTOS | sed s/^http:/https:/)" && \ + { echo "[network_osmocom_${OSMOCOM_REPO_VERSION}]"; \ + echo "name=Osmocom ${OSMOCOM_REPO_VERSION}"; \ + echo "type=rpm-md"; \ + echo "baseurl=${OSMOCOM_REPO_CENTOS}"; \ + echo "gpgcheck=1"; \ + echo "gpgkey=${MIRROR_HTTPS}repodata/repomd.xml.key"; \ + echo "enabled=1"; \ + } > "/etc/yum.repos.d/network:osmocom:${OSMOCOM_REPO_VERSION}.repo" \ ;; \ esac diff --git a/osmo-ran/split/ran-bsc_mgw/Dockerfile b/osmo-ran/split/ran-bsc_mgw/Dockerfile index b433d72f..eec69ec2 100644 --- a/osmo-ran/split/ran-bsc_mgw/Dockerfile +++ b/osmo-ran/split/ran-bsc_mgw/Dockerfile @@ -26,7 +26,15 @@ RUN case "$DISTRO" in \ dnf install -y dnf-utils wget && \ yum config-manager --set-enabled PowerTools && \ cd /etc/yum.repos.d/ && \ - wget ${OSMOCOM_REPO_CENTOS}/network:osmocom:$OSMOCOM_REPO_VERSION.repo \ + export MIRROR_HTTPS="$(echo $OSMOCOM_REPO_CENTOS | sed s/^http:/https:/)" && \ + { echo "[network_osmocom_${OSMOCOM_REPO_VERSION}]"; \ + echo "name=Osmocom ${OSMOCOM_REPO_VERSION}"; \ + echo "type=rpm-md"; \ + echo "baseurl=${OSMOCOM_REPO_CENTOS}"; \ + echo "gpgcheck=1"; \ + echo "gpgkey=${MIRROR_HTTPS}repodata/repomd.xml.key"; \ + echo "enabled=1"; \ + } > "/etc/yum.repos.d/network:osmocom:${OSMOCOM_REPO_VERSION}.repo" \ ;; \ esac diff --git a/osmo-ran/split/ran-bts_pcu/Dockerfile b/osmo-ran/split/ran-bts_pcu/Dockerfile index f30e3d29..c3a12191 100644 --- a/osmo-ran/split/ran-bts_pcu/Dockerfile +++ b/osmo-ran/split/ran-bts_pcu/Dockerfile @@ -26,7 +26,15 @@ RUN case "$DISTRO" in \ dnf install -y dnf-utils wget && \ yum config-manager --set-enabled PowerTools && \ cd /etc/yum.repos.d/ && \ - wget ${OSMOCOM_REPO_CENTOS}/network:osmocom:$OSMOCOM_REPO_VERSION.repo \ + export MIRROR_HTTPS="$(echo $OSMOCOM_REPO_CENTOS | sed s/^http:/https:/)" && \ + { echo "[network_osmocom_${OSMOCOM_REPO_VERSION}]"; \ + echo "name=Osmocom ${OSMOCOM_REPO_VERSION}"; \ + echo "type=rpm-md"; \ + echo "baseurl=${OSMOCOM_REPO_CENTOS}"; \ + echo "gpgcheck=1"; \ + echo "gpgkey=${MIRROR_HTTPS}repodata/repomd.xml.key"; \ + echo "enabled=1"; \ + } > "/etc/yum.repos.d/network:osmocom:${OSMOCOM_REPO_VERSION}.repo" \ ;; \ esac diff --git a/osmo-ran/split/ran-trx-ipc/Dockerfile b/osmo-ran/split/ran-trx-ipc/Dockerfile index 0720ccc1..b3677b44 100644 --- a/osmo-ran/split/ran-trx-ipc/Dockerfile +++ b/osmo-ran/split/ran-trx-ipc/Dockerfile @@ -26,7 +26,15 @@ RUN case "$DISTRO" in \ dnf install -y dnf-utils wget && \ yum config-manager --set-enabled PowerTools && \ cd /etc/yum.repos.d/ && \ - wget ${OSMOCOM_REPO_CENTOS}/network:osmocom:$OSMOCOM_REPO_VERSION.repo \ + export MIRROR_HTTPS="$(echo $OSMOCOM_REPO_CENTOS | sed s/^http:/https:/)" && \ + { echo "[network_osmocom_${OSMOCOM_REPO_VERSION}]"; \ + echo "name=Osmocom ${OSMOCOM_REPO_VERSION}"; \ + echo "type=rpm-md"; \ + echo "baseurl=${OSMOCOM_REPO_CENTOS}"; \ + echo "gpgcheck=1"; \ + echo "gpgkey=${MIRROR_HTTPS}repodata/repomd.xml.key"; \ + echo "enabled=1"; \ + } > "/etc/yum.repos.d/network:osmocom:${OSMOCOM_REPO_VERSION}.repo" \ ;; \ esac diff --git a/osmo-ran/split/ran-trx-uhd/Dockerfile b/osmo-ran/split/ran-trx-uhd/Dockerfile index 54312101..92791126 100644 --- a/osmo-ran/split/ran-trx-uhd/Dockerfile +++ b/osmo-ran/split/ran-trx-uhd/Dockerfile @@ -26,7 +26,15 @@ RUN case "$DISTRO" in \ dnf install -y dnf-utils wget && \ yum config-manager --set-enabled PowerTools && \ cd /etc/yum.repos.d/ && \ - wget ${OSMOCOM_REPO_CENTOS}/network:osmocom:$OSMOCOM_REPO_VERSION.repo \ + export MIRROR_HTTPS="$(echo $OSMOCOM_REPO_CENTOS | sed s/^http:/https:/)" && \ + { echo "[network_osmocom_${OSMOCOM_REPO_VERSION}]"; \ + echo "name=Osmocom ${OSMOCOM_REPO_VERSION}"; \ + echo "type=rpm-md"; \ + echo "baseurl=${OSMOCOM_REPO_CENTOS}"; \ + echo "gpgcheck=1"; \ + echo "gpgkey=${MIRROR_HTTPS}repodata/repomd.xml.key"; \ + echo "enabled=1"; \ + } > "/etc/yum.repos.d/network:osmocom:${OSMOCOM_REPO_VERSION}.repo" \ ;; \ esac