#282 arm image build

pull/286/head 0.11.2
Karolis Rusenas 2018-10-07 16:50:56 +01:00
parent f83b58f534
commit f571b82cf4
3 changed files with 35 additions and 0 deletions

4
Dockerfile.aarch64 Normal file
View File

@ -0,0 +1,4 @@
FROM arm64v8/alpine:3.8
ADD ca-certificates.crt /etc/ssl/certs/
COPY cmd/keel/release/keel-linux-aarch64 /keel
ENTRYPOINT ["/keel"]

4
Dockerfile.armhf Normal file
View File

@ -0,0 +1,4 @@
FROM arm32v6/alpine:3.8
ADD ca-certificates.crt /etc/ssl/certs/
COPY cmd/keel/release/keel-linux-arm /keel
ENTRYPOINT ["/keel"]

View File

@ -2,12 +2,39 @@ JOBDATE ?= $(shell date -u +%Y-%m-%dT%H%M%SZ)
GIT_REVISION = $(shell git rev-parse --short HEAD)
VERSION ?= $(shell git describe --tags --abbrev=0)
LDFLAGS += -s -w
LDFLAGS += -X github.com/keel-hq/keel/version.Version=$(VERSION)
LDFLAGS += -X github.com/keel-hq/keel/version.Revision=$(GIT_REVISION)
LDFLAGS += -X github.com/keel-hq/keel/version.BuildDate=$(JOBDATE)
.PHONY: release
fetch-certs:
curl --remote-name --time-cond cacert.pem https://curl.haxx.se/ca/cacert.pem
cp cacert.pem ca-certificates.crt
compress:
upx --brute cmd/keel/release/keel-linux-arm
upx --brute cmd/keel/release/keel-linux-aarch64
build-binaries:
go get github.com/mitchellh/gox
@echo "++ Building keel binaries"
cd cmd/keel && gox -verbose -output="release/{{.Dir}}-{{.OS}}-{{.Arch}}" \
-ldflags "$(LDFLAGS)" -osarch="linux/arm"
@echo "++ building aarch64 binary"
cd cmd/keel && env GOARCH=arm64 GOOS=linux go build -ldflags="-s -w" -o release/keel-linux-aarch64
armhf:
docker build -t keelhq/keel-arm:latest -f Dockerfile.armhf .
docker push keelhq/keel-arm:latest
aarch64:
docker build -t keelhq/keel-aarch64:latest -f Dockerfile.aarch64 .
docker push keelhq/keel-aarch64:latest
arm: build-binaries compress fetch-certs armhf aarch64
test:
go test -v `go list ./... | egrep -v /vendor/`