ci.yml 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  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 --timeout 10m0s
  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@v2
  35. with:
  36. path: ~/go/pkg/mod
  37. key: go-${{ hashFiles('**/go.sum') }}
  38. - name: Test
  39. env:
  40. BUILD_TAGS: example,local
  41. run: make -f builder.Makefile test
  42. - name: Build
  43. env:
  44. BUILD_TAGS: example,local
  45. run: make -f builder.Makefile cli
  46. - name: E2E Test
  47. run: make e2e-local
  48. windows-build:
  49. name: Windows Build
  50. runs-on: windows-latest
  51. env:
  52. GO111MODULE: "on"
  53. steps:
  54. - name: Set up Go 1.14
  55. uses: actions/setup-go@v1
  56. with:
  57. go-version: 1.14
  58. id: go
  59. - name: Checkout code into the Go module directory
  60. uses: actions/checkout@v2
  61. - uses: actions/cache@v2
  62. with:
  63. path: ~/go/pkg/mod
  64. key: go-${{ hashFiles('**/go.sum') }}
  65. - name: Test
  66. env:
  67. BUILD_TAGS: example,local
  68. run: make -f builder.Makefile test
  69. - name: Build
  70. env:
  71. BUILD_TAGS: example,local
  72. run: make -f builder.Makefile cli
  73. - name: E2E Test
  74. run: make e2e-win-ci