github.com/wanliu/go-oauth2-server@v0.0.0-20180817021415-f928fa1580df/Makefile (about) 1 PHONY: update-deps install-deps fmt lint golint test test-with-coverage build 2 # TODO: When Go 1.9 is released vendor folder should be ignored automatically 3 HOST=ec2-user@test.wanliu.biz 4 PACKAGES=`go list ./... | grep -v vendor | grep -v mocks` 5 TIMESTAMP=$(shell date +%s) 6 APPNAME=BlueGreenDemoApplication 7 GROUPNAME=BlueGreenDemoFleet-i3ggrub 8 PUSH_SCRIPT=aws deploy push --application-name $(APPNAME) \ 9 --s3-location s3://jiejie-deploy/oauth2-server-$(TIMESTAMP).zip \ 10 --source ./build 11 AWSPUSH=$(shell $(PUSH_SCRIPT)) 12 13 # sed 's/<deployment-group-name>.*//' 14 # aws deploy create-deployment --application-name Jiejie --s3-location bucket=jiejie-deploy,key=oauth2-server-1504866286.zip,bundleType=zip,eTag=0521449d68f8b6b0109b060e0ece04b9 --deployment-group-name <deployment-group-name> --deployment-config-name <deployment-config-name> --description <description> 15 16 update-deps: 17 rm -rf Godeps 18 rm -rf vendor 19 go get github.com/tools/godep 20 godep save ./... 21 22 install-deps: 23 go get github.com/tools/godep 24 godep restore 25 26 fmt: 27 for pkg in ${PACKAGES}; do \ 28 go fmt $$pkg; \ 29 done; 30 31 lint: 32 gometalinter --disable-all -E vet -E gofmt -E misspell -E ineffassign -E goimports -E deadcode --tests --vendor ./... 33 34 golint: 35 for pkg in ${PACKAGES}; do \ 36 golint $$pkg; \ 37 done; 38 39 test: 40 for pkg in ${PACKAGES}; do \ 41 go test $$pkg; \ 42 done; 43 44 test-with-coverage: 45 echo "" > coverage.out 46 echo "mode: set" > coverage-all.out 47 for pkg in ${PACKAGES}; do \ 48 go test -coverprofile=coverage.out -covermode=set $$pkg; \ 49 tail -n +2 coverage.out >> coverage-all.out; \ 50 done; 51 #go tool cover -html=coverage-all.out 52 53 build-linux: 54 @go generate ./web 55 @docker run -it --rm -v $(shell pwd):/go/src/github.com/wanliu/go-oauth2-server --entrypoint "go" go-oauth2-server:latest build -o build/oauth2-server-linux . 56 57 build-docker: 58 @docker build --rm -t go-oauth2-server:latest . 59 60 clean-deploy: oauth2-server.zip 61 @rm oauth2-server.zip 62 63 deploy-cd: build/oauth2-server-linux 64 @cp appspec.yml build/ 65 @cp -r scripts build/ 66 $(eval RETURN := $(AWSPUSH)) 67 @echo "$(RETURN)" | sed 's/To deploy with this revision, run: //' | sed 's/<deployment-group-name>.*/$(GROUPNAME)/' | sh 68 69 deploy: build/oauth2-server-linux 70 @-rm build/oauth2-server.zip 71 @cp -r scripts build/ 72 @mkdir -p build/public/; cp -r public/styles build/public 73 @cp -r public/img build/public 74 @cp -r public/js build/public 75 @cp -r public/styles build/public 76 @cp -r public/slick build/public 77 @cp -r public/fontawesome build/public 78 @cp public/favicon.ico build/public 79 @cd build; zip -r oauth2-server.zip . 80 @ansible-playbook -i ansible/hosts ansible/site.yml