This repository was archived by the owner on Nov 24, 2025. It is now read-only.
Added replace directives and fixed build errors #87
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Tests / Code Coverage | |
| # Tests / Code Coverage workflow runs unit tests and uploads a code coverage report | |
| # This workflow is run on pushes to main & every Pull Requests where a .go, .mod, .sum have been changed | |
| on: | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| jobs: | |
| cleanup-runs: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: rokroskar/workflow-run-cleanup-action@master | |
| env: | |
| GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
| if: "!startsWith(github.ref, 'refs/tags/') && github.ref != 'refs/heads/main'" | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v4 | |
| with: | |
| go-version: 1.21 | |
| - uses: technote-space/[email protected] | |
| id: git_diff | |
| with: | |
| PATTERNS: | | |
| **/**.go | |
| go.mod | |
| go.sum | |
| - name: Build | |
| run: LEDGER_ENABLED=false make build | |
| split-test-files: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Create a file with all the pkgs | |
| run: go list ./... > pkgs.txt | |
| - name: Split pkgs into 4 files | |
| run: split -d -n l/4 pkgs.txt pkgs.txt.part. | |
| # cache multiple | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: "${{ github.sha }}-00" | |
| path: ./pkgs.txt.part.00 | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: "${{ github.sha }}-01" | |
| path: ./pkgs.txt.part.01 | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: "${{ github.sha }}-02" | |
| path: ./pkgs.txt.part.02 | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: "${{ github.sha }}-03" | |
| path: ./pkgs.txt.part.03 | |
| tests: | |
| runs-on: ubuntu-latest | |
| needs: split-test-files | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| part: ["00", "01", "02", "03"] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v4 | |
| with: | |
| go-version: 1.21 | |
| - uses: technote-space/[email protected] | |
| with: | |
| PATTERNS: | | |
| **/**.go | |
| go.mod | |
| go.sum | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: "${{ github.sha }}-${{ matrix.part }}" | |
| if: env.GIT_DIFF | |
| - name: test & coverage report creation | |
| run: | | |
| cat pkgs.txt.part.${{ matrix.part }} | xargs go test -race -mod=readonly -timeout 30m -coverprofile=${{ matrix.part }}profile.out -covermode=atomic -tags='ledger test_ledger_mock' | |
| if: env.GIT_DIFF | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: "${{ github.sha }}-${{ matrix.part }}-coverage" | |
| path: ./${{ matrix.part }}profile.out | |