1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- name: Backend Test
- on:
- push:
- branches: [main]
- pull_request:
- branches:
- - main
- paths:
- - "go.mod"
- - "go.sum"
- - "**.go"
- jobs:
- go-static-checks:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: actions/setup-go@v5
- with:
- go-version: 1.23
- check-latest: true
- cache: true
- - name: Verify go.mod is tidy
- run: |
- go mod tidy -go=1.23
- git diff --exit-code
- - name: golangci-lint
- uses: golangci/golangci-lint-action@v6
- with:
- version: v1.61.0
- args: --verbose --timeout=3m
- skip-cache: true
- go-tests:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: actions/setup-go@v5
- with:
- go-version: 1.23
- check-latest: true
- cache: true
- - name: Run all tests
- run: go test -v ./... | tee test.log; exit ${PIPESTATUS[0]}
- - name: Pretty print tests running time
- run: grep --color=never -e '--- PASS:' -e '--- FAIL:' test.log | sed 's/[:()]//g' | awk '{print $2,$3,$4}' | sort -t' ' -nk3 -r | awk '{sum += $3; print $1,$2,$3,sum"s"}'
|