From 0add9177313c667b6d826fb8630f1d49789312d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20L=C3=B6nnblad?= Date: Fri, 17 Jul 2020 11:41:45 +0200 Subject: [PATCH] Added make commands to create artifacts and upload them to a github release --- Makefile | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/Makefile b/Makefile index d3fb0fbe..e57cf75c 100644 --- a/Makefile +++ b/Makefile @@ -30,3 +30,46 @@ cover: go test -race -coverprofile=coverage.txt go tool cover -html=coverage.txt rm coverage.txt + +ARTIFACT_DIR := _artifacts + +# To upload artifacts for the current version; +# execute: make upload +# +# Check https://github.com/tcnksm/ghr for usage of ghr +upload: artifacts + ghr -replace $(VERS) $(ARTIFACT_DIR) + +# To build artifacts for the current version; +# execute: make artifacts +# +# Supported OS - Platform combinations: +# darwin - amd64 +# linux - amd64 +artifacts: _artifacts_clean _artifacts_darwin_amd64 _artifacts_linux_amd64 + +_artifacts_clean: + rm -rf $(ARTIFACT_DIR) + mkdir $(ARTIFACT_DIR) + +_artifacts_darwin_amd64: GOOS := darwin +_artifacts_darwin_amd64: GOARCH := amd64 +_artifacts_darwin_amd64: DIR := godog-$(VERS)-$(GOOS)-$(GOARCH) +_artifacts_darwin_amd64: + mkdir $(ARTIFACT_DIR)/$(DIR) + env GOOS=$(GOOS) GOARCH=$(GOARCH) go build -o $(ARTIFACT_DIR)/$(DIR)/godog ./cmd/godog + cp README.md $(ARTIFACT_DIR)/$(DIR)/README.md + cp LICENSE $(ARTIFACT_DIR)/$(DIR)/LICENSE + cd $(ARTIFACT_DIR) && tar -c --use-compress-program="pigz --fast" -f $(DIR).tar.gz $(DIR) && cd .. + rm -rf $(ARTIFACT_DIR)/$(DIR) + +_artifacts_linux_amd64: GOOS := linux +_artifacts_linux_amd64: GOARCH := amd64 +_artifacts_linux_amd64: DIR := godog-$(VERS)-$(GOOS)-$(GOARCH) +_artifacts_linux_amd64: + mkdir $(ARTIFACT_DIR)/$(DIR) + env GOOS=$(GOOS) GOARCH=$(GOARCH) go build -o $(ARTIFACT_DIR)/$(DIR)/godog ./cmd/godog + cp README.md $(ARTIFACT_DIR)/$(DIR)/README.md + cp LICENSE $(ARTIFACT_DIR)/$(DIR)/LICENSE + cd $(ARTIFACT_DIR) && tar -c --use-compress-program="pigz --fast" -f $(DIR).tar.gz $(DIR) && cd .. + rm -rf $(ARTIFACT_DIR)/$(DIR) \ No newline at end of file