Skip to content

Commit 17497a6

Browse files
committed
Revert "Support SONiC Reproduceable Build-debian/pip/web packages (sonic-net#5718)"
This reverts commit 55a7075.
1 parent 163b711 commit 17497a6

37 files changed

+26
-1443
lines changed

.gitignore

-7
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,3 @@ platform/broadcom/sonic-platform-modules-dell/s6100/modules/dell_s6100_lpc.c
6161
platform/broadcom/sonic-platform-modules-dell/z9100/modules/dell_ich.c
6262
platform/broadcom/sonic-platform-modules-dell/z9100/modules/dell_mailbox.c
6363
platform/broadcom/sonic-platform-modules-dell/z9264f/sonic_platform/ipmihelper.py
64-
65-
# buildinfo
66-
files/build/buildinfo
67-
files/build/tmp
68-
dockers/**/buildinfo
69-
platform/**/buildinfo
70-
sonic-slave*/**/buildinfo

Makefile

-4
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,3 @@ ifeq ($(NOSTRETCH), 0)
3838
BLDENV=stretch make -f Makefile.work $@
3939
endif
4040
BLDENV=buster make -f Makefile.work $@
41-
42-
# Freeze the versions, see more detail options: scripts/versions_manager.py freeze -h
43-
freeze:
44-
@scripts/versions_manager.py freeze $(FREEZE_VERSION_OPTIONS)

Makefile.work

+10-30
Original file line numberDiff line numberDiff line change
@@ -89,24 +89,11 @@ else
8989
SLAVE_DIR = sonic-slave-jessie
9090
endif
9191

92-
include rules/config
93-
92+
SLAVE_BASE_TAG = $(shell CONFIGURED_ARCH=$(CONFIGURED_ARCH) j2 $(SLAVE_DIR)/Dockerfile.j2 > $(SLAVE_DIR)/Dockerfile && sha1sum $(SLAVE_DIR)/Dockerfile | awk '{print substr($$1,0,11);}')
93+
SLAVE_TAG = $(shell cat $(SLAVE_DIR)/Dockerfile.user $(SLAVE_DIR)/Dockerfile | sha1sum | awk '{print substr($$1,0,11);}')
9494
SLAVE_BASE_IMAGE = $(SLAVE_DIR)
9595
SLAVE_IMAGE = $(SLAVE_BASE_IMAGE)-$(USER)
9696

97-
# Generate the version control build info
98-
$(shell SONIC_VERSION_CONTROL_COMPONENTS=$(SONIC_VERSION_CONTROL_COMPONENTS) \
99-
TRUSTED_GPG_URLS=$(TRUSTED_GPG_URLS) PACKAGE_URL_PREFIX=$(PACKAGE_URL_PREFIX) \
100-
scripts/generate_buildinfo_config.sh)
101-
102-
# Generate the slave Dockerfile, and prepare build info for it
103-
$(shell CONFIGURED_ARCH=$(CONFIGURED_ARCH) j2 $(SLAVE_DIR)/Dockerfile.j2 > $(SLAVE_DIR)/Dockerfile)
104-
$(shell BUILD_SLAVE=y scripts/prepare_docker_buildinfo.sh $(SLAVE_BASE_IMAGE) $(SLAVE_DIR)/Dockerfile $(CONFIGURED_ARCH) "" $(BLDENV))
105-
106-
# Add the versions in the tag, if the version change, need to rebuild the slave
107-
SLAVE_BASE_TAG = $(shell cat $(SLAVE_DIR)/Dockerfile $(SLAVE_DIR)/buildinfo/versions/versions-* | sha1sum | awk '{print substr($$1,0,11);}')
108-
SLAVE_TAG = $(shell cat $(SLAVE_DIR)/Dockerfile.user $(SLAVE_DIR)/Dockerfile $(SLAVE_DIR)/buildinfo/versions/versions-* | sha1sum | awk '{print substr($$1,0,11);}')
109-
11097
OVERLAY_MODULE_CHECK := \
11198
lsmod | grep -q "^overlay " &>/dev/null || \
11299
zgrep -q 'CONFIG_OVERLAY_FS=y' /proc/config.gz &>/dev/null || \
@@ -131,6 +118,8 @@ DOCKER_RUN := docker run --rm=true --privileged --init \
131118
-i$(if $(TERM),t,) \
132119
$(SONIC_BUILDER_EXTRA_CMDLINE)
133120

121+
include rules/config
122+
134123
ifneq ($(DOCKER_BUILDER_USER_MOUNT),)
135124
DOCKER_RUN += $(foreach mount,$(subst $(comma), ,$(DOCKER_BUILDER_USER_MOUNT)), $(addprefix -v , $(mount)))
136125
endif
@@ -229,7 +218,6 @@ SONIC_BUILD_INSTRUCTION := make \
229218
EXTRA_DOCKER_TARGETS=$(EXTRA_DOCKER_TARGETS) \
230219
BUILD_LOG_TIMESTAMP=$(BUILD_LOG_TIMESTAMP) \
231220
SONIC_ENABLE_IMAGE_SIGNATURE=$(ENABLE_IMAGE_SIGNATURE) \
232-
SLAVE_DIR=$(SLAVE_DIR) \
233221
$(SONIC_OVERRIDE_BUILD_VARS)
234222

235223
.PHONY: sonic-slave-build sonic-slave-bash init reset
@@ -246,35 +234,27 @@ endif
246234
endif
247235
@$(OVERLAY_MODULE_CHECK)
248236

249-
@pushd src/sonic-build-hooks; TRUSTED_GPG_URLS=$(TRUSTED_GPG_URLS) make all; popd
250-
@cp src/sonic-build-hooks/buildinfo/sonic-build-hooks* $(SLAVE_BASE_IMAGE)/buildinfo
251237
@docker inspect --type image $(SLAVE_BASE_IMAGE):$(SLAVE_BASE_TAG) &> /dev/null || \
252238
{ echo Image $(SLAVE_BASE_IMAGE):$(SLAVE_BASE_TAG) not found. Building... ; \
253-
$(DOCKER_BASE_BUILD) ; \
254-
scripts/collect_docker_version_files.sh $(SLAVE_BASE_IMAGE):$(SLAVE_BASE_TAG) target ; }
239+
$(DOCKER_BASE_BUILD) ; }
255240
@docker inspect --type image $(SLAVE_IMAGE):$(SLAVE_TAG) &> /dev/null || \
256241
{ echo Image $(SLAVE_IMAGE):$(SLAVE_TAG) not found. Building... ; \
257242
$(DOCKER_BUILD) ; }
258243
ifeq "$(KEEP_SLAVE_ON)" "yes"
259244
ifdef SOURCE_FOLDER
260-
@$(DOCKER_RUN) -v $(SOURCE_FOLDER):/var/$(USER)/src $(SLAVE_IMAGE):$(SLAVE_TAG) bash -c "$(SONIC_BUILD_INSTRUCTION) $@; scripts/collect_build_version_files.sh \$$?; /bin/bash"
245+
@$(DOCKER_RUN) -v $(SOURCE_FOLDER):/var/$(USER)/src $(SLAVE_IMAGE):$(SLAVE_TAG) bash -c "$(SONIC_BUILD_INSTRUCTION) $@; /bin/bash"
261246
else
262-
@$(DOCKER_RUN) $(SLAVE_IMAGE):$(SLAVE_TAG) bash -c "$(SONIC_BUILD_INSTRUCTION) $@; scripts/collect_build_version_files.sh \$$?; /bin/bash"
247+
@$(DOCKER_RUN) $(SLAVE_IMAGE):$(SLAVE_TAG) bash -c "$(SONIC_BUILD_INSTRUCTION) $@; /bin/bash"
263248
endif
264249
else
265-
@$(DOCKER_RUN) $(SLAVE_IMAGE):$(SLAVE_TAG) bash -c "$(SONIC_BUILD_INSTRUCTION) $@; scripts/collect_build_version_files.sh \$$?"
250+
@$(DOCKER_RUN) $(SLAVE_IMAGE):$(SLAVE_TAG) $(SONIC_BUILD_INSTRUCTION) $@
266251
endif
267252

268-
sonic-build-hooks:
269-
@pushd src/sonic-build-hooks; TRUSTED_GPG_URLS=$(TRUSTED_GPG_URLS) make all; popd
270-
@cp src/sonic-build-hooks/buildinfo/sonic-build-hooks* $(SLAVE_BASE_IMAGE)/buildinfo
271-
272-
sonic-slave-base-build : sonic-build-hooks
253+
sonic-slave-base-build :
273254
@$(OVERLAY_MODULE_CHECK)
274255
@docker inspect --type image $(SLAVE_BASE_IMAGE):$(SLAVE_BASE_TAG) &> /dev/null || \
275256
{ echo Image $(SLAVE_BASE_IMAGE):$(SLAVE_BASE_TAG) not found. Building... ; \
276-
$(DOCKER_BASE_BUILD) ; \
277-
scripts/collect_docker_version_files.sh $(SLAVE_BASE_IMAGE):$(SLAVE_BASE_TAG) target ; }
257+
$(DOCKER_BASE_BUILD) ; }
278258

279259
sonic-slave-build : sonic-slave-base-build
280260
@docker inspect --type image $(SLAVE_IMAGE):$(SLAVE_TAG) &> /dev/null || \

build_debian.sh

+10-13
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,6 @@ PLATFORM_DIR=platform
4040
## Hostname for the linux image
4141
HOSTNAME=sonic
4242
DEFAULT_USERINFO="Default admin user,,,"
43-
BUILD_TOOL_PATH=src/sonic-build-hooks/buildinfo
44-
TRUSTED_GPG_DIR=$BUILD_TOOL_PATH/trusted.gpg.d
4543

4644
## Read ONIE image related config file
4745
. ./onie-image.conf
@@ -72,12 +70,16 @@ pushd $FILESYSTEM_ROOT
7270
sudo mount --bind . .
7371
popd
7472

75-
## Build the host debian base system
76-
echo '[INFO] Build host debian base system...'
77-
TARGET_PATH=$TARGET_PATH scripts/build_debian_base_system.sh $CONFIGURED_ARCH $IMAGE_DISTRO $FILESYSTEM_ROOT
78-
79-
# Prepare buildinfo
80-
sudo scripts/prepare_debian_image_buildinfo.sh $CONFIGURED_ARCH $IMAGE_DISTRO $FILESYSTEM_ROOT $http_proxy
73+
## Build a basic Debian system by debootstrap
74+
echo '[INFO] Debootstrap...'
75+
if [[ $CONFIGURED_ARCH == armhf || $CONFIGURED_ARCH == arm64 ]]; then
76+
# qemu arm bin executable for cross-building
77+
sudo mkdir -p $FILESYSTEM_ROOT/usr/bin
78+
sudo cp /usr/bin/qemu*static $FILESYSTEM_ROOT/usr/bin || true
79+
sudo http_proxy=$http_proxy debootstrap --variant=minbase --arch $CONFIGURED_ARCH $IMAGE_DISTRO $FILESYSTEM_ROOT http://deb.debian.org/debian
80+
else
81+
sudo http_proxy=$http_proxy debootstrap --variant=minbase --arch $CONFIGURED_ARCH $IMAGE_DISTRO $FILESYSTEM_ROOT http://debian-archive.trafficmanager.net/debian
82+
fi
8183

8284
## Config hostname and hosts, otherwise 'sudo ...' will complain 'sudo: unable to resolve host ...'
8385
sudo LANG=C chroot $FILESYSTEM_ROOT /bin/bash -c "echo '$HOSTNAME' > /etc/hostname"
@@ -98,9 +100,6 @@ echo '[INFO] Mount all'
98100
## Output all the mounted device for troubleshooting
99101
sudo LANG=C chroot $FILESYSTEM_ROOT mount
100102

101-
## Install the trusted gpg public keys
102-
[ -d $TRUSTED_GPG_DIR ] && [ ! -z "$(ls $TRUSTED_GPG_DIR)" ] && sudo cp $TRUSTED_GPG_DIR/* ${FILESYSTEM_ROOT}/etc/apt/trusted.gpg.d/
103-
104103
## Pointing apt to public apt mirrors and getting latest packages, needed for latest security updates
105104
sudo cp files/apt/sources.list.$CONFIGURED_ARCH $FILESYSTEM_ROOT/etc/apt/sources.list
106105
sudo cp files/apt/apt.conf.d/{81norecommends,apt-{clean,gzip-indexes,no-languages},no-check-valid-until} $FILESYSTEM_ROOT/etc/apt/apt.conf.d/
@@ -585,8 +584,6 @@ sudo du -hsx $FILESYSTEM_ROOT
585584
sudo mkdir -p $FILESYSTEM_ROOT/var/lib/docker
586585
sudo mksquashfs $FILESYSTEM_ROOT $FILESYSTEM_SQUASHFS -e boot -e var/lib/docker -e $PLATFORM_DIR
587586

588-
scripts/collect_host_image_version_files.sh $TARGET_PATH $FILESYSTEM_ROOT
589-
590587
## Compress docker files
591588
pushd $FILESYSTEM_ROOT && sudo tar czf $OLDPWD/$FILESYSTEM_DOCKERFS -C ${DOCKERFS_PATH}var/lib/docker .; popd
592589

dockers/docker-base-buster/sources.list

-5
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,3 @@ deb-src [arch=amd64] http://debian-archive.trafficmanager.net/debian/ buster mai
66
deb [arch=amd64] http://debian-archive.trafficmanager.net/debian-security/ buster/updates main contrib non-free
77
deb-src [arch=amd64] http://debian-archive.trafficmanager.net/debian-security/ buster/updates main contrib non-free
88
deb [arch=amd64] http://debian-archive.trafficmanager.net/debian/ buster-backports main contrib non-free
9-
10-
# Debian mirror supports multiple versions for a package
11-
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian buster main contrib non-free
12-
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian buster-updates main contrib non-free
13-
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian buster-backports main contrib non-free

dockers/docker-base-buster/sources.list.arm64

-3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,3 @@ deb-src [arch=arm64] http://deb.debian.org/debian buster main contrib non-free
66
deb [arch=arm64] http://security.debian.org buster/updates main contrib non-free
77
deb-src [arch=arm64] http://security.debian.org buster/updates main contrib non-free
88
deb [arch=arm64] http://deb.debian.org/debian/ buster-backports main contrib non-free
9-
deb [arch=arm64] http://packages.trafficmanager.net/debian/debian buster main contrib non-free
10-
deb [arch=arm64] http://packages.trafficmanager.net/debian/debian buster-updates main contrib non-free
11-
deb [arch=arm64] http://packages.trafficmanager.net/debian/debian buster-backports main contrib non-free

dockers/docker-base-buster/sources.list.armhf

-3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,3 @@ deb-src [arch=armhf] http://deb.debian.org/debian buster main contrib non-free
66
deb [arch=armhf] http://security.debian.org buster/updates main contrib non-free
77
deb-src [arch=armhf] http://security.debian.org buster/updates main contrib non-free
88
deb [arch=armhf] http://deb.debian.org/debian/ buster-backports main contrib non-free
9-
deb [arch=armhf] http://packages.trafficmanager.net/debian/debian buster main contrib non-free
10-
deb [arch=armhf] http://packages.trafficmanager.net/debian/debian buster-updates main contrib non-free
11-
deb [arch=armhf] http://packages.trafficmanager.net/debian/debian buster-backports main contrib non-free

dockers/docker-base-stretch/sources.list

-3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,3 @@ deb-src [arch=amd64] http://debian-archive.trafficmanager.net/debian/ stretch ma
66
deb [arch=amd64] http://debian-archive.trafficmanager.net/debian-security/ stretch/updates main contrib non-free
77
deb-src [arch=amd64] http://debian-archive.trafficmanager.net/debian-security/ stretch/updates main contrib non-free
88
deb [arch=amd64] http://debian-archive.trafficmanager.net/debian/ stretch-backports main contrib non-free
9-
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian stretch main contrib non-free
10-
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian stretch-updates main contrib non-free
11-
deb [arch=amd64] http://packages.trafficmanager.net/debian/debian stretch-backports main contrib non-free

dockers/docker-base-stretch/sources.list.arm64

-3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,3 @@ deb-src [arch=arm64] http://deb.debian.org/debian stretch main contrib non-free
66
deb [arch=arm64] http://security.debian.org stretch/updates main contrib non-free
77
deb-src [arch=arm64] http://security.debian.org stretch/updates main contrib non-free
88
deb [arch=arm64] http://deb.debian.org/debian/ stretch-backports main contrib non-free
9-
deb [arch=arm64] http://packages.trafficmanager.net/debian/debian stretch main contrib non-free
10-
deb [arch=arm64] http://packages.trafficmanager.net/debian/debian stretch-updates main contrib non-free
11-
deb [arch=arm64] http://packages.trafficmanager.net/debian/debian stretch-backports main contrib non-free

dockers/docker-base-stretch/sources.list.armhf

-3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,3 @@ deb-src [arch=armhf] http://deb.debian.org/debian stretch main contrib non-free
66
deb [arch=armhf] http://security.debian.org stretch/updates main contrib non-free
77
deb-src [arch=armhf] http://security.debian.org stretch/updates main contrib non-free
88
deb [arch=armhf] http://deb.debian.org/debian/ stretch-backports main contrib non-free
9-
deb [arch=armhf] http://packages.trafficmanager.net/debian/debian stretch main contrib non-free
10-
deb [arch=armhf] http://packages.trafficmanager.net/debian/debian stretch-updates main contrib non-free
11-
deb [arch=armhf] http://packages.trafficmanager.net/debian/debian stretch-backports main contrib non-free

rules/config

-17
Original file line numberDiff line numberDiff line change
@@ -162,20 +162,3 @@ K8s_GCR_IO_PAUSE_VERSION = 3.2
162162
# CA_CERT =
163163
# The relative path is build root folder.
164164
SONIC_ENABLE_IMAGE_SIGNATURE ?= n
165-
166-
# PACKAGE_URL_PREFIX - the package url prefix
167-
PACKAGE_URL_PREFIX ?= https://packages.trafficmanager.net/public/packages
168-
169-
# TRUSTED_GPG_URLS - the trusted gpgs, separated by comma
170-
TRUSTED_GPG_URLS = https://packages.trafficmanager.net/debian/public_key.gpg,https://packages.microsoft.com/keys/microsoft.asc
171-
172-
# SONIC_VERSION_CONTROL_COMPONENTS - Valid values: none|all|components..., the components consist of one or multiple: deb,py2,py3,web,git,docker, seperated by comma
173-
# none : disable the version control
174-
# all : enable the version control for all components
175-
# deb : debian packages
176-
# py2 : python2 packages
177-
# py3 : python3 pakcages
178-
# web : web packages, downloaded by wget, curl
179-
# git : git repositories, donloaded by git clone
180-
# docker: docker base images
181-
SONIC_VERSION_CONTROL_COMPONENTS ?= none

scripts/build_debian_base_system.sh

-87
This file was deleted.

scripts/collect_build_version_files.sh

-28
This file was deleted.

scripts/collect_docker_version_files.sh

-25
This file was deleted.

scripts/collect_host_image_version_files.sh

-12
This file was deleted.

scripts/generate_buildinfo_config.sh

-10
This file was deleted.

0 commit comments

Comments
 (0)