name: Run bats tests on: push: branches: - master - main paths-ignore: - 'docs/**' - 'website/**' - 'assets/**' - 'backup/**' - '*.md' pull_request: types: [opened, synchronize, ready_for_review, reopened] paths-ignore: - 'docs/**' - 'website/**' - 'assets/**' - 'backup/**' - '*.md' jobs: run-tests: if: github.event.pull_request.draft == false name: Run automated bats tests runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@v3 - name: Set up env vars run: | echo "GO111MODULE=on" >> $GITHUB_ENV echo "GO_VERSION=v$(sed -n 's/GO_VERSION=//p' config.base.env)" >> $GITHUB_ENV echo "HELM_VERSION=v$(sed -n 's/HELM_VERSION=//p' config.base.env)" >> $GITHUB_ENV echo "KIND_CLUSTER_NAME=$(sed -n 's/KIND_CLUSTER_NAME=//p' config.base.env)" >> $GITHUB_ENV echo "GOPATH=/home/runner/go" >> $GITHUB_ENV - name: Prepare go environment uses: actions/setup-go@v2 with: go-version: ${{ env.GO_VERSION }} - name: Ensure Golang runtime dependencies run: make go-dependencies - name: Setup BATS uses: mig4/setup-bats@v1 with: bats-version: 1.9.0 - name: Setup Bats libs uses: brokenpip3/setup-bats-libs@0.1.0 - name: Kind setup uses: helm/kind-action@v1.5.0 with: cluster_name: ${{env.KIND_CLUSTER_NAME}} - name: Jenkins Operator - bats tests run: make bats-tests