Skip to content

Retry cancellation tests #1105

Retry cancellation tests

Retry cancellation tests #1105

Workflow file for this run

name: Build & Test
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.24
check-latest: true
cache: true
- name: Build
run: make build
- name: Format
run: |
make fmt
if [[ -n $(git status --porcelain) ]]; then
echo "Code is not formatted. Please run 'make fmt'"
git diff
exit 1
fi
- name: Lint
uses: golangci/golangci-lint-action@v8
with:
version: v2.4.0
- name: Tests
run: |
go test -short -timeout 240s -race -count 1 -v ./... 2>&1 | go tool go-junit-report -set-exit-code -iocopy -out "${{ github.workspace }}/report.xml"
- name: Test Summary
uses: test-summary/action@v2
with:
paths: |
${{ github.workspace }}/report.xml
if: always()
test_redis:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.24
check-latest: true
cache: true
- name: Start Redis
uses: shogo82148/actions-setup-redis@v1
with:
auto-start: true
redis-port: 6379
redis-version: "6.2"
redis-conf: "requirepass RedisPassw0rd"
- name: Tests
run: |
go test -timeout 240s -race -count 1 -v github.com/cschleiden/go-workflows/backend/redis 2>&1 | go tool go-junit-report -set-exit-code -iocopy -out "${{ github.workspace }}/report.xml"
- name: Test Summary
uses: test-summary/action@v2
with:
paths: |
${{ github.workspace }}/report.xml
if: always()
test_sqlite:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.24
check-latest: true
cache: true
- name: Tests (sqlite)
run: |
go test -timeout 240s -race -count 1 -v github.com/cschleiden/go-workflows/backend/sqlite 2>&1 | go tool go-junit-report -set-exit-code -iocopy -out "${{ github.workspace }}/report.xml"
- name: Tests (monoprocess backend)
run: |
go test -timeout 240s -race -count 1 -v github.com/cschleiden/go-workflows/backend/monoprocess 2>&1 | go tool go-junit-report -set-exit-code -iocopy -out "${{ github.workspace }}/report.xml"
- name: Test Summary
uses: test-summary/action@v2
with:
paths: |
${{ github.workspace }}/report.xml
if: always()
test_mysql:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: 1.24
check-latest: true
cache: true
- name: Start MySQL
run: sudo /etc/init.d/mysql start
- name: Tests
run: |
go test -timeout 240s -race -count 1 -v github.com/cschleiden/go-workflows/backend/mysql 2>&1 | go tool go-junit-report -set-exit-code -iocopy -out "${{ github.workspace }}/report.xml"
- name: Test Summary
uses: test-summary/action@v2
with:
paths: |
${{ github.workspace }}/report.xml
if: always()