diff --git a/.gitignore b/.gitignore index e52479e11..c221bc6a2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ .DS_Store .release/ kopia-*.tar.gz +kopia-*.zip diff --git a/.travis.yml b/.travis.yml index 6aff3cd90..f817f492e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,12 +5,12 @@ go: os: - linux install: make travis-setup -script: make travis-release +script: make all travis-release deploy: provider: releases api_key: secure: MDSDX0cJgeuQMAbPei13K1FaNxPpfqz1mYLaiAUeaIIfT0C4by6HiovUJxCxImen4IFro2AP9cbWpsGK5KlHnNHbzk62f1a1MpVEv4+dFi4cOJXs/I1hnjE8xnC8x/OzgiPtqzF3xsMvdC7oXjtVc6BV/Txq1KoLbfK9beOXdC08LxoHPIb/KPMokPZeqfry/mkfkeG9nVMZklAf71ltF7JQ9vSp9oebLXwFfjx71+2NhVWKKX56KBdJTw5HTQeNW5s+5/ZJoM31LzCVG9dT1jF4Ob/6gJv5s302RX3wSoM3VbsHgEYpEMVSDHMKxJoIRB6jvsmVb9SY3cTNzyx9SpC8IQ+YmYxzzBD3MSpO8Sa2RPqqG+fh5udI85WBSJHSVnV/7bQKX/0r9oIUdgjzBwfowhvYSAOKdKO5x2pdTXwWgJu59CO+HZASOY0HJuLnpnMs7mpdu01hMuEjE+a5iVnoQkith3bNdtcNO2vvGnZqz5RAH8A4WGbcAT/EO1VGtx6iFJOowA1Zd5Ke/TJNnOViBesUnd29Mp5JQsKwglsyu6Abmh7jor+osdsu4u+Fg6Ui+EIoEgQ5pjsl9Cy2kLwmQgiBy3WCEYjARlz08/LKNU//ZWGhFrcYgfia/1xbwmaAZbd4fyxLvdWJ4rZ5JWKhEHB4Nc7Ab4fqk2ebZjw= - file: kopia-*.tar.gz + file: kopia-*.{zip,tar.gz} file_glob: true on: tags: true diff --git a/Makefile b/Makefile index 3e801f166..fc47464aa 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,7 @@ BUILD_VERSION ?= $(shell git describe --dirty) BUILD_INFO ?= $(USER)@$(shell hostname -s)_$(shell date +%Y%m%d_%H%M%S) -RELEASE_VERSION ?= $(BUILD_VERSION)-$(shell go env GOOS)-$(shell go env GOARCH) +RELEASE_SUFFIX ?= $(shell go env GOOS)-$(shell go env GOARCH) +RELEASE_VERSION ?= $(BUILD_VERSION)-$(RELEASE_SUFFIX) RELEASE_NAME = kopia-$(RELEASE_VERSION) LDARGS="-X main.buildVersion=$(BUILD_VERSION) -X main.buildInfo=$(BUILD_INFO)" RELEASE_TMP_DIR = .release @@ -32,15 +33,18 @@ release: go build -o $(RELEASE_TMP_DIR)/$(RELEASE_NAME)/bin/kopia$(EXE_SUFFIX) -ldflags $(LDARGS) github.com/kopia/kopia/cmd/kopia cp README.md LICENSE $(RELEASE_TMP_DIR)/$(RELEASE_NAME) (cd $(RELEASE_TMP_DIR) && tar -cvzf $(RELEASE_NAME).tar.gz $(RELEASE_NAME)/) - mv $(RELEASE_TMP_DIR)/$(RELEASE_NAME).tar.gz . + (cd $(RELEASE_TMP_DIR) && zip -r $(RELEASE_NAME).zip $(RELEASE_NAME)/) + mv $(RELEASE_TMP_DIR)/$(RELEASE_NAME).{zip,tar.gz} . travis-setup: deps dev-deps -travis-release: all - GOARCH=amd64 GOOS=windows EXE_SUFFIX=.exe make release - GOARCH=amd64 GOOS=linux make release - GOARCH=amd64 GOOS=darwin make release - GOARCH=arm GOOS=linux make release +travis-release: + GOARCH=386 GOOS=windows EXE_SUFFIX=.exe RELEASE_SUFFIX=windows-x86 make release + GOARCH=amd64 GOOS=windows EXE_SUFFIX=.exe RELEASE_SUFFIX=windows-x64 make release + GOARCH=386 GOOS=linux RELEASE_SUFFIX=linux-x86 make release + GOARCH=amd64 GOOS=linux RELEASE_SUFFIX=linux-x64 make release + GOARCH=amd64 GOOS=darwin RELEASE_SUFFIX=macosx-x64 make release + GOARCH=arm GOOS=linux RELEASE_SUFFIX=linux-arm make release rm -rf $(RELEASE_TMP_DIR) dev-deps: