Skip to content

Merge pull request #372 from decibelcooper/chore/update-workflow-test… #926

Merge pull request #372 from decibelcooper/chore/update-workflow-test…

Merge pull request #372 from decibelcooper/chore/update-workflow-test… #926

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.22
check-latest: true
cache: true
- name: Build
run: go build -v ./...
- name: Tests
run: |
go install github.com/jstemmer/go-junit-report/v2@latest
go test -short -timeout 120s -race -count 1 -v ./... 2>&1 | 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@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.21
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 install github.com/jstemmer/go-junit-report/v2@latest
go test -timeout 120s -race -count 1 -v github.com/cschleiden/go-workflows/backend/redis 2>&1 | 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@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.21
check-latest: true
cache: true
- name: Tests
run: |
go install github.com/jstemmer/go-junit-report/v2@latest
go test -timeout 120s -race -count 1 -v github.com/cschleiden/go-workflows/backend/sqlite 2>&1 | 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@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.21
check-latest: true
cache: true
- name: Start MySQL
run: sudo /etc/init.d/mysql start
- name: Tests
run: |
go install github.com/jstemmer/go-junit-report/v2@latest
go test -timeout 120s -race -count 1 -v github.com/cschleiden/go-workflows/backend/mysql 2>&1 | 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()