2020-11-16 17:38:04 +03:00
#!/usr/bin/env bash
2017-05-03 07:00:05 +03:00
set -e
if [ -z " $VERSION " ] ; then
VERSION = $( git rev-parse HEAD)
fi
if [ -z " $CODENAME " ] ; then
CODENAME = cheddar
fi
if [ -z " $DATE " ] ; then
DATE = $( date -u '+%Y-%m-%d_%I:%M:%S%p' )
fi
2017-09-08 15:50:04 +03:00
echo " Building ${ VERSION } ${ CODENAME } ${ DATE } "
2020-09-16 16:46:04 +03:00
GIT_REPO_URL = 'github.com/traefik/traefik/pkg/version'
2017-05-04 10:31:39 +03:00
GO_BUILD_CMD = "go build -ldflags"
2017-09-08 15:50:04 +03:00
GO_BUILD_OPT = " -s -w -X ${ GIT_REPO_URL } .Version= ${ VERSION } -X ${ GIT_REPO_URL } .Codename= ${ CODENAME } -X ${ GIT_REPO_URL } .BuildDate= ${ DATE } "
2017-05-04 10:31:39 +03:00
2017-11-03 19:02:14 +03:00
# Build amd64 binaries
2017-05-03 07:00:05 +03:00
OS_PLATFORM_ARG = ( linux windows darwin)
OS_ARCH_ARG = ( amd64)
2019-05-10 18:24:06 +03:00
for OS in " ${ OS_PLATFORM_ARG [@] } " ; do
2017-11-03 19:02:14 +03:00
BIN_EXT = ''
if [ " $OS " = = "windows" ] ; then
BIN_EXT = '.exe'
fi
2019-05-10 18:24:06 +03:00
for ARCH in " ${ OS_ARCH_ARG [@] } " ; do
2017-09-08 15:50:04 +03:00
echo " Building binary for ${ OS } / ${ ARCH } ... "
2017-11-03 19:02:14 +03:00
GOARCH = ${ ARCH } GOOS = ${ OS } CGO_ENABLED = 0 ${ GO_BUILD_CMD } " ${ GO_BUILD_OPT } " -o " dist/traefik_ ${ OS } - ${ ARCH } ${ BIN_EXT } " ./cmd/traefik/
2017-05-03 07:00:05 +03:00
done
done
# Build arm64 binaries
OS_PLATFORM_ARG = ( linux)
OS_ARCH_ARG = ( arm64)
2019-05-10 18:24:06 +03:00
for OS in " ${ OS_PLATFORM_ARG [@] } " ; do
for ARCH in " ${ OS_ARCH_ARG [@] } " ; do
2017-09-08 15:50:04 +03:00
echo " Building binary for ${ OS } / ${ ARCH } ... "
GOARCH = ${ ARCH } GOOS = ${ OS } CGO_ENABLED = 0 ${ GO_BUILD_CMD } " ${ GO_BUILD_OPT } " -o " dist/traefik_ ${ OS } - ${ ARCH } " ./cmd/traefik/
2017-05-03 07:00:05 +03:00
done
done