ci.yml 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. name: Continuous integration
  2. on: [push]
  3. jobs:
  4. lint:
  5. name: Lint
  6. runs-on: ubuntu-latest
  7. env:
  8. GO111MODULE: "on"
  9. steps:
  10. - name: Set up Go 1.14
  11. uses: actions/setup-go@v1
  12. with:
  13. go-version: 1.14
  14. id: go
  15. - name: Checkout code into the Go module directory
  16. uses: actions/checkout@v2
  17. - name: Run golangci-lint
  18. run: |
  19. curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b . v1.27.0
  20. ./golangci-lint run
  21. build:
  22. name: Build
  23. runs-on: ubuntu-latest
  24. env:
  25. GO111MODULE: "on"
  26. steps:
  27. - name: Set up Go 1.14
  28. uses: actions/setup-go@v1
  29. with:
  30. go-version: 1.14
  31. id: go
  32. - name: Checkout code into the Go module directory
  33. uses: actions/checkout@v2
  34. - uses: actions/cache@v1
  35. with:
  36. path: ~/go/pkg/mod
  37. key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
  38. restore-keys: |
  39. ${{ runner.os }}-go-
  40. - name: Test
  41. run: make -f builder.Makefile test
  42. - name: Build
  43. run: make -f builder.Makefile cli
  44. - name: Install Protoc
  45. uses: arduino/setup-protoc@master
  46. with:
  47. version: "3.9.1"
  48. - uses: actions/setup-node@v1
  49. with:
  50. node-version: "10.x"
  51. - name: E2E Test
  52. run: make e2e-local