Skip to content

test

test #2038

Workflow file for this run

name: test
on:
push:
branches:
- main
pull_request:
schedule:
- cron: "0 13 * * *"
jobs:
build:
name: Build
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version-file: go.mod
cache: true
- name: Build
run: |
go build -v .
test:
name: Acceptance tests - Terraform ${{ matrix.terraform }} - authentik ${{ matrix.authentik_version }}
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
allow_failure: [false]
terraform:
- "beta"
- "rc"
- "latest"
authentik_version:
- "beta"
include:
- authentik_version: "stable"
terraform: latest
allow_failure: true
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version-file: go.mod
cache: true
- uses: goauthentik/action-setup-authentik@v1.4
id: setup
with:
version: ${{ matrix.authentik_version }}
sentry_env: goauthentik-terraform-ci
- uses: hashicorp/setup-terraform@v3
with:
terraform_version: ${{ matrix.terraform }}
terraform_wrapper: false
- name: TF acceptance tests
timeout-minutes: 30
env:
TF_ACC: "1"
AUTHENTIK_TOKEN: ${{ steps.setup.outputs.admin_token }}
AUTHENTIK_URL: ${{ steps.setup.outputs.http_url }}
run: |
go test \
-p 1 \
-coverprofile=coverage.txt \
-covermode=atomic \
-cover \
./internal/provider/ 2>&1 | tee test-output
go install github.com/jstemmer/go-junit-report/v2@latest
$(go env GOPATH)/bin/go-junit-report -in test-output -set-exit-code -iocopy -out report.xml
- name: authentik Server logs
if: ${{ always() }}
run: |
docker logs ${{ steps.setup.outputs.server_container_id }}
- name: authentik Worker logs
if: ${{ always() }}
run: |
docker logs ${{ steps.setup.outputs.worker_container_id }}
- if: ${{ always() }}
uses: test-summary/action@v2
with:
paths: report.xml
show: "fail"
- if: ${{ always() }}
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
- if: ${{ !cancelled() }}
uses: codecov/test-results-action@v1
with:
file: report.xml
token: ${{ secrets.CODECOV_TOKEN }}