From ec6298d65b10a032b0c260ed5a3e43d8a467d7d1 Mon Sep 17 00:00:00 2001 From: Jess Frazelle Date: Wed, 7 Jun 2017 11:46:49 -0400 Subject: [PATCH] add bump-version to makefile Signed-off-by: Jess Frazelle --- .travis.yml | 40 +++++++++++++++++++++++++++++++--------- Makefile | 17 +++++++++++++++++ 2 files changed, 48 insertions(+), 9 deletions(-) diff --git a/.travis.yml b/.travis.yml index caa1d86d..6d21d711 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,19 +25,41 @@ provider: releases api_key: secure: "xz4uJ+vrF5+u3zucCPdnoXR/a0i8/oUzzDABuKiaB9AFFjrM8obLYo2AgMlP5zj/YHpGgTP51m/sx/qwJKfNvCoR2alBb2taYzJnhCfXzOuviZ0RZbM2LqA72lutdAzZ5eyMPCXcqvOjf6INnCmqQeJjDWo8UzGKSlWP2cqU/Qovs1vzurImME86DjqQ4EDaYlZS3tVc5BtEqmhylT2q0aO7gNJcMunDJpIEwb3vo8bbOoS6heQO2DVFf553lnZTSheEOERiF8r/O3vdMBCIqq7Xr2WIzJ4WGoNqzCk4sVcOZYP1yWa4Je/J09TaM8Uam+SZCG8p2lG+lr9toNv9jDHAA3Z986hAj+1NhRXTbwtRYM/KfL38UegvGfFCRvOAc+3AQhQaw1p2hX599in4zl/IcSVjF6IytJGj+JrCHU1p5Bd9qphFQKlXAXQKZwH+TKt3QTnrUQIUOn0QwcfgbvDUaA2XMsR9f0BWNshILvz79JJZmwXY7C7ufVSKdL+T+9dNn/5N7dMn6fWb7ZruwK3N6gLyVSulMinSYyNIHGiEH3mdoBr020KYD1w1+cfK4Ov6B8vf9k7atzHDPRklm2X0hvda2T0UXOv5+hr+OlvdhpqZKDB2HkVOUQUUfk7cL88u+FpU6pktlhJVLSCl292jWS05I1AYOiHChEFONeE=" - go: 1.7 + go: 1.8 file: - - cross/reg-darwin-386 - - cross/reg-freebsd-386 - - cross/reg-linux-386 - - cross/reg-windows-386 - - cross/reg-darwin-amd64 - - cross/reg-freebsd-amd64 - - cross/reg-linux-amd64 + - cross/reg-linux-amd64.md5 + - cross/reg-windows-386.sha256 - cross/reg-linux-arm + - cross/reg-darwin-amd64.md5 + - cross/reg-darwin-amd64 + - cross/reg-solaris-amd64.md5 + - cross/reg-linux-arm64.sha256 + - cross/reg-linux-arm.sha256 + - cross/reg-linux-386.sha256 + - cross/reg-darwin-386.md5 + - cross/reg-windows-386.md5 + - cross/reg-freebsd-amd64.md5 + - cross/reg-linux-arm64.md5 - cross/reg-linux-arm64 - - cross/reg-solaris-amd64 + - cross/reg-freebsd-amd64.sha256 + - cross/reg-freebsd-386.md5 + - cross/reg-linux-amd64.sha256 + - cross/reg-linux-386.md5 + - cross/reg-freebsd-386 + - cross/reg-solaris-amd64.sha256 - cross/reg-windows-amd64 + - cross/reg-windows-amd64.md5 + - cross/reg-windows-amd64.sha256 + - cross/reg-linux-arm.md5 + - cross/reg-darwin-386.sha256 + - cross/reg-darwin-amd64.sha256 + - cross/reg-windows-386 + - cross/reg-solaris-amd64 + - cross/reg-darwin-386 + - cross/reg-linux-386 + - cross/reg-freebsd-amd64 + - cross/reg-freebsd-386.sha256 + - cross/reg-linux-amd64 skip_cleanup: true on: tags: true diff --git a/Makefile b/Makefile index 7ac5aa2c..debf630d 100644 --- a/Makefile +++ b/Makefile @@ -73,6 +73,8 @@ GOOS=$(1) GOARCH=$(2) CGO_ENABLED=0 go build \ -o $(BUILDDIR)/$(1)/$(2)/$(NAME) \ -a -tags "$(BUILDTAGS) static_build netgo" \ -installsuffix netgo ${GO_LDFLAGS_STATIC} .; +md5sum $(BUILDDIR)/$(1)/$(2)/$(NAME) > $(BUILDDIR)/$(1)/$(2)/$(NAME).md5; +sha256sum $(BUILDDIR)/$(1)/$(2)/$(NAME) > $(BUILDDIR)/$(1)/$(2)/$(NAME).sha256; endef .PHONY: cross @@ -85,6 +87,8 @@ GOOS=$(1) GOARCH=$(2) CGO_ENABLED=0 go build \ -o $(BUILDDIR)/$(NAME)-$(1)-$(2) \ -a -tags "$(BUILDTAGS) static_build netgo" \ -installsuffix netgo ${GO_LDFLAGS_STATIC} .; +md5sum $(BUILDDIR)/$(NAME)-$(1)-$(2) > $(BUILDDIR)/$(NAME)-$(1)-$(2).md5; +sha256sum $(BUILDDIR)/$(NAME)-$(1)-$(2) > $(BUILDDIR)/$(NAME)-$(1)-$(2).sha256; endef .PHONY: release @@ -92,6 +96,19 @@ release: *.go VERSION ## Builds the cross-compiled binaries, naming them in such @echo "+ $@" $(foreach GOOSARCH,$(GOOSARCHES), $(call buildrelease,$(subst /,,$(dir $(GOOSARCH))),$(notdir $(GOOSARCH)))) +.PHONY: bump-version +BUMP := patch +bump-version: ## Bump the version in the version file. Set KIND to [ patch | major | minor ] + @go get -u github.com/jessfraz/junk/sembump # update sembump tool + $(eval NEW_VERSION = $(shell sembump --kind $(BUMP) $(VERSION))) + @echo "Bumping VERSION from $(VERSION) to $(NEW_VERSION)" + echo $(NEW_VERSION) > VERSION + @echo "Updating links to download binaries in README.md" + sed -i s/$(VERSION)/$(NEW_VERSION)/g README.md + git add VERSION README.md + git commit -vsam "Bump version to $(NEW_VERSION)" + @echo "Run make tag to create and push the tag for new version $(NEW_VERSION)" + .PHONY: tag tag: ## Create a new git tag to prepare to build a release git tag -sa $(VERSION) -m "$(VERSION)"