name: Tests on: pull_request: paths-ignore: - 'CHANGELOG.md' - 'README.md' push: paths-ignore: - 'CHANGELOG.md' - 'README.md' permissions: contents: read jobs: build: name: Build runs-on: ubuntu-latest timeout-minutes: 5 steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version-file: 'go.mod' cache: true - run: go mod download - run: go build -v . - name: Run linters uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9 # v8.0.0 with: version: latest generate: runs-on: ubuntu-latest steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd # v3.1.2 - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version-file: 'go.mod' cache: true - run: go generate ./... - name: git diff run: | git diff --compact-summary --exit-code || \ (echo; echo "Unexpected difference in directories after code generation. Run 'go generate ./...' command and commit."; exit 1) test: name: Terraform Provider Acceptance Tests needs: build runs-on: ubuntu-latest timeout-minutes: 15 strategy: fail-fast: true matrix: terraform: - '1.10.*' - '1.11.*' steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0 with: go-version-file: 'go.mod' cache: true - uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd # v3.1.2 with: terraform_version: ${{ matrix.terraform }} terraform_wrapper: false - run: go mod download - env: TF_ACC: "1" run: go test -v -cover ./internal/provider/ timeout-minutes: 10