terraform-provider-docker/.github/workflows/acc-test.yaml
Jonatan Reiners 09528d1c0e
chore: update Go version to 1.22 for consistency across workflows, jo… (#613)
* chore: update Go version to 1.22 for consistency across workflows, jobs, and modules.

* build: Update GitHub Actions setup-go and golangci-lint versions.

* refactor: Replace ioutil.ReadFile and ioutil.ReadAll with os.ReadFile and io.ReadAll.

* go fmt

* 🔄 Update actions/checkout and actions/setup-go to v4 and v5, respectively.

*  Refactor: Add b64 function to convert file to base64 in testacc_setup.sh.

*  Update Go version requirement in CONTRIBUTING.md.

*  Fix typo and improve error message format.

*  enhance: Improve error message in TestAccDockerContainer_uploadAsBase64.

*  Fix: Update file permissions for test2.txt in docker container tests.
2024-05-08 14:59:49 +02:00

76 lines
2 KiB
YAML

name: Acc Tests
on:
push:
branches:
- master
- "release/**"
pull_request:
types: ['opened', 'synchronize']
paths:
- '**.go'
- go.mod
- '.github/workflows/**'
env:
GOPROXY: https://proxy.golang.org,direct
DEBIAN_FRONTEND: noninteractive
GO_VERSION: "1.22"
TESTSUITE_TIMEOUT: "720s"
jobs:
acc-test:
runs-on: ubuntu-22.04
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
terraform_version:
- "0.15.x"
- "1.1.x"
resource_type:
- "TestAccDockerConfig"
- "TestAccDockerContainer"
- "TestAccDockerImage"
- "TestAccDockerNetwork"
- "TestAccDockerPlugin"
- "TestAccDockerRegistryImage"
- "TestAccDockerSecret"
- "TestAccDockerService"
- "TestAccDockerVolume"
- "TestAccDockerTag"
include:
- resource_type: TestAccDockerImage
registry: true
- resource_type: TestAccDockerContainer
registry: true
- resource_type: TestAccDockerRegistryImage
registry: true
- resource_type: TestAccDockerService
registry: true
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: ${{ env.GO_VERSION }}
- name: Setup cookies
run: |
cat /etc/issue
bash scripts/gogetcookie.sh
- name: Used docker version
run: |
docker version
- uses: hashicorp/setup-terraform@v2
with:
terraform_version: ${{ matrix.terraform_version }}
terraform_wrapper: false
- name: Setup acceptance tests
run: make testacc_setup
if: ${{ matrix.registry }}
- name: Run acceptance tests
env:
TF_LOG: INFO
TF_ACC: 1
run: go test -v ./internal/provider -timeout ${{ env.TESTSUITE_TIMEOUT }} -run ${{ matrix.resource_type }}
- name: Cleanup acceptance tests
run: make testacc_cleanup
if: ${{ matrix.registry }}