kube-tests.yml 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. name: Kube integration tests
  2. on:
  3. push:
  4. branches:
  5. - main
  6. pull_request:
  7. jobs:
  8. check-optional-tests:
  9. name: Check if needs to run Kube tests
  10. runs-on: ubuntu-latest
  11. outputs:
  12. trigger-kube: ${{steps.runkubetest.outputs.triggered}}
  13. steps:
  14. - uses: khan/pull-request-comment-trigger@master
  15. name: Check if test Kube
  16. if: github.event_name == 'pull_request'
  17. id: runkubetest
  18. with:
  19. trigger: '/test-kube'
  20. kube-tests:
  21. name: Kube e2e tests
  22. runs-on: ubuntu-latest
  23. env:
  24. GO111MODULE: "on"
  25. needs: check-optional-tests
  26. if: github.ref == 'refs/heads/main' || needs.check-optional-tests.outputs.trigger-kube == 'true'
  27. steps:
  28. - name: Set up Go 1.16
  29. uses: actions/setup-go@v2
  30. with:
  31. go-version: 1.16
  32. id: go
  33. - name: Setup docker CLI
  34. run: |
  35. curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.3.tgz | tar xz
  36. sudo cp ./docker/docker /usr/bin/ && rm -rf docker && docker version
  37. - name: Setup Kube tools
  38. run: |
  39. sudo apt-get install jq && jq --version
  40. curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.10.0/kind-linux-amd64 && chmod +x ./kind && sudo mv ./kind /usr/bin/ && kind version
  41. curl -LO "https://dl.k8s.io/release/v1.20.2/bin/linux/amd64/kubectl" && sudo mv kubectl /usr/bin/ && kubectl version --client
  42. - name: Checkout code into the Go module directory
  43. uses: actions/checkout@v2
  44. - uses: actions/cache@v2
  45. with:
  46. path: ~/go/pkg/mod
  47. key: go-${{ hashFiles('**/go.sum') }}
  48. - name: Build for Kube e2e tests
  49. env:
  50. BUILD_TAGS: kube
  51. run: make -f builder.Makefile cli
  52. - name: Kube e2e Test
  53. run: make e2e-kube