| #!/bin/sh |
| |
| # v0.14.2 |
| : "${ROOTLESSKIT_COMMIT:=4cd567642273d369adaadcbadca00880552c1778}" |
| |
| install_rootlesskit() { |
| case "$1" in |
| "dynamic") |
| install_rootlesskit_dynamic |
| return |
| ;; |
| "") |
| export CGO_ENABLED=0 |
| _install_rootlesskit |
| ;; |
| *) |
| echo 'Usage: $0 [dynamic]' |
| ;; |
| esac |
| } |
| |
| install_rootlesskit_dynamic() { |
| export ROOTLESSKIT_LDFLAGS="-linkmode=external" install_rootlesskit |
| export BUILD_MODE=${GO_BUILDMODE} |
| _install_rootlesskit |
| } |
| |
| _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 |
| # TODO remove GOPROXY override once we updated to Go 1.14+ |
| # Using goproxy instead of "direct" to work around an issue in go mod |
| # on Go 1.13 not working with older git versions (default version on |
| # CentOS 7 is git 1.8), see https://github.com/golang/go/issues/38373 |
| export GOPROXY="https://proxy.golang.org" |
| 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 |
| done |
| ) |