summaryrefslogtreecommitdiff
path: root/hack/dockerfile
diff options
context:
space:
mode:
authorSebastiaan van Stijn <github@gone.nl>2021-07-26 14:48:52 +0200
committerSebastiaan van Stijn <github@gone.nl>2021-09-02 21:23:20 +0200
commita7a7c732c0dc02ee5b5515f4ca868ef50cafa4a1 (patch)
tree3bfd6496921d4e6be4ee17c02a30c2fc942bd517 /hack/dockerfile
parent3cec4b8cd42179e67dcfdda2adce03516c6a5cd1 (diff)
downloaddocker-a7a7c732c0dc02ee5b5515f4ca868ef50cafa4a1.tar.gz
Dockerfile: use version for some utilities instead of commit-sha
The golangci-lint, gotestsum, shfmt, and vndr utilities should generally be ok to be pinned by version instead of a specific sha. Also rename the corresponding env-vars / build-args accordingly: - GOLANGCI_LINT_COMMIT -> GOLANGCI_LINT_VERSION - GOTESTSUM_COMMIT -> GOTESTSUM_VERSION - SHFMT_COMMIT -> SHFMT_VERSION - VNDR_COMMIT -> VNDR_VERSION - CONTAINERD_COMMIT -> CONTAINERD_VERSION - RUNC_COMMIT -> RUNC_VERSION - ROOTLESS_COMMIT -> ROOTLESS_VERSION Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Diffstat (limited to 'hack/dockerfile')
-rwxr-xr-xhack/dockerfile/install/containerd.installer23
-rwxr-xr-xhack/dockerfile/install/golangci_lint.installer4
-rwxr-xr-xhack/dockerfile/install/gotestsum.installer4
-rwxr-xr-xhack/dockerfile/install/rootlesskit.installer11
-rwxr-xr-xhack/dockerfile/install/runc.installer12
-rwxr-xr-xhack/dockerfile/install/shfmt.installer6
-rwxr-xr-xhack/dockerfile/install/tini.installer9
-rwxr-xr-xhack/dockerfile/install/vndr.installer6
8 files changed, 44 insertions, 31 deletions
diff --git a/hack/dockerfile/install/containerd.installer b/hack/dockerfile/install/containerd.installer
index cf96e69887..77f6790814 100755
--- a/hack/dockerfile/install/containerd.installer
+++ b/hack/dockerfile/install/containerd.installer
@@ -1,16 +1,27 @@
#!/bin/sh
set -e
-# containerd is also pinned in vendor.conf. When updating the binary
-# version you may also need to update the vendor version to pick up bug
-# fixes or new APIs.
-: "${CONTAINERD_COMMIT:=72cec4be58a9eb6b2910f5d10f1c01ca47d231c0}" # v1.5.5
+# CONTAINERD_VERSION specifies the version of the containerd runtime binary
+# to install from the https://github.com/containerd/containerd repository.
+#
+# This version is used to build statically compiled containerd binaries, and
+# used for the integration tests. The distributed docker .deb and .rpm packages
+# depend on a separate (containerd.io) package, which may be a different version
+# as is specified here.
+#
+# Generally, the commit specified here should match a tagged release.
+#
+# The containerd golang package is also pinned in vendor.conf. When updating
+# the binary version you may also need to update the vendor version to pick up
+# bug fixes or new APIs, however, usually the Go packages are built from a
+# commit from the master branch.
+: "${CONTAINERD_VERSION:=v1.5.5}"
install_containerd() (
- echo "Install containerd version $CONTAINERD_COMMIT"
+ echo "Install containerd version $CONTAINERD_VERSION"
git clone https://github.com/containerd/containerd.git "$GOPATH/src/github.com/containerd/containerd"
cd "$GOPATH/src/github.com/containerd/containerd"
- git checkout -q "$CONTAINERD_COMMIT"
+ git checkout -q "$CONTAINERD_VERSION"
export BUILDTAGS='netgo osusergo static_build'
export EXTRA_FLAGS=${GO_BUILDMODE}
diff --git a/hack/dockerfile/install/golangci_lint.installer b/hack/dockerfile/install/golangci_lint.installer
index 01d87c242a..1bd43b5816 100755
--- a/hack/dockerfile/install/golangci_lint.installer
+++ b/hack/dockerfile/install/golangci_lint.installer
@@ -1,10 +1,10 @@
#!/bin/sh
-: "${GOLANGCI_LINT_COMMIT=v1.23.8}"
+: "${GOLANGCI_LINT_VERSION=v1.23.8}"
install_golangci_lint() {
set -e
export GO111MODULE=on
- GOBIN="${PREFIX}" go get "github.com/golangci/golangci-lint/cmd/golangci-lint@${GOLANGCI_LINT_COMMIT}"
+ GOBIN="${PREFIX}" go get "github.com/golangci/golangci-lint/cmd/golangci-lint@${GOLANGCI_LINT_VERSION}"
"${PREFIX}"/golangci-lint --version
}
diff --git a/hack/dockerfile/install/gotestsum.installer b/hack/dockerfile/install/gotestsum.installer
index ea10be814c..21a8bbe2ba 100755
--- a/hack/dockerfile/install/gotestsum.installer
+++ b/hack/dockerfile/install/gotestsum.installer
@@ -1,9 +1,9 @@
#!/bin/sh
-: ${GOTESTSUM_COMMIT:=v0.5.3}
+: ${GOTESTSUM_VERSION:=v0.5.3}
install_gotestsum() (
set -e
export GO111MODULE=on
- GOBIN="${PREFIX}" go get "gotest.tools/gotestsum@${GOTESTSUM_COMMIT}"
+ GOBIN="${PREFIX}" go get "gotest.tools/gotestsum@${GOTESTSUM_VERSION}"
)
diff --git a/hack/dockerfile/install/rootlesskit.installer b/hack/dockerfile/install/rootlesskit.installer
index 1d8e7d9ed9..2968f5b722 100755
--- a/hack/dockerfile/install/rootlesskit.installer
+++ b/hack/dockerfile/install/rootlesskit.installer
@@ -1,7 +1,6 @@
#!/bin/sh
-# v0.14.4
-: "${ROOTLESSKIT_COMMIT:=87d443683ac1e8aba4110b8081f15aaae432aaa2}"
+: "${ROOTLESSKIT_VERSION:=v0.14.4}"
install_rootlesskit() {
case "$1" in
@@ -26,12 +25,8 @@ install_rootlesskit_dynamic() {
}
_install_rootlesskit() (
- echo "Install rootlesskit version $ROOTLESSKIT_COMMIT"
- git clone https://github.com/rootless-containers/rootlesskit.git "$GOPATH/src/github.com/rootless-containers/rootlesskit"
- cd "$GOPATH/src/github.com/rootless-containers/rootlesskit" || exit 1
- git checkout -q "$ROOTLESSKIT_COMMIT"
- export GO111MODULE=on
+ echo "Install rootlesskit version ${ROOTLESSKIT_VERSION}"
for f in rootlesskit rootlesskit-docker-proxy; do
- go build $BUILD_MODE -ldflags="$ROOTLESSKIT_LDFLAGS" -o "${PREFIX}/$f" github.com/rootless-containers/rootlesskit/cmd/$f
+ GOBIN="${PREFIX}" GO111MODULE=on go install ${BUILD_MODE} -ldflags="$ROOTLESSKIT_LDFLAGS" "github.com/rootless-containers/rootlesskit/cmd/${f}@${ROOTLESSKIT_VERSION}"
done
)
diff --git a/hack/dockerfile/install/runc.installer b/hack/dockerfile/install/runc.installer
index d73534846d..99b99e5b87 100755
--- a/hack/dockerfile/install/runc.installer
+++ b/hack/dockerfile/install/runc.installer
@@ -1,19 +1,23 @@
#!/bin/sh
set -e
-# When updating RUNC_COMMIT, also update runc in vendor.conf accordingly
+# RUNC_VERSION specifies the version of runc to install from the
+# https://github.com/opencontainers/runc repository.
+#
# The version of runc should match the version that is used by the containerd
# version that is used. If you need to update runc, open a pull request in
# the containerd project first, and update both after that is merged.
-: ${RUNC_COMMIT:=52b36a2dd837e8462de8e01458bf02cf9eea47dd} # v1.0.2
+#
+# When updating RUNC_VERSION, consider updating runc in vendor.conf accordingly
+: "${RUNC_VERSION:=v1.0.2}"
install_runc() {
RUNC_BUILDTAGS="${RUNC_BUILDTAGS:-"seccomp"}"
- echo "Install runc version $RUNC_COMMIT (build tags: $RUNC_BUILDTAGS)"
+ echo "Install runc version $RUNC_VERSION (build tags: $RUNC_BUILDTAGS)"
git clone https://github.com/opencontainers/runc.git "$GOPATH/src/github.com/opencontainers/runc"
cd "$GOPATH/src/github.com/opencontainers/runc"
- git checkout -q "$RUNC_COMMIT"
+ git checkout -q "$RUNC_VERSION"
if [ -z "$1" ]; then
target=static
else
diff --git a/hack/dockerfile/install/shfmt.installer b/hack/dockerfile/install/shfmt.installer
index a2096522c3..4c73727d04 100755
--- a/hack/dockerfile/install/shfmt.installer
+++ b/hack/dockerfile/install/shfmt.installer
@@ -1,11 +1,11 @@
#!/bin/sh
-: "${SHFMT_COMMIT:=01725bdd30658db1fe1b9e02173c3060061fe86f}" # v3.0.2
+: "${SHFMT_VERSION:=v3.0.2}"
install_shfmt() {
- echo "Install shfmt version $SHFMT_COMMIT"
+ echo "Install shfmt version $SHFMT_VERSION"
git clone https://github.com/mvdan/sh.git "$GOPATH/src/github.com/mvdan/sh"
cd "$GOPATH/src/github.com/mvdan/sh" || exit 1
- git checkout -q "$SHFMT_COMMIT"
+ git checkout -q "$SHFMT_VERSION"
GO111MODULE=on go build ${GO_BUILDMODE} -v -o "${PREFIX}/shfmt" ./cmd/shfmt
}
diff --git a/hack/dockerfile/install/tini.installer b/hack/dockerfile/install/tini.installer
index 7b6debbfc7..febceb15eb 100755
--- a/hack/dockerfile/install/tini.installer
+++ b/hack/dockerfile/install/tini.installer
@@ -1,12 +1,15 @@
#!/bin/sh
-: ${TINI_COMMIT:=de40ad007797e0dcd8b7126f27bb87401d224240} # v0.19.0
+# TINI_VERSION specifies the version of tini (docker-init) to build, and install
+# from the https://github.com/krallin/tini repository. This binary is used
+# when starting containers with the `--init` option.
+: "${TINI_VERSION:=v0.19.0}"
install_tini() {
- echo "Install tini version $TINI_COMMIT"
+ echo "Install tini version $TINI_VERSION"
git clone https://github.com/krallin/tini.git "$GOPATH/tini"
cd "$GOPATH/tini"
- git checkout -q "$TINI_COMMIT"
+ git checkout -q "$TINI_VERSION"
cmake .
make tini-static
mkdir -p "${PREFIX}"
diff --git a/hack/dockerfile/install/vndr.installer b/hack/dockerfile/install/vndr.installer
index c644e6b48c..00ac6ea89c 100755
--- a/hack/dockerfile/install/vndr.installer
+++ b/hack/dockerfile/install/vndr.installer
@@ -1,11 +1,11 @@
#!/bin/sh
-: "${VNDR_COMMIT:=f12b881cb8f081a5058408a58f429b9014833fc6}" # v0.1.2
+: "${VNDR_VERSION:=v0.1.2}"
install_vndr() {
- echo "Install vndr version $VNDR_COMMIT"
+ echo "Install vndr version $VNDR_VERSION"
git clone https://github.com/LK4D4/vndr.git "$GOPATH/src/github.com/LK4D4/vndr"
cd "$GOPATH/src/github.com/LK4D4/vndr" || exit 1
- git checkout -q "$VNDR_COMMIT"
+ git checkout -q "$VNDR_VERSION"
go build ${GO_BUILDMODE} -v -o "${PREFIX}/vndr" .
}