Skip to content

ci: add opentofu test coverage #184

ci: add opentofu test coverage

ci: add opentofu test coverage #184

Workflow file for this run

name: extensive tests
on:
push:
branches:
- main
merge_group:
type:
- checks_requested
pull_request:
types:
- opened
- synchronize
- reopened
- labeled
permissions:
contents: read
# Ensures only 1 action runs per PR and previous is canceled on new trigger
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build:
name: build
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- run: go build -v .
- name: Run linters
uses: golangci/golangci-lint-action@971e284b6050e8a5849b72094c50ab08da042db8 # v6
with:
version: latest
test-terraform:
name: integration-terraform
needs: build
runs-on: ubuntu-latest
if: '!github.event.pull_request.head.repo.fork'
timeout-minutes: 15
strategy:
fail-fast: false
max-parallel: 2
matrix:
terraform:
- '1.6.*'
- '1.9.*'
- latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
with:
go-version-file: 'go.mod'
- uses: hashicorp/setup-terraform@b9cd54a3c349d3f38e8881555d616ced269862dd # v3.1.2
with:
terraform_version: ${{ matrix.terraform }}
terraform_wrapper: false
- run: make testacc
env:
PLANETSCALE_SERVICE_TOKEN_NAME: ${{ secrets.PLANETSCALE_SERVICE_TOKEN_NAME }}
PLANETSCALE_SERVICE_TOKEN: ${{ secrets.PLANETSCALE_SERVICE_TOKEN }}
timeout-minutes: 10
test-tofu:
name: integration-tofu
needs: build
runs-on: ubuntu-latest
if: '!github.event.pull_request.head.repo.fork'
timeout-minutes: 15
strategy:
max-parallel: 2
fail-fast: false
matrix:
tofu:
- '1.6.*'
- '1.7.*'
- '1.8.*'
- latest
steps:
- uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4.1.0
with:
persist-credentials: false
- uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
go-version-file: 'go.mod'
- uses: opentofu/setup-opentofu@v1
with:
tofu_version: ${{ matrix.tofu }}
tofu_wrapper: false
- run: make testacc
env:
PLANETSCALE_SERVICE_TOKEN_NAME: ${{ secrets.PLANETSCALE_SERVICE_TOKEN_NAME }}
PLANETSCALE_SERVICE_TOKEN: ${{ secrets.PLANETSCALE_SERVICE_TOKEN }}
timeout-minutes: 10