diff --git a/.gitignore b/.gitignore index eda294da..7e482d8a 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ cli53.sublime-project release/ coverage.txt coverage/ + +/dist/ diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 00000000..ee1a02f2 --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,23 @@ +builds: + - binary: cli53 + main: ./cmd/cli53 + ldflags: -s -w -X=github.com/barnybug/cli53.version={{.Version}} + goos: + - linux + - darwin + - windows + goarch: + - amd64 + - 386 + - arm + - arm64 + ignore: + - goos: darwin + goarch: 386 + hooks: + post: make upx +archive: + name_template: "{{ .ProjectName }}-{{ .Os }}-{{ .Arch }}" + format: binary + replacements: + darwin: mac diff --git a/.travis.yml b/.travis.yml index 7bdccf15..50b88ad5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,6 @@ language: go go: -- 1.7 +- 1.9 sudo: false before_install: - pip install --user codecov @@ -8,26 +8,9 @@ before_script: - 'mkdir -p $GOPATH/bin && wget -q https://github.com/barnybug/cli53/releases/download/0.6.0/upx -O $GOPATH/bin/upx && chmod +x $GOPATH/bin/upx' script: - make deps test-coverage -before_deploy: -- make release after_success: - codecov -deploy: - provider: releases - api_key: - secure: nmqbnVuj7XpuUMs5YmB2X+/Dkq5I2hoWaIUSO5Okse7D8iYW0fWPeqR5xMy3ctSlHJgNarMx3qPJZmr+lJAuwT7xZhvW2kFOJE7Ra/nJgLtuWOMu4zrJ2cLNYTgE4fN3jag5VkgnuB4Ax57QZESssWKLvyBVA7ePaV/HXe1hX7k= - file: - - release/cli53-linux-386 - - release/cli53-linux-amd64 - - release/cli53-linux-arm - - release/cli53-mac-amd64 - - release/cli53-windows-386.exe - - release/cli53-windows-amd64.exe - - release/SHA256SUMS - on: - repo: barnybug/cli53 - tags: true - skip_cleanup: true + - test -n "$TRAVIS_TAG" && curl -sL https://git.io/goreleaser | bash env: global: - secure: "M6bUhLlefRqTAfbVfQd2/j4/4CsifJqKQ6Szz2G5RTI0ADrbdNnS0m3SqTdk\nsbp/4cgwaQM+sgnISW2alDaGP+1PmkyXGyftZdLHM1NuGca8/yKVWy/vLW3e\nv++AiYPFLTRxoiZJ9j0bdHjGOffCMvotZhtc9xv0VXVijGdHiIM=" diff --git a/Makefile b/Makefile index a74db565..cc4252fe 100644 --- a/Makefile +++ b/Makefile @@ -1,9 +1,8 @@ export GO15VENDOREXPERIMENT=1 exe = ./cmd/cli53 -releaseargs = -ldflags '-w -s' -.PHONY: all build install test coverage deps release +.PHONY: all build install test coverage deps all: install @@ -18,16 +17,9 @@ build: install: go install $(exe) -release: - GOOS=linux GOARCH=386 go build $(releaseargs) -o release/cli53-linux-386 $(exe) - GOOS=linux GOARCH=amd64 go build $(releaseargs) -o release/cli53-linux-amd64 $(exe) - GOOS=linux GOARCH=arm go build $(releaseargs) -o release/cli53-linux-arm $(exe) - GOOS=darwin GOARCH=amd64 go build $(releaseargs) -o release/cli53-mac-amd64 $(exe) - GOOS=windows GOARCH=386 go build $(releaseargs) -o release/cli53-windows-386.exe $(exe) - GOOS=windows GOARCH=amd64 go build $(releaseargs) -o release/cli53-windows-amd64.exe $(exe) - goupx release/cli53-linux-amd64 - upx release/cli53-linux-386 release/cli53-linux-arm release/cli53-windows-386.exe - cd release; sha256sum cli53-* > SHA256SUMS +upx: + goupx dist/cli53-linux-amd64/cli53-linux-amd64 + upx dist/cli53-linux-386/cli53-linux-386 dist/cli53-linux-arm/cli53-linux-arm dist/cli53-windows-386/cli53-windows-386.exe test-unit: go test diff --git a/main.go b/main.go index 60611fd3..0d4a7d24 100644 --- a/main.go +++ b/main.go @@ -9,7 +9,7 @@ import ( ) var r53 *route53.Route53 -var version = "0.8.10" +var version = "master" // Main entry point for cli53 application func Main(args []string) int {