* Support SONiC reproduceable build for deb/py2/py3/web * Remove j2 files * Fix bug * Fix some issues 1. Change some code format issues 2. Fix curl calling wget command, pip2 calling pip3 issue 3. Fix wget/curl downloading multiple urls issue * Fix some code format issue * Fix bug * Fix bug * Fix command path hard code in build info scripts issue * Add debian package sonic-build-tools * Fix auto debian package removed issue * Change build debian package name, and change the folder * Collect the pre-versions and post-versions * Change to use debian:buster * Remove apt-mark and improve code * Remove set_build_hooks * Change docker trusted gpg files * Fix docker build COPY directory name issue * Move the trusted gpg files into the sonic-build-hooks package
26 lines
925 B
Bash
Executable File
26 lines
925 B
Bash
Executable File
#!/bin/bash
|
|
|
|
DOCKER_IMAGE=$1
|
|
TARGET_PATH=$2
|
|
|
|
[ -z "$TARGET_PATH" ] && TARGET_PATH=./target
|
|
|
|
DOCKER_IMAGE_NAME=$(echo $DOCKER_IMAGE | cut -d: -f1)
|
|
DOCKER_CONTAINER=$DOCKER_IMAGE_NAME
|
|
TARGET_VERSIONS_PATH=$TARGET_PATH/versions/dockers/$DOCKER_IMAGE_NAME
|
|
|
|
[ -d $TARGET_VERSIONS_PATH ] && rm -rf $TARGET_VERSIONS_PATH
|
|
mkdir -p $TARGET_VERSIONS_PATH
|
|
|
|
export DOCKER_CLI_EXPERIMENTAL=enabled
|
|
|
|
# Remove the old docker container if existing
|
|
if docker container inspect $DOCKER_IMAGE > /dev/null 2>&1; then
|
|
docker container rm $DOCKER_IMAGE > /dev/null
|
|
fi
|
|
docker create --name $DOCKER_CONTAINER --entrypoint /bin/bash $DOCKER_IMAGE
|
|
docker cp -L $DOCKER_CONTAINER:/etc/os-release $TARGET_VERSIONS_PATH/
|
|
docker cp -L $DOCKER_CONTAINER:/usr/local/share/buildinfo/pre-versions $TARGET_VERSIONS_PATH/
|
|
docker cp -L $DOCKER_CONTAINER:/usr/local/share/buildinfo/post-versions $TARGET_VERSIONS_PATH/
|
|
docker container rm $DOCKER_CONTAINER
|