TUN-804: create make recipe for building deb package

This commit is contained in:
Chung-Ting Huang 2018-07-25 16:05:46 -05:00
parent 542bd90491
commit 0c414ceb8d
2 changed files with 37 additions and 2 deletions

View File

@ -2,13 +2,24 @@ VERSION := $(shell git describe --tags --always --dirty="-dev")
DATE := $(shell date -u '+%Y-%m-%d-%H%M UTC') DATE := $(shell date -u '+%Y-%m-%d-%H%M UTC')
VERSION_FLAGS := -ldflags='-X "main.Version=$(VERSION)" -X "main.BuildTime=$(DATE)"' VERSION_FLAGS := -ldflags='-X "main.Version=$(VERSION)" -X "main.BuildTime=$(DATE)"'
IMPORT_PATH := github.com/cloudflare/cloudflared
PACKAGE_DIR := $(CURDIR)/packaging
INSTALL_BINDIR := usr/local/bin
.PHONY: all .PHONY: all
all: cloudflared test all: cloudflared test
.PHONY: cloudflared .PHONY: cloudflared
cloudflared: cloudflared:
go build -v $(VERSION_FLAGS) ./... go build -v $(VERSION_FLAGS) $(IMPORT_PATH)/cmd/cloudflared
.PHONY: test .PHONY: test
test: test:
go test -v -race $(VERSION_FLAGS) ./... go test -v -race $(VERSION_FLAGS) ./...
.PHONY: cloudflared-deb
cloudflared-deb: cloudflared
mkdir -p $(PACKAGE_DIR)
cp cloudflared $(PACKAGE_DIR)/cloudflared
fakeroot fpm -C $(PACKAGE_DIR) -s dir -t deb --deb-compression bzip2 \
-a $(GOARCH) -v $(VERSION) -n cloudflared

View File

@ -11,4 +11,28 @@ stretch:
- export CGO_ENABLED=1 - export CGO_ENABLED=1
- export GOOS=linux - export GOOS=linux
- export GOARCH=amd64 - export GOARCH=amd64
- make all - make cloudflared
build-deb:
build_dir: *build_dir
builddeps:
- *pinned_go
- build-essential
- fakeroot
- rubygem-fpm
post-cache:
- export GOPATH=/cfsetup_build/
- export CGO_ENABLED=1
- export GOOS=linux
- export GOARCH=amd64
- make cloudflared-deb
test:
build_dir: *build_dir
builddeps:
- *pinned_go
- build-essential
post-cache:
- export GOPATH=/cfsetup_build/
- export CGO_ENABLED=1
- export GOOS=linux
- export GOARCH=amd64
- make test