File: containerd.installer

package info (click to toggle)
docker.io 26.1.5%2Bdfsg1-9
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 68,576 kB
  • sloc: sh: 5,748; makefile: 912; ansic: 664; asm: 228; python: 162
file content (41 lines) | stat: -rwxr-xr-x 1,551 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/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.mod. 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.7.18}"

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-runc-v2 "${PREFIX}/containerd-shim-runc-v2"
	install -D bin/ctr "${PREFIX}/ctr"
)