Change variants to be libc variants instead of build-style variants
This commit is contained in:
parent
3bf655587b
commit
6b303c84f0
|
|
@ -2,8 +2,9 @@ language: bash
|
|||
services: docker
|
||||
|
||||
env:
|
||||
- VERSION=ubuntu
|
||||
- VERSION=upstream
|
||||
- VERSION=glibc
|
||||
- VERSION=musl
|
||||
- VERSION=uclibc
|
||||
|
||||
install:
|
||||
- git clone https://github.com/docker-library/official-images.git ~/official-images
|
||||
|
|
@ -13,7 +14,7 @@ before_script:
|
|||
- image="busybox:$VERSION"
|
||||
|
||||
script:
|
||||
- "./build-$VERSION.sh"
|
||||
- ./build.sh "$VERSION"
|
||||
- ~/official-images/test/run.sh "$image"
|
||||
|
||||
after_script:
|
||||
|
|
|
|||
|
|
@ -1,11 +0,0 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
cd "$(readlink -f "$(dirname "$BASH_SOURCE")")/ubuntu"
|
||||
|
||||
set -x
|
||||
docker build -t busybox:ubuntu-builder --pull - < Dockerfile.builder
|
||||
docker run --rm busybox:ubuntu-builder tar c . | xz -z9 > busybox.tar.xz
|
||||
docker build -t busybox:ubuntu .
|
||||
docker run --rm busybox:ubuntu sh -xec 'true'
|
||||
docker run --rm busybox:ubuntu ping -c 1 google.com
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
cd "$(readlink -f "$(dirname "$BASH_SOURCE")")/upstream"
|
||||
|
||||
set -x
|
||||
docker build -t busybox:upstream-builder --pull - < Dockerfile.builder
|
||||
docker run --rm busybox:upstream-builder tar cC rootfs . | xz -z9 > busybox.tar.xz
|
||||
docker build -t busybox:upstream .
|
||||
docker run --rm busybox:upstream sh -xec 'true'
|
||||
docker run --rm busybox:upstream ping -c 1 google.com
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
cd "$(readlink -f "$(dirname "$BASH_SOURCE")")"
|
||||
|
||||
versions=( "$@" )
|
||||
if [ ${#versions[@]} -eq 0 ]; then
|
||||
versions=( */ )
|
||||
fi
|
||||
versions=( "${versions[@]%/}" )
|
||||
|
||||
base='busybox:'
|
||||
for version in "${versions[@]}"; do
|
||||
(
|
||||
set -x
|
||||
docker build -t "$base$version-builder" --pull -f "$version/Dockerfile.builder" "$version"
|
||||
docker run --rm "$base$version-builder" tar cC rootfs . | xz -z9 > "$version/busybox.tar.xz"
|
||||
docker build -t "$base$version" "$version"
|
||||
docker run --rm "$base$version" sh -xec 'true'
|
||||
docker run --rm "$base$version" ping -c 1 google.com
|
||||
)
|
||||
done
|
||||
|
|
@ -1,6 +1,8 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
latest='uclibc'
|
||||
|
||||
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
|
||||
|
||||
versions=( */ )
|
||||
|
|
@ -16,18 +18,24 @@ for version in "${versions[@]}"; do
|
|||
fullVersion="${fullVersion#*:}"
|
||||
fullVersion="${fullVersion%-*}"
|
||||
|
||||
verSuffix="$version"
|
||||
if [ "$version" = 'upstream' ]; then
|
||||
verSuffix=''
|
||||
fi
|
||||
suffix="${verSuffix:+-$verSuffix}"
|
||||
suffix="-$version"
|
||||
|
||||
versionAliases=()
|
||||
while [ "${fullVersion%.*}" != "$fullVersion" ]; do
|
||||
versionAliases+=( $fullVersion$suffix )
|
||||
if [ "$version" = "$latest" ]; then
|
||||
versionAliases+=( $fullVersion )
|
||||
fi
|
||||
fullVersion="${fullVersion%.*}"
|
||||
done
|
||||
versionAliases+=( $fullVersion$suffix ${verSuffix:-latest} )
|
||||
versionAliases+=( $fullVersion$suffix )
|
||||
if [ "$version" = "$latest" ]; then
|
||||
versionAliases+=( $fullVersion )
|
||||
fi
|
||||
versionAliases+=( $version )
|
||||
if [ "$version" = "$latest" ]; then
|
||||
versionAliases+=( latest )
|
||||
fi
|
||||
|
||||
echo
|
||||
for va in "${versionAliases[@]}"; do
|
||||
|
|
|
|||
|
|
@ -0,0 +1,127 @@
|
|||
FROM debian:jessie
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
bzip2 \
|
||||
curl \
|
||||
gcc \
|
||||
make \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# pub 1024D/ACC9965B 2006-12-12
|
||||
# Key fingerprint = C9E9 416F 76E6 10DB D09D 040F 47B7 0C55 ACC9 965B
|
||||
# uid Denis Vlasenko <vda.linux@googlemail.com>
|
||||
# sub 1024g/2C766641 2006-12-12
|
||||
RUN gpg --keyserver pool.sks-keyservers.net --recv-keys C9E9416F76E610DBD09D040F47B70C55ACC9965B
|
||||
|
||||
ENV BUSYBOX_VERSION 1.24.1
|
||||
|
||||
RUN set -x \
|
||||
&& curl -fsSL "http://busybox.net/downloads/busybox-${BUSYBOX_VERSION}.tar.bz2" -o busybox.tar.bz2 \
|
||||
&& curl -fsSL "http://busybox.net/downloads/busybox-${BUSYBOX_VERSION}.tar.bz2.sign" -o busybox.tar.bz2.sign \
|
||||
&& gpg --verify busybox.tar.bz2.sign \
|
||||
&& tar -xjf busybox.tar.bz2 \
|
||||
&& mkdir -p /usr/src \
|
||||
&& mv "busybox-${BUSYBOX_VERSION}" /usr/src/busybox \
|
||||
&& rm busybox.tar.bz2*
|
||||
|
||||
WORKDIR /usr/src/busybox
|
||||
|
||||
# TODO remove CONFIG_FEATURE_SYNC_FANCY from this explicit list after the next release of busybox (since it's disabled by default upstream now)
|
||||
# As long as we rely on libnss, we have to have libc.so anyhow, so
|
||||
# we've removed CONFIG_STATIC here for now... :cry:
|
||||
RUN yConfs=' \
|
||||
CONFIG_AR \
|
||||
CONFIG_FEATURE_AR_LONG_FILENAMES \
|
||||
CONFIG_FEATURE_AR_CREATE \
|
||||
' \
|
||||
&& nConfs=' \
|
||||
CONFIG_FEATURE_SYNC_FANCY \
|
||||
' \
|
||||
&& set -xe \
|
||||
&& make defconfig \
|
||||
&& for conf in $nConfs; do \
|
||||
sed -i "s!^$conf=y!# $conf is not set!" .config; \
|
||||
done \
|
||||
&& for conf in $yConfs; do \
|
||||
sed -i "s!^# $conf is not set\$!$conf=y!" .config; \
|
||||
grep -q "^$conf=y" .config || echo "$conf=y" >> .config; \
|
||||
done \
|
||||
&& make oldconfig \
|
||||
&& for conf in $nConfs; do \
|
||||
! grep -q "^$conf=y" .config; \
|
||||
done \
|
||||
&& for conf in $yConfs; do \
|
||||
grep -q "^$conf=y" .config; \
|
||||
done
|
||||
|
||||
# hack hack hack hack hack
|
||||
# with glibc, static busybox uses libnss for DNS resolution :(
|
||||
RUN set -x \
|
||||
&& make -j$(nproc) \
|
||||
busybox \
|
||||
&& ./busybox --help \
|
||||
&& mkdir -p rootfs/bin \
|
||||
&& ln -vL busybox rootfs/bin/ \
|
||||
\
|
||||
&& ln -vL "$(which getconf)" rootfs/bin/getconf \
|
||||
&& mkdir -p rootfs/etc \
|
||||
&& cp /etc/nsswitch.conf rootfs/etc/ \
|
||||
&& mkdir -p rootfs/lib \
|
||||
&& ln -sT lib rootfs/lib64 \
|
||||
&& set -- \
|
||||
rootfs/bin/busybox \
|
||||
rootfs/bin/getconf \
|
||||
/lib/"$(gcc -print-multiarch)"/libnss*.so.* \
|
||||
&& while [ "$#" -gt 0 ]; do \
|
||||
f="$1"; shift; \
|
||||
fn="$(basename "$f")"; \
|
||||
if [ -e "rootfs/lib/$fn" ]; then continue; fi; \
|
||||
if [ "${f#rootfs/}" = "$f" ]; then \
|
||||
if [ "${fn#ld-}" = "$fn" ]; then \
|
||||
ln -vL "$f" "rootfs/lib/$fn"; \
|
||||
else \
|
||||
cp -v "$f" "rootfs/lib/$fn"; \
|
||||
fi; \
|
||||
fi; \
|
||||
set -- "$@" $(ldd "$f" | awk ' \
|
||||
$1 ~ /^\// { print $1; next } \
|
||||
$2 == "=>" && $3 ~ /^\// { print $3; next } \
|
||||
'); \
|
||||
done \
|
||||
&& chroot rootfs /bin/getconf _NPROCESSORS_ONLN \
|
||||
\
|
||||
&& chroot rootfs /bin/busybox --install /bin
|
||||
|
||||
RUN set -ex \
|
||||
&& buildrootVersion='2015.11.1' \
|
||||
&& mkdir -p rootfs/etc \
|
||||
&& for f in passwd shadow group; do \
|
||||
curl -fSL \
|
||||
"http://git.busybox.net/buildroot/plain/system/skeleton/etc/$f?id=$buildrootVersion" \
|
||||
-o "rootfs/etc/$f"; \
|
||||
done
|
||||
|
||||
# create /tmp
|
||||
RUN mkdir -p rootfs/tmp \
|
||||
&& chmod 1777 rootfs/tmp
|
||||
|
||||
# create missing home directories
|
||||
RUN set -ex \
|
||||
&& cd rootfs \
|
||||
&& for userHome in $(awk -F ':' '{ print $3 ":" $4 "=" $6 }' etc/passwd); do \
|
||||
user="${userHome%%=*}"; \
|
||||
home="${userHome#*=}"; \
|
||||
home="./${home#/}"; \
|
||||
if [ ! -d "$home" ]; then \
|
||||
mkdir -p "$home"; \
|
||||
chown "$user" "$home"; \
|
||||
fi; \
|
||||
done
|
||||
|
||||
# test and make sure it works
|
||||
RUN chroot rootfs /bin/sh -xec 'true'
|
||||
|
||||
# test and make sure DNS works too
|
||||
RUN cp -L /etc/resolv.conf rootfs/etc/ \
|
||||
&& chroot rootfs /bin/sh -xec 'nslookup google.com' \
|
||||
&& rm rootfs/etc/resolv.conf
|
||||
|
|
@ -0,0 +1,114 @@
|
|||
FROM alpine:3.3
|
||||
|
||||
RUN apk add --no-cache \
|
||||
bzip2 \
|
||||
curl \
|
||||
gcc \
|
||||
make \
|
||||
\
|
||||
gnupg \
|
||||
linux-headers \
|
||||
musl-dev
|
||||
|
||||
# pub 1024D/ACC9965B 2006-12-12
|
||||
# Key fingerprint = C9E9 416F 76E6 10DB D09D 040F 47B7 0C55 ACC9 965B
|
||||
# uid Denis Vlasenko <vda.linux@googlemail.com>
|
||||
# sub 1024g/2C766641 2006-12-12
|
||||
RUN gpg --keyserver pool.sks-keyservers.net --recv-keys C9E9416F76E610DBD09D040F47B70C55ACC9965B
|
||||
|
||||
ENV BUSYBOX_VERSION 1.24.1
|
||||
|
||||
RUN set -x \
|
||||
&& curl -fsSL "http://busybox.net/downloads/busybox-${BUSYBOX_VERSION}.tar.bz2" -o busybox.tar.bz2 \
|
||||
&& curl -fsSL "http://busybox.net/downloads/busybox-${BUSYBOX_VERSION}.tar.bz2.sign" -o busybox.tar.bz2.sign \
|
||||
&& gpg --verify busybox.tar.bz2.sign \
|
||||
&& tar -xjf busybox.tar.bz2 \
|
||||
&& mkdir -p /usr/src \
|
||||
&& mv "busybox-${BUSYBOX_VERSION}" /usr/src/busybox \
|
||||
&& rm busybox.tar.bz2*
|
||||
|
||||
WORKDIR /usr/src/busybox
|
||||
|
||||
# see http://wiki.musl-libc.org/wiki/Building_Busybox
|
||||
# TODO remove CONFIG_FEATURE_SYNC_FANCY from this explicit list after the next release of busybox (since it's disabled by default upstream now)
|
||||
RUN yConfs=' \
|
||||
CONFIG_AR \
|
||||
CONFIG_FEATURE_AR_LONG_FILENAMES \
|
||||
CONFIG_FEATURE_AR_CREATE \
|
||||
CONFIG_STATIC \
|
||||
' \
|
||||
&& nConfs=' \
|
||||
CONFIG_FEATURE_SYNC_FANCY \
|
||||
\
|
||||
CONFIG_FEATURE_HAVE_RPC \
|
||||
CONFIG_FEATURE_INETD_RPC \
|
||||
CONFIG_FEATURE_UTMP \
|
||||
CONFIG_FEATURE_WTMP \
|
||||
' \
|
||||
&& set -xe \
|
||||
&& make defconfig \
|
||||
&& for conf in $nConfs; do \
|
||||
sed -i "s!^$conf=y!# $conf is not set!" .config; \
|
||||
done \
|
||||
&& for conf in $yConfs; do \
|
||||
sed -i "s!^# $conf is not set\$!$conf=y!" .config; \
|
||||
grep -q "^$conf=y" .config || echo "$conf=y" >> .config; \
|
||||
done \
|
||||
&& make oldconfig \
|
||||
&& for conf in $nConfs; do \
|
||||
! grep -q "^$conf=y" .config; \
|
||||
done \
|
||||
&& for conf in $yConfs; do \
|
||||
grep -q "^$conf=y" .config; \
|
||||
done
|
||||
|
||||
RUN set -x \
|
||||
&& make -j$(getconf _NPROCESSORS_ONLN) \
|
||||
busybox \
|
||||
&& ./busybox --help \
|
||||
&& mkdir -p rootfs/bin \
|
||||
&& ln -v busybox rootfs/bin/ \
|
||||
&& chroot rootfs /bin/busybox --install /bin
|
||||
|
||||
# grab a simplified getconf port from Alpine we can statically compile
|
||||
RUN set -x \
|
||||
&& aportsVersion="v$(cat /etc/alpine-release)" \
|
||||
&& curl -fsSL \
|
||||
"http://git.alpinelinux.org/cgit/aports/plain/main/musl/getconf.c?h=${aportsVersion}" \
|
||||
-o /usr/src/getconf.c \
|
||||
&& gcc -o rootfs/bin/getconf -static -Os /usr/src/getconf.c \
|
||||
&& chroot rootfs /bin/sh -xec 'getconf _NPROCESSORS_ONLN'
|
||||
|
||||
RUN set -ex \
|
||||
&& buildrootVersion='2015.11.1' \
|
||||
&& mkdir -p rootfs/etc \
|
||||
&& for f in passwd shadow group; do \
|
||||
curl -fSL \
|
||||
"http://git.busybox.net/buildroot/plain/system/skeleton/etc/$f?id=$buildrootVersion" \
|
||||
-o "rootfs/etc/$f"; \
|
||||
done
|
||||
|
||||
# create /tmp
|
||||
RUN mkdir -p rootfs/tmp \
|
||||
&& chmod 1777 rootfs/tmp
|
||||
|
||||
# create missing home directories
|
||||
RUN set -ex \
|
||||
&& cd rootfs \
|
||||
&& for userHome in $(awk -F ':' '{ print $3 ":" $4 "=" $6 }' etc/passwd); do \
|
||||
user="${userHome%%=*}"; \
|
||||
home="${userHome#*=}"; \
|
||||
home="./${home#/}"; \
|
||||
if [ ! -d "$home" ]; then \
|
||||
mkdir -p "$home"; \
|
||||
chown "$user" "$home"; \
|
||||
fi; \
|
||||
done
|
||||
|
||||
# test and make sure it works
|
||||
RUN chroot rootfs /bin/sh -xec 'true'
|
||||
|
||||
# test and make sure DNS works too
|
||||
RUN cp -L /etc/resolv.conf rootfs/etc/ \
|
||||
&& chroot rootfs /bin/sh -xec 'nslookup google.com' \
|
||||
&& rm rootfs/etc/resolv.conf
|
||||
|
|
@ -1,46 +0,0 @@
|
|||
FROM ubuntu:trusty
|
||||
|
||||
ENV BUSYBOX_VERSION 1:1.21.0-1ubuntu1
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
busybox-static=$BUSYBOX_VERSION \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /rootfs
|
||||
|
||||
# create /tmp
|
||||
RUN mkdir -p tmp \
|
||||
&& chmod 1777 tmp
|
||||
|
||||
RUN mkdir -p etc root \
|
||||
&& echo root:*:0:0:root:/root:/bin/sh > etc/passwd \
|
||||
&& echo root::0: > etc/group
|
||||
|
||||
RUN mkdir -p bin \
|
||||
&& ln -v /bin/busybox bin/ \
|
||||
&& chroot . /bin/busybox --install -s /bin
|
||||
|
||||
# test and make sure it works
|
||||
RUN chroot . /bin/sh -xec 'true'
|
||||
|
||||
# hack hack hack hack hack
|
||||
# with glibc, static busybox uses libnss for DNS resolution :(
|
||||
RUN set -ex \
|
||||
&& cp /etc/nsswitch.conf etc/ \
|
||||
&& mkdir -p lib \
|
||||
&& set -- /lib/*-linux-gnu/libnss*.so.* \
|
||||
&& while [ "$#" -gt 0 ]; do \
|
||||
f="$1"; shift; \
|
||||
fn="$(basename "$f")"; \
|
||||
if [ -e "lib/$fn" ]; then continue; fi; \
|
||||
ln -L "$f" "lib/$fn"; \
|
||||
set -- "$@" $(ldd "$f" | awk ' \
|
||||
$1 ~ /^\// { print $1; next } \
|
||||
$2 == "=>" && $3 ~ /^\// { print $3; next } \
|
||||
'); \
|
||||
done
|
||||
|
||||
# test and make sure DNS works too
|
||||
RUN cp -L /etc/resolv.conf etc/ \
|
||||
&& chroot . /bin/sh -xec 'nslookup google.com' \
|
||||
&& rm etc/resolv.conf
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
FROM scratch
|
||||
ADD busybox.tar.xz /
|
||||
CMD ["sh"]
|
||||
|
|
@ -76,17 +76,19 @@ ENV PATH /usr/src/buildroot/output/host/usr/bin:$PATH
|
|||
# sub 1024g/2C766641 2006-12-12
|
||||
RUN gpg --keyserver pool.sks-keyservers.net --recv-keys C9E9416F76E610DBD09D040F47B70C55ACC9965B
|
||||
|
||||
WORKDIR /usr/src/busybox
|
||||
|
||||
ENV BUSYBOX_VERSION 1.24.1
|
||||
|
||||
RUN set -x \
|
||||
&& curl -fsSL "http://busybox.net/downloads/busybox-${BUSYBOX_VERSION}.tar.bz2" -o busybox.tar.bz2 \
|
||||
&& curl -fsSL "http://busybox.net/downloads/busybox-${BUSYBOX_VERSION}.tar.bz2.sign" -o busybox.tar.bz2.sign \
|
||||
&& gpg --verify busybox.tar.bz2.sign \
|
||||
&& tar -xf busybox.tar.bz2 --strip-components 1 \
|
||||
&& tar -xjf busybox.tar.bz2 \
|
||||
&& mkdir -p /usr/src \
|
||||
&& mv "busybox-${BUSYBOX_VERSION}" /usr/src/busybox \
|
||||
&& rm busybox.tar.bz2*
|
||||
|
||||
WORKDIR /usr/src/busybox
|
||||
|
||||
# TODO remove CONFIG_FEATURE_SYNC_FANCY from this explicit list after the next release of busybox (since it's disabled by default upstream now)
|
||||
RUN yConfs=' \
|
||||
CONFIG_AR \
|
||||
|
|
@ -118,19 +120,21 @@ RUN set -x \
|
|||
&& make -j$(nproc) \
|
||||
CROSS_COMPILE="$(basename /usr/src/buildroot/output/host/usr/*-buildroot-linux-uclibc)-" \
|
||||
busybox \
|
||||
&& ./busybox --help \
|
||||
&& mkdir -p rootfs/bin \
|
||||
&& ln -v busybox rootfs/bin/ \
|
||||
&& ln -vL busybox rootfs/bin/ \
|
||||
\
|
||||
&& ln -vL ../buildroot/output/target/usr/bin/getconf rootfs/bin/ \
|
||||
\
|
||||
&& chroot rootfs /bin/busybox --install /bin
|
||||
|
||||
# install "getconf" from buildroot (which is compiled statically already)
|
||||
RUN ln -v ../buildroot/output/target/usr/bin/getconf rootfs/bin/
|
||||
|
||||
RUN mkdir -p rootfs/etc \
|
||||
&& ln -v \
|
||||
/usr/src/buildroot/system/skeleton/etc/passwd \
|
||||
/usr/src/buildroot/system/skeleton/etc/shadow \
|
||||
/usr/src/buildroot/system/skeleton/etc/group \
|
||||
rootfs/etc/
|
||||
RUN set -ex \
|
||||
&& mkdir -p rootfs/etc \
|
||||
&& for f in passwd shadow group; do \
|
||||
ln -vL \
|
||||
"../buildroot/system/skeleton/etc/$f" \
|
||||
"rootfs/etc/$f"; \
|
||||
done
|
||||
|
||||
# create /tmp
|
||||
RUN mkdir -p rootfs/tmp \
|
||||
|
|
@ -151,6 +155,7 @@ RUN set -ex \
|
|||
|
||||
# test and make sure it works
|
||||
RUN chroot rootfs /bin/sh -xec 'true'
|
||||
|
||||
# test and make sure DNS works too
|
||||
RUN cp -L /etc/resolv.conf rootfs/etc/ \
|
||||
&& chroot rootfs /bin/sh -xec 'nslookup google.com' \
|
||||
12
update.sh
12
update.sh
|
|
@ -3,15 +3,7 @@ set -eo pipefail
|
|||
|
||||
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
|
||||
|
||||
upstreamVersion="$(curl -fsSL --compressed 'http://busybox.net/downloads/' | grep -E '<a href="busybox-[0-9][^"/]*.tar.bz2"' | sed -r 's!.*<a href="busybox-([0-9][^"/]*).tar.bz2".*!\1!' | sort -V | tail -1)"
|
||||
|
||||
ubuntuImage="$(awk 'toupper($1) == "FROM" { print $2 }' ubuntu/Dockerfile.builder)"
|
||||
ubuntuVersion="$(docker run --rm ubuntu:trusty bash -ec '
|
||||
sed -i "s/^deb-src/#&/g" /etc/apt/sources.list
|
||||
apt-get update -qq
|
||||
apt-cache show busybox-static | awk -F ": " "\$1 == \"Version\" { print \$2; exit }"
|
||||
')"
|
||||
upstreamVersion="$(curl -fsSL --compressed 'https://busybox.net/downloads/' | grep -E '<a href="busybox-[0-9][^"/]*.tar.bz2"' | sed -r 's!.*<a href="busybox-([0-9][^"/]*).tar.bz2".*!\1!' | sort -V | tail -1)"
|
||||
|
||||
set -x
|
||||
sed -ri 's/^(ENV BUSYBOX_VERSION) .*/\1 '"$upstreamVersion"'/;' upstream/Dockerfile.builder
|
||||
sed -ri 's/^(ENV BUSYBOX_VERSION) .*/\1 '"$ubuntuVersion"'/;' ubuntu/Dockerfile.builder
|
||||
sed -ri 's/^(ENV BUSYBOX_VERSION) .*/\1 '"$upstreamVersion"'/' */Dockerfile.builder
|
||||
|
|
|
|||
Loading…
Reference in New Issue