Advertisement
Guest User

Untitled

a guest
Mar 30th, 2017
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.92 KB | None | 0 0
  1. .PHONY: build
  2.  
  3. PACKAGES = $(shell go list ./... | grep -v /vendor/)
  4.  
  5. ifneq ($(shell uname), Darwin)
  6. EXTLDFLAGS = -extldflags "-static" $(null)
  7. else
  8. EXTLDFLAGS =
  9. endif
  10.  
  11. all: gen build_static
  12.  
  13. deps: deps_backend deps_frontend
  14.  
  15. deps_frontend:
  16. go get -u github.com/drone/drone-ui/dist
  17.  
  18. deps_backend:
  19. go get -u golang.org/x/tools/cmd/cover
  20. go get -u github.com/jteeuwen/go-bindata/...
  21. go get -u github.com/elazarl/go-bindata-assetfs/...
  22. go get -u github.com/tidwall/redlog
  23.  
  24. gen: gen_template gen_migrations
  25.  
  26. gen_template:
  27. go generate github.com/drone/drone/server/template
  28.  
  29. gen_migrations:
  30. go generate github.com/drone/drone/store/datastore/ddl
  31.  
  32. test:
  33. go test -cover $(PACKAGES)
  34.  
  35. # docker run --publish=3306:3306 -e MYSQL_DATABASE=test -e MYSQL_ALLOW_EMPTY_PASSWORD=yes mysql:5.6.27
  36. test_mysql:
  37. DATABASE_DRIVER="mysql" DATABASE_CONFIG="root@tcp(127.0.0.1:3306)/test?parseTime=true" go test github.com/drone/drone/store/datastore
  38.  
  39. # docker run --publish=5432:5432 postgres:9.4.5
  40. test_postgres:
  41. DATABASE_DRIVER="postgres" DATABASE_CONFIG="host=127.0.0.1 user=postgres dbname=postgres sslmode=disable" go test github.com/drone/drone/store/datastore
  42.  
  43.  
  44. # build the release files
  45. build: build_static build_cross build_tar build_sha
  46.  
  47. build_static:
  48. go install -ldflags '${EXTLDFLAGS}-X github.com/drone/drone/version.VersionDev=$(DRONE_BUILD_NUMBER)' github.com/drone/drone/drone
  49. mkdir -p release
  50. cp $(GOPATH)/bin/drone release/
  51.  
  52. # TODO this is getting moved to a shell script, do not alter
  53. build_cross:
  54. GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o release/linux/amd64/drone github.com/drone/drone/drone
  55. GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build -o release/linux/arm64/drone github.com/drone/drone/drone
  56. GOOS=linux GOARCH=arm CGO_ENABLED=0 go build -o release/linux/arm/drone github.com/drone/drone/drone
  57. GOOS=windows GOARCH=amd64 CGO_ENABLED=0 go build -o release/windows/amd64/drone github.com/drone/drone/drone
  58. GOOS=darwin GOARCH=amd64 CGO_ENABLED=0 go build -o release/darwin/amd64/drone github.com/drone/drone/drone
  59.  
  60. # TODO this is getting moved to a shell script, do not alter
  61. build_tar:
  62. tar -cvzf release/linux/amd64/drone.tar.gz -C release/linux/amd64 drone
  63. tar -cvzf release/linux/arm64/drone.tar.gz -C release/linux/arm64 drone
  64. tar -cvzf release/linux/arm/drone.tar.gz -C release/linux/arm drone
  65. tar -cvzf release/windows/amd64/drone.tar.gz -C release/windows/amd64 drone
  66. tar -cvzf release/darwin/amd64/drone.tar.gz -C release/darwin/amd64 drone
  67.  
  68. # TODO this is getting moved to a shell script, do not alter
  69. build_sha:
  70. sha256sum release/linux/amd64/drone.tar.gz > release/linux/amd64/drone.sha256
  71. sha256sum release/linux/arm64/drone.tar.gz > release/linux/arm64/drone.sha256
  72. sha256sum release/linux/arm/drone.tar.gz > release/linux/arm/drone.sha256
  73. sha256sum release/windows/amd64/drone.tar.gz > release/windows/amd64/drone.sha256
  74. sha256sum release/darwin/amd64/drone.tar.gz > release/darwin/amd64/drone.sha256
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement