name: Terraform Provider Tests on: pull_request: paths: - '.github/workflows/test.yml' - '**.go' workflow_call: secrets: BINARYLANE_API_TOKEN: required: true permissions: # Permission for checking out code contents: read jobs: acceptance: name: Acceptance Tests runs-on: ubuntu-latest environment: test concurrency: group: test cancel-in-progress: true # would be nice if GH offered cancel-pending instead, https://github.com/orgs/community/discussions/63136 steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: go-version-file: 'go.mod' - uses: hashicorp/setup-terraform@v3 with: terraform_version: '1.5.*' terraform_wrapper: false - name: Check if generated files are up to date run: | go generate git diff --color --exit-code --ignore-matching-lines='//' if [ $? -ne 0 ]; then echo "generated files are not up to date, please run 'go generate' and commit the changes" >&2 exit 1 fi - name: Run tests run: go test -v -cover ./internal/provider/... env: TF_ACC: '1' BINARYLANE_API_TOKEN: ${{ secrets.BINARYLANE_API_TOKEN }} - name: Run sweepers if: failure() run: go test -v ./internal/provider/... -sweep=all env: TF_ACC: '1' BINARYLANE_API_TOKEN: ${{ secrets.BINARYLANE_API_TOKEN }} # unit: # name: Unit Tests # runs-on: ubuntu-latest # steps: # - uses: actions/checkout@v4 # - uses: actions/setup-go@v5 # with: # go-version-file: 'go.mod' # - run: go test -v -cover ./...