xref: /libCEED/.github/workflows/julia-test-with-style.yml (revision 2b730f8b5a9c809740a0b3b302db43a719c636b1)
1name: Julia
2
3on:
4  push:
5
6jobs:
7  test:
8    strategy:
9      matrix:
10        os: [ubuntu-22.04]
11        julia-version: ['1']
12
13    runs-on: ${{ matrix.os }}
14
15    env:
16      # Set `JULIA_PKG_SERVER` to the empty string so that the registry will
17      # be fetched using git instead of the package server (to avoid delays).
18      JULIA_PKG_SERVER: ""
19
20    steps:
21      - name: Environment setup
22        uses: actions/checkout@v3
23      - name: Julia setup
24        uses: julia-actions/setup-julia@latest
25        with:
26          version: ${{ matrix.julia-version }}
27      - name: Julia test and style
28        run: |
29          make info
30          make -j2
31          LIBCEED_LIB=$(find $PWD/lib -name "libceed.*")
32          pushd julia/LibCEED.jl
33          echo >> test/Project.toml
34          echo "[preferences.libCEED_jll]" >> test/Project.toml
35          echo "libceed_path = \"$LIBCEED_LIB\"" >> test/Project.toml
36          [[ "$GITHUB_REF" =~ ^refs/(heads/release|tags/).* ]] || julia --project -e 'import Pkg; Pkg.test("LibCEED"; coverage=true, test_args=["--run-dev-tests"])'
37          git checkout test/Project.toml && julia --project -e 'import Pkg; Pkg.test("LibCEED")'
38          julia --project=.style/ -e 'import Pkg; Pkg.instantiate()' && julia --project=.style/ .style/ceed_style.jl && git diff --exit-code src test examples
39