Skip to content

Commit a996681

Browse files
committed
Dockerfiles: re-use DISTRO, SUITE build-args where possible
Re-use these build-args, so that there's only one place to set them per Dockerfile. To verify this change: Check if the env-vars are set on the image: ```bash make UBUNTU_VERSIONS=ubuntu-bionic DEBIAN_VERSIONS="" RASPBIAN_VERSIONS="" CLI_DIR=$GOPATH/src/github.com/docker/cli ENGINE_DIR=$GOPATH/src/github.com/docker/docker deb docker image inspect debbuild-ubuntu-bionic/x86_64 --format '{{json .Config.Env }}' | jq . ``` Which should output something like; ```json [ "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/go/bin:/go/bin", "GOPROXY=direct", "GO111MODULE=off", "GOPATH=/go", "DOCKER_BUILDTAGS=apparmor seccomp selinux", "RUNC_BUILDTAGS=apparmor seccomp selinux", "DISTRO=ubuntu", "SUITE=bionic" ] ``` Signed-off-by: Sebastiaan van Stijn <[email protected]>
1 parent 99752aa commit a996681

File tree

13 files changed

+117
-61
lines changed

13 files changed

+117
-61
lines changed

deb/debian-buster/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=debian:buster
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=debian
3+
ARG SUITE=buster
4+
ARG BUILD_IMAGE=${DISTRO}:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -18,9 +21,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
1821
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
1922

2023
COPY sources/ /sources
21-
22-
ENV DISTRO debian
23-
ENV SUITE buster
24+
ARG DISTRO
25+
ARG SUITE
26+
ENV DISTRO=${DISTRO}
27+
ENV SUITE=${SUITE}
2428

2529
COPY --from=golang /usr/local/go /usr/local/go
2630

deb/debian-stretch/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=debian:stretch
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=debian
3+
ARG SUITE=stretch
4+
ARG BUILD_IMAGE=${DISTRO}:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -18,9 +21,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
1821
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
1922

2023
COPY sources/ /sources
21-
22-
ENV DISTRO debian
23-
ENV SUITE stretch
24+
ARG DISTRO
25+
ARG SUITE
26+
ENV DISTRO=${DISTRO}
27+
ENV SUITE=${SUITE}
2428

2529
COPY --from=golang /usr/local/go /usr/local/go
2630

deb/raspbian-buster/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=balenalib/rpi-raspbian:buster
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=raspbian
3+
ARG SUITE=buster
4+
ARG BUILD_IMAGE=balenalib/rpi-raspbian:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -18,9 +21,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
1821
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
1922

2023
COPY sources/ /sources
21-
22-
ENV DISTRO raspbian
23-
ENV SUITE buster
24+
ARG DISTRO
25+
ARG SUITE
26+
ENV DISTRO=${DISTRO}
27+
ENV SUITE=${SUITE}
2428

2529
COPY --from=golang /usr/local/go /usr/local/go
2630

deb/raspbian-stretch/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=balenalib/rpi-raspbian:stretch
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=raspbian
3+
ARG SUITE=stretch
4+
ARG BUILD_IMAGE=balenalib/rpi-raspbian:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -18,9 +21,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
1821
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
1922

2023
COPY sources/ /sources
21-
22-
ENV DISTRO raspbian
23-
ENV SUITE stretch
24+
ARG DISTRO
25+
ARG SUITE
26+
ENV DISTRO=${DISTRO}
27+
ENV SUITE=${SUITE}
2428

2529
COPY --from=golang /usr/local/go /usr/local/go
2630

deb/ubuntu-bionic/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=ubuntu:bionic
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=ubuntu
3+
ARG SUITE=bionic
4+
ARG BUILD_IMAGE=${DISTRO}:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -18,9 +21,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
1821
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
1922

2023
COPY sources/ /sources
21-
22-
ENV DISTRO ubuntu
23-
ENV SUITE bionic
24+
ARG DISTRO
25+
ARG SUITE
26+
ENV DISTRO=${DISTRO}
27+
ENV SUITE=${SUITE}
2428

2529
COPY --from=golang /usr/local/go /usr/local/go
2630

deb/ubuntu-cosmic/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=ubuntu:cosmic
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=ubuntu
3+
ARG SUITE=cosmic
4+
ARG BUILD_IMAGE=${DISTRO}:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -24,9 +27,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
2427
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
2528

2629
COPY sources/ /sources
27-
28-
ENV DISTRO ubuntu
29-
ENV SUITE cosmic
30+
ARG DISTRO
31+
ARG SUITE
32+
ENV DISTRO=${DISTRO}
33+
ENV SUITE=${SUITE}
3034

3135
COPY --from=golang /usr/local/go /usr/local/go
3236

deb/ubuntu-disco/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=ubuntu:disco
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=ubuntu
3+
ARG SUITE=disco
4+
ARG BUILD_IMAGE=${DISTRO}:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -24,9 +27,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
2427
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
2528

2629
COPY sources/ /sources
27-
28-
ENV DISTRO ubuntu
29-
ENV SUITE disco
30+
ARG DISTRO
31+
ARG SUITE
32+
ENV DISTRO=${DISTRO}
33+
ENV SUITE=${SUITE}
3034

3135
COPY --from=golang /usr/local/go /usr/local/go
3236

deb/ubuntu-eoan/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=ubuntu:eoan
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=ubuntu
3+
ARG SUITE=eoan
4+
ARG BUILD_IMAGE=${DISTRO}:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -24,9 +27,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
2427
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
2528

2629
COPY sources/ /sources
27-
28-
ENV DISTRO ubuntu
29-
ENV SUITE eoan
30+
ARG DISTRO
31+
ARG SUITE
32+
ENV DISTRO=${DISTRO}
33+
ENV SUITE=${SUITE}
3034

3135
COPY --from=golang /usr/local/go /usr/local/go
3236

deb/ubuntu-xenial/Dockerfile

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=ubuntu:xenial
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=ubuntu
3+
ARG SUITE=xenial
4+
ARG BUILD_IMAGE=${DISTRO}:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69

@@ -18,9 +21,10 @@ COPY ${COMMON_FILES} /root/build-deb/debian
1821
RUN mk-build-deps -t "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" -i /root/build-deb/debian/control
1922

2023
COPY sources/ /sources
21-
22-
ENV DISTRO ubuntu
23-
ENV SUITE xenial
24+
ARG DISTRO
25+
ARG SUITE
26+
ENV DISTRO=${DISTRO}
27+
ENV SUITE=${SUITE}
2428

2529
COPY --from=golang /usr/local/go /usr/local/go
2630

rpm/centos-7/Dockerfile

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
ARG GO_IMAGE
2-
ARG BUILD_IMAGE=centos:7
3-
FROM ${GO_IMAGE} as golang
2+
ARG DISTRO=centos
3+
ARG SUITE=7
4+
ARG BUILD_IMAGE=${DISTRO}:${SUITE}
5+
6+
FROM ${GO_IMAGE} AS golang
47

58
FROM ${BUILD_IMAGE}
69
ENV GOPROXY=direct
@@ -10,8 +13,10 @@ ENV PATH $PATH:/usr/local/go/bin:$GOPATH/bin
1013
ENV AUTO_GOPATH 1
1114
ENV DOCKER_BUILDTAGS seccomp selinux
1215
ENV RUNC_BUILDTAGS seccomp selinux
13-
ENV DISTRO centos
14-
ENV SUITE 7
16+
ARG DISTRO
17+
ARG SUITE
18+
ENV DISTRO=${DISTRO}
19+
ENV SUITE=${SUITE}
1520
RUN yum install -y rpm-build rpmlint
1621
COPY SPECS /root/rpmbuild/SPECS
1722
# Overwrite repo that was failing on aarch64

0 commit comments

Comments
 (0)