go.yml 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. name: Go
  2. on:
  3. push:
  4. branches: [ master,release-* ]
  5. pull_request:
  6. branches: [ master,release-* ]
  7. jobs:
  8. build:
  9. name: Build
  10. runs-on: ubuntu-latest
  11. services:
  12. redis:
  13. image: redis
  14. ports:
  15. - 6379:6379
  16. options: --entrypoint redis-server
  17. steps:
  18. - name: Set up Go 1.x
  19. uses: actions/setup-go@v2
  20. with:
  21. go-version: ^1.13
  22. id: go
  23. - name: Check out code into the Go module directory
  24. uses: actions/checkout@v2
  25. - name: Get dependencies
  26. run: |
  27. go get -v -t -d ./...
  28. if [ -f Gopkg.toml ]; then
  29. curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
  30. dep ensure
  31. fi
  32. - name: Lint Go Code
  33. run: |
  34. export PATH=$PATH:$(go env GOPATH)/bin # temporary fix. See https://github.com/actions/setup-go/issues/14
  35. go get -u golang.org/x/lint/golint
  36. go vet ./...
  37. golint -set_exit_status $(go list ./...)
  38. - name: Test
  39. run: go test -v -race ./...