1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/hack/dockerfile/install/containerd.installer
Sebastiaan van Stijn a7a7c732c0
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>
2021-09-02 21:23:20 +02:00

42 lines
1.6 KiB
Bash
Executable file

#!/bin/sh
set -e
# 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_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_VERSION"
export BUILDTAGS='netgo osusergo static_build'
export EXTRA_FLAGS=${GO_BUILDMODE}
export EXTRA_LDFLAGS='-extldflags "-fno-PIC -static"'
# Reset build flags to nothing if we want a dynbinary
if [ "$1" = "dynamic" ]; then
export BUILDTAGS=''
export EXTRA_FLAGS=''
export EXTRA_LDFLAGS=''
fi
make
install -D bin/containerd "${PREFIX}/containerd"
install -D bin/containerd-shim "${PREFIX}/containerd-shim"
install -D bin/containerd-shim-runc-v2 "${PREFIX}/containerd-shim-runc-v2"
install -D bin/ctr "${PREFIX}/ctr"
)