name: Kube integration tests on: push: branches: - main pull_request: jobs: check-optional-tests: name: Check if needs to run Kube tests runs-on: ubuntu-latest outputs: trigger-kube: ${{steps.runkubetest.outputs.triggered}} steps: - uses: khan/pull-request-comment-trigger@master name: Check if test Kube if: github.event_name == 'pull_request' id: runkubetest with: trigger: '/test-kube' kube-tests: name: Kube e2e tests runs-on: ubuntu-latest env: GO111MODULE: "on" needs: check-optional-tests if: github.ref == 'refs/heads/main' || needs.check-optional-tests.outputs.trigger-kube == 'true' steps: - name: Set up Go 1.16 uses: actions/setup-go@v2 with: go-version: 1.16 id: go - name: Setup docker CLI run: | curl https://download.docker.com/linux/static/stable/x86_64/docker-20.10.3.tgz | tar xz sudo cp ./docker/docker /usr/bin/ && rm -rf docker && docker version - name: Setup Kube tools run: | sudo apt-get install jq && jq --version 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 curl -LO "https://dl.k8s.io/release/v1.20.2/bin/linux/amd64/kubectl" && sudo mv kubectl /usr/bin/ && kubectl version --client - name: Checkout code into the Go module directory uses: actions/checkout@v2 - uses: actions/cache@v2 with: path: ~/go/pkg/mod key: go-${{ hashFiles('**/go.sum') }} - name: Build for Kube e2e tests env: BUILD_TAGS: kube run: make -f builder.Makefile cli - name: Kube e2e Test run: make e2e-kube