Files
kopia/.github/workflows/code-coverage.yml
Jarek Kowalski e64d5b8eab Fixed few subtle threading bugs uncovered by stress test and rewrote the test to be model-based (#1157)
* testing: refactored logs directory management

* content: fixed index mutex to be shared across all write sessions

added mutex protection during writecontent/refresh race

* testing: upload log artifacts

* content: bump revision number after index has been added

This fixes a bug where manifest manager in another session for
the same open repository may not see a content added, because they
will prematurely cache the incomplete set of contents.

This took 2 weeks to find.

* manifest: improved log output, fixed unnecessary mutex release

* testing: rewrote stress test to be model-based and more precise
2021-07-01 21:37:27 -07:00

27 lines
668 B
YAML

name: Code Coverage
on: [push,pull_request]
jobs:
tests:
name: Code Coverage Tests
runs-on: ubuntu-latest
steps:
- name: Set up Go.
uses: actions/setup-go@v2
with:
go-version: ^1.16
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Run Tests
run: make test-with-coverage
- name: Publish Coverage Results
run: make ci-publish-coverage
- name: Upload Logs
uses: actions/upload-artifact@v2
with:
name: logs
path: .logs/**/*.log
if-no-files-found: ignore
if: ${{ always() }}