1#!/usr/bin/env bash 2# 3# Build all release binaries and images to directory ./release. 4# Run from repository root. 5# 6set -e 7 8VERSION=$1 9if [ -z "${VERSION}" ]; then 10 echo "Usage: ${0} VERSION" >> /dev/stderr 11 exit 255 12fi 13 14if ! command -v docker >/dev/null; then 15 echo "cannot find docker" 16 exit 1 17fi 18 19ETCD_ROOT=$(dirname "${BASH_SOURCE[0]}")/.. 20 21pushd "${ETCD_ROOT}" >/dev/null 22 echo Building etcd binary... 23 ./scripts/build-binary "${VERSION}" 24 25 for TARGET_ARCH in "amd64" "arm64" "ppc64le"; do 26 echo Building ${TARGET_ARCH} docker image... 27 GOOS=linux GOARCH=${TARGET_ARCH} BINARYDIR=release/etcd-${VERSION}-linux-${TARGET_ARCH} BUILDDIR=release ./scripts/build-docker "${VERSION}" 28 done 29popd >/dev/null 30