ci.yml 2.1 KB

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