Create docker-base-bullseye and docker-config-engine-bullseye (#9666)
* [slave-bullseye]: Remove Python 2 It shouldn't be needed anymore. Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com> * [dockers]: Add docker-base-bullseye and docker-config-engine-bullseye Also upgrade socat from 1.7.3.1 to 1.7.4.1 Signed-off-by: Saikrishna Arcot <sarcot@microsoft.com>
This commit is contained in:
parent
94b778c39b
commit
fee2441717
112
dockers/docker-base-bullseye/Dockerfile.j2
Normal file
112
dockers/docker-base-bullseye/Dockerfile.j2
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
{% from "dockers/dockerfile-macros.j2" import install_debian_packages, install_python_wheels, copy_files %}
|
||||||
|
{% if CONFIGURED_ARCH == "armhf" and MULTIARCH_QEMU_ENVIRON == "y" %}
|
||||||
|
FROM multiarch/debian-debootstrap:armhf-bullseye
|
||||||
|
{% elif CONFIGURED_ARCH == "arm64" and MULTIARCH_QEMU_ENVIRON == "y" %}
|
||||||
|
FROM multiarch/debian-debootstrap:arm64-bullseye
|
||||||
|
{% else %}
|
||||||
|
FROM {{DOCKER_BASE_ARCH}}/debian:bullseye
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
# Clean documentation in FROM image
|
||||||
|
RUN find /usr/share/doc -depth \( -type f -o -type l \) ! -name copyright | xargs rm || true
|
||||||
|
|
||||||
|
# Clean doc directories that are empty or only contain empty directories
|
||||||
|
RUN while [ -n "$(find /usr/share/doc -depth -type d -empty -print -exec rmdir {} +)" ]; do :; done && \
|
||||||
|
rm -rf \
|
||||||
|
/usr/share/man/* \
|
||||||
|
/usr/share/groff/* \
|
||||||
|
/usr/share/info/* \
|
||||||
|
/usr/share/lintian/* \
|
||||||
|
/usr/share/linda/* \
|
||||||
|
/var/cache/man/* \
|
||||||
|
/usr/share/locale/*
|
||||||
|
|
||||||
|
# Make apt-get non-interactive
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
# Configure data sources for apt/dpkg
|
||||||
|
COPY ["dpkg_01_drop", "/etc/dpkg/dpkg.cfg.d/01_drop"]
|
||||||
|
{% if CONFIGURED_ARCH == "armhf" %}
|
||||||
|
COPY ["sources.list.armhf", "/etc/apt/sources.list"]
|
||||||
|
{% elif CONFIGURED_ARCH == "arm64" %}
|
||||||
|
COPY ["sources.list.arm64", "/etc/apt/sources.list"]
|
||||||
|
{% else %}
|
||||||
|
COPY ["sources.list", "/etc/apt/sources.list"]
|
||||||
|
{% endif %}
|
||||||
|
COPY ["no_install_recommend_suggest", "/etc/apt/apt.conf.d"]
|
||||||
|
COPY ["no-check-valid-until", "/etc/apt/apt.conf.d"]
|
||||||
|
|
||||||
|
# Update apt cache and
|
||||||
|
# pre-install fundamental packages
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get -y install \
|
||||||
|
curl \
|
||||||
|
less \
|
||||||
|
perl \
|
||||||
|
procps \
|
||||||
|
python3 \
|
||||||
|
python3-distutils \
|
||||||
|
python3-pip \
|
||||||
|
rsyslog \
|
||||||
|
vim-tiny \
|
||||||
|
# Install redis-tools
|
||||||
|
redis-tools \
|
||||||
|
# common dependencies
|
||||||
|
libdaemon0 \
|
||||||
|
libdbus-1-3 \
|
||||||
|
libjansson4 \
|
||||||
|
# ip and ifconfig utility missing in docker for arm arch
|
||||||
|
iproute2 \
|
||||||
|
net-tools \
|
||||||
|
# for processing/handling json files in bash environment
|
||||||
|
jq \
|
||||||
|
# for sairedis zmq rpc channel
|
||||||
|
libzmq5
|
||||||
|
|
||||||
|
# Upgrade pip via PyPI and uninstall the Debian version
|
||||||
|
RUN pip3 install --upgrade pip
|
||||||
|
RUN apt-get purge -y python3-pip
|
||||||
|
|
||||||
|
# setuptools and wheel are necessary for installing some Python wheel packages
|
||||||
|
RUN pip3 install --no-cache-dir setuptools==49.6.00
|
||||||
|
RUN pip3 install --no-cache-dir wheel==0.35.1
|
||||||
|
|
||||||
|
# For templating
|
||||||
|
RUN pip3 install j2cli
|
||||||
|
|
||||||
|
# Install supervisor
|
||||||
|
RUN pip3 install supervisor==4.2.1
|
||||||
|
|
||||||
|
# Add support for supervisord to handle startup dependencies
|
||||||
|
RUN pip3 install supervisord-dependent-startup==1.4.0
|
||||||
|
|
||||||
|
RUN mkdir -p /etc/supervisor /var/log/supervisor
|
||||||
|
|
||||||
|
RUN apt-get -y purge \
|
||||||
|
exim4 \
|
||||||
|
exim4-base \
|
||||||
|
exim4-config \
|
||||||
|
exim4-daemon-light
|
||||||
|
|
||||||
|
{% if docker_base_bullseye_debs.strip() -%}
|
||||||
|
# Copy locally-built Debian package dependencies
|
||||||
|
{{ copy_files("debs/", docker_base_bullseye_debs.split(' '), "/debs/") }}
|
||||||
|
|
||||||
|
# Install built Debian packages and implicitly install their dependencies
|
||||||
|
{{ install_debian_packages(docker_base_bullseye_debs.split(' ')) }}
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
|
# Clean up apt
|
||||||
|
# Remove /var/lib/apt/lists/*, could be obsoleted for derived images
|
||||||
|
RUN apt-get clean -y && \
|
||||||
|
apt-get autoclean -y && \
|
||||||
|
apt-get autoremove -y && \
|
||||||
|
rm -rf /var/lib/apt/lists/* /tmp/*
|
||||||
|
|
||||||
|
COPY ["etc/rsyslog.conf", "/etc/rsyslog.conf"]
|
||||||
|
COPY ["etc/rsyslog.d/*", "/etc/rsyslog.d/"]
|
||||||
|
COPY ["root/.vimrc", "/root/.vimrc"]
|
||||||
|
|
||||||
|
RUN ln /usr/bin/vim.tiny /usr/bin/vim
|
||||||
|
|
||||||
|
COPY ["etc/supervisor/supervisord.conf", "/etc/supervisor/"]
|
13
dockers/docker-base-bullseye/LICENSE
Normal file
13
dockers/docker-base-bullseye/LICENSE
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
Copyright 2016 Microsoft, Inc.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
29
dockers/docker-base-bullseye/dpkg_01_drop
Normal file
29
dockers/docker-base-bullseye/dpkg_01_drop
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
## Drop unnecessary files
|
||||||
|
## ref: https://wiki.ubuntu.com/ReducingDiskFootprint
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
path-exclude /usr/share/doc/*
|
||||||
|
# we need to keep copyright files for legal reasons
|
||||||
|
path-include /usr/share/doc/*/copyright
|
||||||
|
path-exclude /usr/share/man/*
|
||||||
|
path-exclude /usr/share/groff/*
|
||||||
|
path-exclude /usr/share/info/*
|
||||||
|
# lintian stuff is small, but really unnecessary
|
||||||
|
path-exclude /usr/share/lintian/*
|
||||||
|
path-exclude /usr/share/linda/*
|
||||||
|
|
||||||
|
## Translations
|
||||||
|
path-exclude /usr/share/locale/*
|
||||||
|
|
||||||
|
## Landscape
|
||||||
|
path-exclude /usr/share/pyshared/twisted/test*
|
||||||
|
path-exclude /usr/lib/python*/dist-packages/twisted/test*
|
||||||
|
path-exclude /usr/share/pyshared/twisted/*/test*
|
||||||
|
path-exclude /usr/lib/python*/dist-packages/twisted/*/test*
|
||||||
|
|
||||||
|
## install the configuration file if it’s currently missing
|
||||||
|
force-confmiss
|
||||||
|
## combined with confold: overwrite configuration files that you have not modified
|
||||||
|
force-confdef
|
||||||
|
## do not modify the current configuration file, the new version is installed with a .dpkg-dist suffix
|
||||||
|
force-confold
|
76
dockers/docker-base-bullseye/etc/rsyslog.conf
Normal file
76
dockers/docker-base-bullseye/etc/rsyslog.conf
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
#
|
||||||
|
# /etc/rsyslog.conf Configuration file for rsyslog.
|
||||||
|
#
|
||||||
|
# For more information see
|
||||||
|
# /usr/share/doc/rsyslog-doc/html/rsyslog_conf.html
|
||||||
|
|
||||||
|
|
||||||
|
#################
|
||||||
|
#### MODULES ####
|
||||||
|
#################
|
||||||
|
|
||||||
|
$ModLoad imuxsock # provides support for local system logging
|
||||||
|
|
||||||
|
#
|
||||||
|
# Set a rate limit on messages from the container
|
||||||
|
#
|
||||||
|
$SystemLogRateLimitInterval 300
|
||||||
|
$SystemLogRateLimitBurst 20000
|
||||||
|
|
||||||
|
#$ModLoad imklog # provides kernel logging support
|
||||||
|
#$ModLoad immark # provides --MARK-- message capability
|
||||||
|
|
||||||
|
# provides UDP syslog reception
|
||||||
|
#$ModLoad imudp
|
||||||
|
#$UDPServerRun 514
|
||||||
|
|
||||||
|
# provides TCP syslog reception
|
||||||
|
#$ModLoad imtcp
|
||||||
|
#$InputTCPServerRun 514
|
||||||
|
|
||||||
|
|
||||||
|
###########################
|
||||||
|
#### GLOBAL DIRECTIVES ####
|
||||||
|
###########################
|
||||||
|
|
||||||
|
# Set remote syslog server
|
||||||
|
template (name="ForwardFormatInContainer" type="string" string="<%PRI%>%TIMESTAMP:::date-rfc3339% %HOSTNAME% %syslogtag%%msg:::sp-if-no-1st-sp%%msg%")
|
||||||
|
*.* action(type="omfwd" target="127.0.0.1" port="514" protocol="udp" Template="ForwardFormatInContainer")
|
||||||
|
|
||||||
|
#
|
||||||
|
# Use traditional timestamp format.
|
||||||
|
# To enable high precision timestamps, comment out the following line.
|
||||||
|
#
|
||||||
|
#$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
|
||||||
|
|
||||||
|
# Define a custom template
|
||||||
|
$template SONiCFileFormat,"%TIMESTAMP%.%timestamp:::date-subseconds% %HOSTNAME% %syslogseverity-text:::uppercase% %syslogtag%%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n"
|
||||||
|
$ActionFileDefaultTemplate SONiCFileFormat
|
||||||
|
|
||||||
|
#
|
||||||
|
# Set the default permissions for all log files.
|
||||||
|
#
|
||||||
|
$FileOwner root
|
||||||
|
$FileGroup adm
|
||||||
|
$FileCreateMode 0640
|
||||||
|
$DirCreateMode 0755
|
||||||
|
$Umask 0022
|
||||||
|
|
||||||
|
#
|
||||||
|
# Where to place spool and state files
|
||||||
|
#
|
||||||
|
$WorkDirectory /var/spool/rsyslog
|
||||||
|
|
||||||
|
#
|
||||||
|
# Include all config files in /etc/rsyslog.d/
|
||||||
|
#
|
||||||
|
$IncludeConfig /etc/rsyslog.d/*.conf
|
||||||
|
|
||||||
|
#
|
||||||
|
# Suppress duplicate messages and report "message repeated n times"
|
||||||
|
#
|
||||||
|
$RepeatedMsgReduction on
|
||||||
|
|
||||||
|
###############
|
||||||
|
#### RULES ####
|
||||||
|
###############
|
@ -0,0 +1,9 @@
|
|||||||
|
module(load="imfile" mode="inotify") # Ensure "inotify" mode is used
|
||||||
|
$WorkDirectory /var/log/supervisor
|
||||||
|
# Start Monitoring the file
|
||||||
|
input(type="imfile"
|
||||||
|
File="/var/log/supervisor/supervisord.log"
|
||||||
|
Tag="supervisord"
|
||||||
|
Severity="info"
|
||||||
|
Facility="local0"
|
||||||
|
PersistStateInterval="1")
|
29
dockers/docker-base-bullseye/etc/supervisor/supervisord.conf
Normal file
29
dockers/docker-base-bullseye/etc/supervisor/supervisord.conf
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
; supervisor config file
|
||||||
|
|
||||||
|
[unix_http_server]
|
||||||
|
file=/var/run/supervisor.sock ; (the path to the socket file)
|
||||||
|
chmod=0700 ; socket file mode (default 0700)
|
||||||
|
|
||||||
|
[supervisord]
|
||||||
|
logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log)
|
||||||
|
pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid)
|
||||||
|
childlogdir=/var/log/supervisor ; ('AUTO' child log dir, default $TEMP)
|
||||||
|
user=root
|
||||||
|
|
||||||
|
; the below section must remain in the config file for RPC
|
||||||
|
; (supervisorctl/web interface) to work, additional interfaces may be
|
||||||
|
; added by defining them in separate rpcinterface: sections
|
||||||
|
[rpcinterface:supervisor]
|
||||||
|
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
|
||||||
|
|
||||||
|
[supervisorctl]
|
||||||
|
serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket
|
||||||
|
|
||||||
|
; The [include] section can just contain the "files" setting. This
|
||||||
|
; setting can list multiple files (separated by whitespace or
|
||||||
|
; newlines). It can also contain wildcards. The filenames are
|
||||||
|
; interpreted as relative to this file. Included files *cannot*
|
||||||
|
; include files themselves.
|
||||||
|
|
||||||
|
[include]
|
||||||
|
files = /etc/supervisor/conf.d/*.conf
|
4
dockers/docker-base-bullseye/no-check-valid-until
Normal file
4
dockers/docker-base-bullseye/no-check-valid-until
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
# Instruct apt-get to NOT check the "Valid Until" date in Release files
|
||||||
|
# Once the Debian team archives a repo, they stop updating this date
|
||||||
|
|
||||||
|
Acquire::Check-Valid-Until "false";
|
@ -0,0 +1,5 @@
|
|||||||
|
# Instruct apt-get to NOT install "recommended" or "suggested" packages by
|
||||||
|
# default when installing a package.
|
||||||
|
|
||||||
|
APT::Install-Recommends "false";
|
||||||
|
APT::Install-Suggests "false";
|
2
dockers/docker-base-bullseye/root/.vimrc
Normal file
2
dockers/docker-base-bullseye/root/.vimrc
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
" enable vim features
|
||||||
|
set nocompatible
|
13
dockers/docker-base-bullseye/sources.list
Normal file
13
dockers/docker-base-bullseye/sources.list
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
## Debian mirror on Microsoft Azure
|
||||||
|
## Ref: http://debian-archive.trafficmanager.net/
|
||||||
|
|
||||||
|
deb [arch=amd64] http://debian-archive.trafficmanager.net/debian/ bullseye main contrib non-free
|
||||||
|
deb-src [arch=amd64] http://debian-archive.trafficmanager.net/debian/ bullseye main contrib non-free
|
||||||
|
deb [arch=amd64] http://debian-archive.trafficmanager.net/debian-security/ bullseye-security main contrib non-free
|
||||||
|
deb-src [arch=amd64] http://debian-archive.trafficmanager.net/debian-security/ bullseye-security main contrib non-free
|
||||||
|
deb [arch=amd64] http://debian-archive.trafficmanager.net/debian/ bullseye-backports main contrib non-free
|
||||||
|
|
||||||
|
# Debian mirror supports multiple versions for a package
|
||||||
|
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian bullseye main contrib non-free
|
||||||
|
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian bullseye-updates main contrib non-free
|
||||||
|
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian bullseye-backports main contrib non-free
|
9
dockers/docker-base-bullseye/sources.list.arm64
Normal file
9
dockers/docker-base-bullseye/sources.list.arm64
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
## Debian mirror for ARM repo
|
||||||
|
|
||||||
|
# ARM repo
|
||||||
|
deb [arch=arm64] http://deb.debian.org/debian bullseye main contrib non-free
|
||||||
|
deb [arch=arm64] http://deb.debian.org/debian bullseye-updates main contrib non-free
|
||||||
|
deb [arch=arm64] http://security.debian.org bullseye-security main contrib non-free
|
||||||
|
deb [arch=arm64] http://deb.debian.org/debian bullseye-backports main
|
||||||
|
deb [arch=arm64] http://packages.trafficmanager.net/debian/debian bullseye main contrib non-free
|
||||||
|
deb [arch=arm64] http://packages.trafficmanager.net/debian/debian bullseye-updates main contrib non-free
|
9
dockers/docker-base-bullseye/sources.list.armhf
Normal file
9
dockers/docker-base-bullseye/sources.list.armhf
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
## Debian mirror for ARM repo
|
||||||
|
|
||||||
|
# ARM repo
|
||||||
|
deb [arch=armhf] http://deb.debian.org/debian bullseye main contrib non-free
|
||||||
|
deb [arch=armhf] http://deb.debian.org/debian bullseye-updates main contrib non-free
|
||||||
|
deb [arch=armhf] http://security.debian.org bullseye-security main contrib non-free
|
||||||
|
deb [arch=armhf] http://deb.debian.org/debian bullseye-backports main
|
||||||
|
deb [arch=armhf] http://packages.trafficmanager.net/debian/debian bullseye main contrib non-free
|
||||||
|
deb [arch=armhf] http://packages.trafficmanager.net/debian/debian bullseye-updates main contrib non-free
|
52
dockers/docker-config-engine-bullseye/Dockerfile.j2
Normal file
52
dockers/docker-config-engine-bullseye/Dockerfile.j2
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
{% from "dockers/dockerfile-macros.j2" import install_debian_packages, install_python_wheels, copy_files %}
|
||||||
|
FROM docker-base-bullseye
|
||||||
|
|
||||||
|
## Make apt-get non-interactive
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get install -y \
|
||||||
|
apt-utils \
|
||||||
|
build-essential \
|
||||||
|
python3-dev
|
||||||
|
|
||||||
|
{%- if CONFIGURED_ARCH == "armhf" or CONFIGURED_ARCH == "arm64" %}
|
||||||
|
RUN apt-get install -y \
|
||||||
|
libxslt-dev \
|
||||||
|
libz-dev
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
|
# For sonic-config-engine Python 3 package
|
||||||
|
# Explicitly install pyangbind here, as pyangbind causes enum34 to be installed.
|
||||||
|
# enum34 causes Python 're' package to not work properly as it redefines an incompatible enum.py module
|
||||||
|
# https://github.com/robshakir/pyangbind/issues/232
|
||||||
|
RUN pip3 install pyangbind==0.8.1
|
||||||
|
RUN pip3 uninstall -y enum34
|
||||||
|
|
||||||
|
{% if docker_config_engine_bullseye_debs.strip() %}
|
||||||
|
# Copy locally-built Debian package dependencies
|
||||||
|
{{ copy_files("debs/", docker_config_engine_bullseye_debs.split(' '), "/debs/") }}
|
||||||
|
|
||||||
|
# Install locally-built Debian packages and implicitly install their dependencies
|
||||||
|
{{ install_debian_packages(docker_config_engine_bullseye_debs.split(' ')) }}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if docker_config_engine_bullseye_whls.strip() %}
|
||||||
|
# Copy locally-built Python wheel dependencies
|
||||||
|
{{ copy_files("python-wheels/", docker_config_engine_bullseye_whls.split(' '), "/python-wheels/") }}
|
||||||
|
|
||||||
|
# Install locally-built Python wheel dependencies
|
||||||
|
{{ install_python_wheels(docker_config_engine_bullseye_whls.split(' ')) }}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
# Copy files
|
||||||
|
COPY ["files/swss_vars.j2", "/usr/share/sonic/templates/"]
|
||||||
|
|
||||||
|
## Clean up
|
||||||
|
RUN apt-get purge -y \
|
||||||
|
python3-dev \
|
||||||
|
build-essential && \
|
||||||
|
apt-get clean -y && \
|
||||||
|
apt-get autoclean -y && \
|
||||||
|
apt-get autoremove -y && \
|
||||||
|
rm -rf /debs /python-wheels
|
9
rules/docker-base-bullseye.dep
Normal file
9
rules/docker-base-bullseye.dep
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
|
||||||
|
DPATH := $($(DOCKER_BASE_BULLSEYE)_PATH)
|
||||||
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) rules/docker-base-bullseye.mk rules/docker-base-bullseye.dep
|
||||||
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||||
|
DEP_FILES += $(shell git ls-files $(DPATH))
|
||||||
|
|
||||||
|
$(DOCKER_BASE_BULLSEYE)_CACHE_MODE := GIT_CONTENT_SHA
|
||||||
|
$(DOCKER_BASE_BULLSEYE)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||||
|
$(DOCKER_BASE_BULLSEYE)_DEP_FILES := $(DEP_FILES)
|
16
rules/docker-base-bullseye.mk
Normal file
16
rules/docker-base-bullseye.mk
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
# Docker base image (based on Debian Bullseye)
|
||||||
|
|
||||||
|
DOCKER_BASE_BULLSEYE = docker-base-bullseye.gz
|
||||||
|
$(DOCKER_BASE_BULLSEYE)_PATH = $(DOCKERS_PATH)/docker-base-bullseye
|
||||||
|
|
||||||
|
$(DOCKER_BASE_BULLSEYE)_DEPENDS += $(SOCAT)
|
||||||
|
|
||||||
|
GDB = gdb
|
||||||
|
GDBSERVER = gdbserver
|
||||||
|
VIM = vim
|
||||||
|
OPENSSH = openssh-client
|
||||||
|
SSHPASS = sshpass
|
||||||
|
STRACE = strace
|
||||||
|
$(DOCKER_BASE_BULLSEYE)_DBG_IMAGE_PACKAGES += $(GDB) $(GDBSERVER) $(VIM) $(OPENSSH) $(SSHPASS) $(STRACE)
|
||||||
|
|
||||||
|
SONIC_DOCKER_IMAGES += $(DOCKER_BASE_BULLSEYE)
|
9
rules/docker-config-engine-bullseye.dep
Normal file
9
rules/docker-config-engine-bullseye.dep
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
|
||||||
|
DPATH := $($(DOCKER_CONFIG_ENGINE_BULLSEYE)_PATH)
|
||||||
|
DEP_FILES := $(SONIC_COMMON_FILES_LIST) rules/docker-config-engine-bullseye.mk rules/docker-config-engine-bullseye.dep
|
||||||
|
DEP_FILES += $(SONIC_COMMON_BASE_FILES_LIST)
|
||||||
|
DEP_FILES += $(shell git ls-files $(DPATH))
|
||||||
|
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_CACHE_MODE := GIT_CONTENT_SHA
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_DEP_FLAGS := $(SONIC_COMMON_FLAGS_LIST)
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_DEP_FILES := $(DEP_FILES)
|
25
rules/docker-config-engine-bullseye.mk
Normal file
25
rules/docker-config-engine-bullseye.mk
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
# docker image for sonic config engine
|
||||||
|
|
||||||
|
DOCKER_CONFIG_ENGINE_BULLSEYE = docker-config-engine-bullseye.gz
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_PATH = $(DOCKERS_PATH)/docker-config-engine-bullseye
|
||||||
|
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_DEPENDS += $(LIBSWSSCOMMON) \
|
||||||
|
$(LIBYANG) \
|
||||||
|
$(LIBYANG_CPP) \
|
||||||
|
$(LIBYANG_PY3) \
|
||||||
|
$(PYTHON3_SWSSCOMMON)
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_PYTHON_WHEELS += $(SWSSSDK_PY3)
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_PYTHON_WHEELS += $(SONIC_PY_COMMON_PY3) \
|
||||||
|
$(SONIC_YANG_MGMT_PY3) \
|
||||||
|
$(SONIC_YANG_MODELS_PY3)
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_PYTHON_WHEELS += $(SONIC_CONFIG_ENGINE_PY3)
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_LOAD_DOCKERS += $(DOCKER_BASE_BULLSEYE)
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_FILES += $(SWSS_VARS_TEMPLATE)
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_FILES += $($(SONIC_CTRMGRD)_CONTAINER_SCRIPT)
|
||||||
|
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_DEPENDS = $($(DOCKER_BASE_BULLSEYE)_DBG_DEPENDS) \
|
||||||
|
$(LIBSWSSCOMMON_DBG) \
|
||||||
|
$(LIBHIREDIS_DBG)
|
||||||
|
$(DOCKER_CONFIG_ENGINE_BULLSEYE)_DBG_IMAGE_PACKAGES = $($(DOCKER_BASE_BULLSEYE)_DBG_IMAGE_PACKAGES)
|
||||||
|
|
||||||
|
SONIC_DOCKER_IMAGES += $(DOCKER_CONFIG_ENGINE_BULLSEYE)
|
@ -1,6 +1,6 @@
|
|||||||
# socat packages
|
# socat packages
|
||||||
|
|
||||||
SOCAT_VERSION = 1.7.3.1-2+deb9u1
|
SOCAT_VERSION = 1.7.4.1-3
|
||||||
|
|
||||||
export SOCAT_VERSION
|
export SOCAT_VERSION
|
||||||
|
|
||||||
|
@ -62,7 +62,6 @@ RUN apt-get update && apt-get install -y \
|
|||||||
dh-exec \
|
dh-exec \
|
||||||
kmod \
|
kmod \
|
||||||
libtinyxml2-dev \
|
libtinyxml2-dev \
|
||||||
python \
|
|
||||||
python3 \
|
python3 \
|
||||||
python3-pip \
|
python3-pip \
|
||||||
libncurses5-dev \
|
libncurses5-dev \
|
||||||
@ -311,7 +310,6 @@ RUN apt-get update && apt-get install -y \
|
|||||||
# For WPA supplication
|
# For WPA supplication
|
||||||
qtbase5-dev \
|
qtbase5-dev \
|
||||||
aspell-en \
|
aspell-en \
|
||||||
libpython2.7-dev \
|
|
||||||
libssl-dev \
|
libssl-dev \
|
||||||
dbus \
|
dbus \
|
||||||
libdbus-1-dev \
|
libdbus-1-dev \
|
||||||
|
@ -6,19 +6,19 @@ MAIN_TARGET = socat_$(SOCAT_VERSION)_$(CONFIGURED_ARCH).deb
|
|||||||
|
|
||||||
$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
|
$(addprefix $(DEST)/, $(MAIN_TARGET)): $(DEST)/% :
|
||||||
# Remove any stale files
|
# Remove any stale files
|
||||||
rm -rf ./socat-1.7.3.1
|
rm -rf ./socat-1.7.4.1
|
||||||
|
|
||||||
# Get source package
|
# Get source package
|
||||||
wget -NO socat_$(SOCAT_VERSION).dsc "https://sonicstorage.blob.core.windows.net/packages/debian/socat_1.7.3.1-2+deb9u1.dsc?sv=2015-04-05&sr=b&sig=Ph7aMqb%2F%2FE%2F8qwxMXoXb5oK1YPkfVt6PV8mBBv5Wi%2F4%3D&se=2155-07-05T11%3A42%3A29Z&sp=r"
|
wget -NO socat_$(SOCAT_VERSION).dsc "https://sonicstorage.blob.core.windows.net/packages/debian/socat_1.7.4.1-3.dsc?sv=2020-04-08&st=2021-12-14T00%3A00%3A00Z&se=2050-12-15T00%3A00%3A00Z&sr=b&sp=r&sig=fIy6dVz3s59K0TiMkTlwSWN8lCzRl3i76ruAtROhfWA%3D"
|
||||||
wget -NO socat_$(SOCAT_VERSION).debian.tar.xz "https://sonicstorage.blob.core.windows.net/packages/debian/socat_1.7.3.1-2+deb9u1.debian.tar.xz?sv=2015-04-05&sr=b&sig=yv77Fr5RtZgRTPmJK3j0lZ0BzsCiGaSs2i7NqQKEy2Y%3D&se=2155-07-05T11%3A39%3A59Z&sp=r"
|
wget -NO socat_$(SOCAT_VERSION).debian.tar.xz "https://sonicstorage.blob.core.windows.net/packages/debian/socat_1.7.4.1-3.debian.tar.xz?sv=2020-04-08&st=2021-12-14T08%3A00%3A00Z&se=2030-12-14T18%3A18%3A00Z&sr=b&sp=r&sig=C8aYSvaQgMJ58Z13kFY0Wr0J0QF6i7WCeET9%2BpF%2BAxc%3D"
|
||||||
wget -NO socat_1.7.3.1.orig.tar.gz "https://sonicstorage.blob.core.windows.net/packages/debian/socat_1.7.3.1.orig.tar.gz?sv=2015-04-05&sr=b&sig=0Ai1FM604aGsF5uBu2yN8w9O1a6zNjIDCdaiTo24DyQ%3D&se=2155-07-05T11%3A40%3A14Z&sp=r"
|
wget -NO socat_1.7.4.1.orig.tar.gz "https://sonicstorage.blob.core.windows.net/packages/debian/socat_1.7.4.1.orig.tar.gz?sv=2020-04-08&st=2021-12-14T00%3A00%3A00Z&se=2050-12-15T00%3A00%3A00Z&sr=b&sp=r&sig=gpihyZv%2Fr0bVrCUKCKwpS4bIoqiPpdd%2BgCfuUGNHOUc%3D"
|
||||||
|
|
||||||
dpkg-source -x socat_$(SOCAT_VERSION).dsc
|
dpkg-source -x socat_$(SOCAT_VERSION).dsc
|
||||||
|
|
||||||
# Build source and Debian packages
|
# Build source and Debian packages
|
||||||
pushd socat-1.7.3.1
|
pushd socat-1.7.4.1
|
||||||
patch -p0 < ../enable_readline.patch
|
patch -p0 < ../enable_readline.patch
|
||||||
dpkg-buildpackage -rfakeroot -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
|
DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -rfakeroot -Pnocheck -b -us -uc -j$(SONIC_CONFIG_MAKE_JOBS) --admindir $(SONIC_DPKG_ADMINDIR)
|
||||||
popd
|
popd
|
||||||
|
|
||||||
# Move the newly-built .deb packages to the destination directory
|
# Move the newly-built .deb packages to the destination directory
|
||||||
|
@ -1,13 +1,29 @@
|
|||||||
--- debian/rules.old 2018-08-12 11:48:42.220230100 +0000
|
--- debian/rules.old 2021-12-14 10:51:09.641165521 -0800
|
||||||
+++ debian/rules 2018-08-12 11:48:52.072230100 +0000
|
+++ debian/rules 2021-12-14 10:52:36.494048522 -0800
|
||||||
@@ -12,9 +12,6 @@
|
@@ -11,9 +11,6 @@
|
||||||
%:
|
# upsteram maintains config.h.in manually
|
||||||
dh $@ --with=autoreconf
|
export AUTOHEADER = true
|
||||||
|
|
||||||
-override_dh_auto_configure:
|
-override_dh_auto_configure:
|
||||||
- dh_auto_configure -- --disable-readline
|
- dh_auto_configure -- --disable-readline
|
||||||
-
|
-
|
||||||
override_dh_auto_test:
|
override_dh_auto_test:
|
||||||
|
ifneq (, filter $(DEB_BUILD_ARCH_OS), kfreebsd hurd)
|
||||||
|
dh_auto_test
|
||||||
|
@@ -24,4 +21,4 @@
|
||||||
|
%:
|
||||||
|
dh $@ --with=autoreconf
|
||||||
|
|
||||||
-.PHONY: override_dh_auto_configure override_dh_auto_test
|
-.PHONY: override_dh_auto_configure override_dh_auto_test
|
||||||
+.PHONY: override_dh_auto_test
|
+.PHONY: override_dh_auto_test
|
||||||
|
--- debian/control.old 2021-12-14 11:30:49.166051931 -0800
|
||||||
|
+++ debian/control 2021-12-14 11:30:57.590153464 -0800
|
||||||
|
@@ -3,7 +3,7 @@
|
||||||
|
Priority: optional
|
||||||
|
Maintainer: Laszlo Boszormenyi (GCS) <gcs@debian.org>
|
||||||
|
Homepage: http://www.dest-unreach.org/socat/
|
||||||
|
-Build-Depends: debhelper-compat (= 12), libssl-dev, libwrap0-dev, openssl <!nocheck>, net-tools <!nocheck>, iproute2 [linux-any] <!nocheck>, netbase <!nocheck>
|
||||||
|
+Build-Depends: debhelper-compat (= 12), libssl-dev, libwrap0-dev, libreadline-dev, openssl <!nocheck>, net-tools <!nocheck>, iproute2 [linux-any] <!nocheck>, netbase <!nocheck>
|
||||||
|
Standards-Version: 4.5.1
|
||||||
|
Rules-Requires-Root: no
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user