From 6e4104c69c7be3b903fd18a26c05376f57485208 Mon Sep 17 00:00:00 2001 From: rferraz Date: Tue, 12 Jul 2022 01:56:21 -0300 Subject: [PATCH] vRAN tools container image stx-debian-dev This is a new container image, which includes a selection of Dev tools package dependencies on Debian, for the vRAN tools enablement with Intel hardware. It is a continuation of story 2009990, which introduced this feature on CentOS. Test Plan: Successfully build image on Debian (PASSED) Story: 2010138 Task: 45768 Signed-off-by: rferraz Change-Id: I1405dfda9a788c0366f0c52aa59e526107144c88 --- debian_stable_docker_images.inc | 1 + .../stx-debian-dev/debian/docker/Dockerfile | 104 ++++++++++++++++++ .../stx-debian-dev/debian/docker/stx-dev.list | 3 + .../debian/stx-debian-dev.stable_docker_image | 2 + 4 files changed, 110 insertions(+) create mode 100644 debian_stable_docker_images.inc create mode 100644 tools/base-images/stx-debian-dev/debian/docker/Dockerfile create mode 100644 tools/base-images/stx-debian-dev/debian/docker/stx-dev.list create mode 100644 tools/base-images/stx-debian-dev/debian/stx-debian-dev.stable_docker_image diff --git a/debian_stable_docker_images.inc b/debian_stable_docker_images.inc new file mode 100644 index 00000000..ceed0a7b --- /dev/null +++ b/debian_stable_docker_images.inc @@ -0,0 +1 @@ +tools/base-images/stx-debian-dev diff --git a/tools/base-images/stx-debian-dev/debian/docker/Dockerfile b/tools/base-images/stx-debian-dev/debian/docker/Dockerfile new file mode 100644 index 00000000..027ecd1d --- /dev/null +++ b/tools/base-images/stx-debian-dev/debian/docker/Dockerfile @@ -0,0 +1,104 @@ +ARG BASE +FROM ${BASE} + +# Install stx-dev repo (StarlingX-Debian CENGN repo) +COPY stx-dev.list /etc/apt/sources.list.d/stx-dev.list.disabled + +# +# repos: +# /etc/apt/sources.list.d/ +# debian.list.disabled - vanilla debian repo +# stx-x.list.disabled - starlingx binary & build repos +# +# To enable a repo list: +# cp /etc/apt/sources.list.d/$repo_list.disabled \ +# /etc/apt/sources.list.d/$repo_list +# +# To disable a repo list: +# rm -f /etc/apt/sources.list.d/$repo_list +# + +# Upgrade base packages to versions in managed repos +RUN set -ex && \ + cp -f /etc/apt/sources.list.d/stx.list.disabled /etc/apt/sources.list.d/stx.list && \ + apt-get update -y && \ + apt-get upgrade -y && \ + rm -f /etc/apt/sources.list.d/stx.list && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# Install packages provided only by Debian. +RUN set -ex && \ + cp -f /etc/apt/sources.list.d/debian.list.disabled /etc/apt/sources.list.d/debian.list && \ + cp -f /etc/apt/sources.list.d/stx.list.disabled /etc/apt/sources.list.d/stx.list && \ + apt-get update -y && \ + apt-get install -y \ + git \ + git-review \ + unzip \ + autogen \ + autoconf-archive \ + linux-perf-5.10 \ + libcap-dev \ + uuid-dev \ + ncurses-dev \ + dwarves \ + cmake \ + libhwloc-dev \ + libjson-c-dev \ + doxygen \ + sphinx-doc \ + && \ + rm -f /etc/apt/sources.list.d/debian.list && \ + rm -f /etc/apt/sources.list.d/stx.list && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# Enable stx repo only. Packages installs below this point will use +# only the managed locally-built & 3rd-party repos. +RUN set -ex && \ + cp /etc/apt/sources.list.d/stx.list.disabled /etc/apt/sources.list.d/stx.list + +# Install required packages +RUN set -ex && \ + apt-get update -y && \ + apt-get upgrade -y && \ + apt-get install -y \ + sudo \ + bash \ + python3-yaml \ + curl \ + wget \ + make \ + automake \ + bc \ + bison \ + isomd5sum \ + gettext \ + mkisofs \ + gcc \ + g++ \ + rsync \ + vim \ + linux-headers-5.10.0-6 \ + fakeroot \ + flex \ + libelf-dev \ + libssl-dev \ + xz-utils \ + sphinx-common \ + && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# Enable StarlingX-Debian CENGN repo +# Packages installs below this point will use DEB packages on CENGN repo. +RUN set -ex && \ + cp -f /etc/apt/sources.list.d/stx-dev.list.disabled /etc/apt/sources.list.d/stx.list && \ + apt-get update && \ + apt-get clean && \ + rm -rf \ + /var/lib/apt/lists/* \ + /var/log/* \ + /var/tmp/* \ + /tmp/* diff --git a/tools/base-images/stx-debian-dev/debian/docker/stx-dev.list b/tools/base-images/stx-debian-dev/debian/docker/stx-dev.list new file mode 100644 index 00000000..6acea0c2 --- /dev/null +++ b/tools/base-images/stx-debian-dev/debian/docker/stx-dev.list @@ -0,0 +1,3 @@ +deb [trusted=yes check-valid-until=0] http://mirror.starlingx.cengn.ca/mirror/starlingx/master/debian/monolithic/latest_build/inputs/packages ./ +deb [trusted=yes check-valid-until=0] http://mirror.starlingx.cengn.ca/mirror/starlingx/master/debian/monolithic/latest_build/outputs/std/packages ./ +deb [trusted=yes check-valid-until=0] http://mirror.starlingx.cengn.ca/mirror/starlingx/master/debian/monolithic/latest_build/outputs/rt/packages ./ diff --git a/tools/base-images/stx-debian-dev/debian/stx-debian-dev.stable_docker_image b/tools/base-images/stx-debian-dev/debian/stx-debian-dev.stable_docker_image new file mode 100644 index 00000000..a1479faf --- /dev/null +++ b/tools/base-images/stx-debian-dev/debian/stx-debian-dev.stable_docker_image @@ -0,0 +1,2 @@ +BUILDER=docker +LABEL=stx-debian-dev \ No newline at end of file