ci #163
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: CI | |
| on: | |
| push: | |
| branches: | |
| - master | |
| tags: ['*'] | |
| jobs: | |
| REPLTestsCommons: | |
| name: Sequential-Commons | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: julia-actions/setup-julia@latest | |
| with: | |
| version: '1.11.1' | |
| arch: x64 | |
| - uses: actions/cache@v4 | |
| with: | |
| path: ~/.julia/artifacts | |
| key: ubuntu-test-cache-${{ hashFiles('**/Project.toml') }} | |
| - uses: julia-actions/julia-buildpkg@v1 | |
| - uses: julia-actions/julia-runtest@v1 | |
| - uses: julia-actions/julia-processcoverage@v1 | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: coverage-sequential-commons | |
| path: lcov.info | |
| REPLTestsCases: | |
| name: Sequential-Cases | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: julia-actions/setup-julia@latest | |
| with: | |
| version: '1.11.1' | |
| arch: x64 | |
| - uses: actions/cache@v4 | |
| with: | |
| path: ~/.julia/artifacts | |
| key: ubuntu-test-cache-${{ hashFiles('**/Project.toml') }} | |
| - uses: julia-actions/julia-buildpkg@v1 | |
| - run: julia --project=. -e "include(joinpath(\"test\", \"sequential\", \"runtests.jl\"))" | |
| - uses: julia-actions/julia-processcoverage@v1 | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: coverage-sequential-cases | |
| path: lcov.info | |
| UtilsTests: | |
| name: Sequential-Utils | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: julia-actions/setup-julia@latest | |
| with: | |
| version: '1.11.1' | |
| arch: x64 | |
| - uses: actions/cache@v4 | |
| with: | |
| path: ~/.julia/artifacts | |
| key: ubuntu-test-cache-${{ hashFiles('**/Project.toml') }} | |
| - uses: julia-actions/julia-buildpkg@v1 | |
| - run: julia --project=. -e "include(joinpath(\"test\", \"UtilsTests\", \"runtests.jl\"))" | |
| - uses: julia-actions/julia-processcoverage@v1 | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: coverage-sequential-utils | |
| path: lcov.info | |
| MPITests: | |
| name: SegregatedVMSSolver-MPI | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: julia-actions/setup-julia@latest | |
| with: | |
| version: '1.11.1' | |
| arch: x64 | |
| - uses: actions/cache@v4 | |
| with: | |
| path: ~/.julia/artifacts | |
| key: ubuntu-mpi-test-cache-${{ hashFiles('**/Project.toml') }} | |
| - uses: julia-actions/julia-buildpkg@v1 | |
| - run: julia --project=. -e "include(joinpath(\"test\", \"mpi\", \"runtests.jl\"))" | |
| mergeCoverage: | |
| name: Merge Coverage & Upload | |
| runs-on: ubuntu-latest | |
| needs: [REPLTestsCommons, REPLTestsCases, UtilsTests] | |
| steps: | |
| - uses: actions/checkout@v3 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| path: coverage_reports | |
| - run: mkdir -p coverage | |
| - run: julia --project=. -e 'import Pkg; Pkg.add("Coverage")' # Install Coverage.jl | |
| - run: julia --project=. -e 'using Coverage; files = filter(f -> endswith(f, ".info"), readdir("coverage_reports", join=true)); merged_cov = merge_coverage_counts([LCOV.parse(read(f, String)) for f in files]); LCOV.write("coverage/lcov.info", merged_cov);' | |
| - uses: codecov/codecov-action@v2 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| files: merged.info |