name: Checks on: push: branches: [master] pull_request: jobs: go-tests: name: Run tests runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Set up Go uses: actions/setup-go@v4 with: go-version: 1.18 - name: Test run: go test -v ./... chart-test-current: name: Test and lint charts runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v3 with: fetch-depth: 0 - name: Set up Helm uses: azure/setup-helm@v3 with: version: v3.11.1 - name: Set up Go uses: actions/setup-go@v4 with: go-version: 1.18 - name: Set up QEMU uses: docker/setup-qemu-action@v2 with: platforms: arm64 - uses: actions/setup-python@v4 with: python-version: 3.7 - name: Set up chart-testing uses: helm/chart-testing-action@v2 - name: Run chart-testing (lint) run: ct lint --config ct.yaml - name: Run GoReleaser uses: goreleaser/goreleaser-action@v4 with: distribution: goreleaser version: latest args: release --snapshot --clean env: # Fix tag for snapshots GORELEASER_CURRENT_TAG: v0.0.1 GORELEASER_PREVIOUS_TAG: v0.0.0 - name: Create kind cluster uses: helm/kind-action@v1 - name: Install MetalLB to allow LoadBalancer services run: | kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.13.9/config/manifests/metallb-native.yaml kubectl wait --namespace metallb-system \ --for=condition=ready pod \ --selector=app=metallb \ --timeout=90s cat <