diff --git a/.github/workflows/TestLTS.yml b/.github/workflows/TestLTS.yml new file mode 100644 index 0000000..33dc030 --- /dev/null +++ b/.github/workflows/TestLTS.yml @@ -0,0 +1,57 @@ +name: Test v1.6 (LTS) + +on: + workflow_dispatch: + pull_request: + push: + branches: + - main + paths: + - 'src/**' + - 'test/**' + - '.github/workflows/Test.yml' + - 'Project.toml' + +jobs: + test: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + julia-version: ['1.6'] + julia-arch: [x64] + os: [ubuntu-latest, windows-latest] + experimental: [false] + + steps: + # Checks-out your repository + - name: Check out repository + uses: actions/checkout@v3 + + # Set up Julia + - name: "Set up Julia" + uses: julia-actions/setup-julia@v1 + with: + version: ${{ matrix.julia-version }} + arch: ${{ matrix.julia-arch }} + + # Set up cache + - name: "Set up cache" + uses: actions/cache@v3 + env: + cache-name: cache-artifacts + with: + path: ~/.julia/artifacts + key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }} + restore-keys: | + ${{ runner.os }}-test-${{ env.cache-name }}- + ${{ runner.os }}-test- + ${{ runner.os }}- + + # Build package + - name: "Build package" + uses: julia-actions/julia-buildpkg@v1 + + # Run the tests + - name: "Run tests" + uses: julia-actions/julia-runtest@v1 diff --git a/.github/workflows/Test.yml b/.github/workflows/TestLatest.yml similarity index 72% rename from .github/workflows/Test.yml rename to .github/workflows/TestLatest.yml index 6a8f334..c1ad44a 100644 --- a/.github/workflows/Test.yml +++ b/.github/workflows/TestLatest.yml @@ -1,26 +1,32 @@ -name: Run FMIBuild.jl tests +name: Test v1 (latest) on: workflow_dispatch: - push: pull_request: + push: + branches: + - main + paths: + - 'src/**' + - 'test/**' + - '.github/workflows/Test.yml' + - 'Project.toml' jobs: test: runs-on: ${{ matrix.os }} strategy: - # Don't cancel in-progress jobs if any matrix job fails fail-fast: false matrix: - julia-version: ['1.6', '1'] # "1" automatically expands to the latest stable 1.x release of Julia + julia-version: ['1'] # "1" automatically expands to the latest stable 1.x release of Julia julia-arch: [x64] os: [ubuntu-latest, windows-latest] experimental: [false] steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it + # Checks-out your repository - name: Check out repository - uses: actions/checkout@v2 + uses: actions/checkout@v3 # Set up Julia - name: "Set up Julia" @@ -29,9 +35,9 @@ jobs: version: ${{ matrix.julia-version }} arch: ${{ matrix.julia-arch }} - # Set up cache + # Set up cache - name: "Set up cache" - uses: actions/cache@v2 + uses: actions/cache@v3 env: cache-name: cache-artifacts with: @@ -56,6 +62,8 @@ jobs: # Run codecov - name: "Run CodeCov" - uses: codecov/codecov-action@v2 + uses: codecov/codecov-action@v4 + env: + CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} with: file: lcov.info diff --git a/README.md b/README.md index 55d9e8a..54449c9 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,8 @@ [*FMIBuild.jl*](https://github.com/ThummeTo/FMIBuild.jl) holds dependencies that are required to compile and zip a Functional Mock-Up Unit (FMU) compliant to the FMI-standard ([fmi-standard.org](http://fmi-standard.org/)). Because this dependencies should not be part of the compiled FMU, they are out-sourced into this package. [*FMIBuild.jl*](https://github.com/ThummeTo/FMIBuild.jl) provides the build-commands for the Julia package [*FMIExport.jl*](https://github.com/ThummeTo/FMIExport.jl). -[![Run Tests](https://github.com/ThummeTo/FMIBuild.jl/actions/workflows/Test.yml/badge.svg)](https://github.com/ThummeTo/FMIBuild.jl/actions/workflows/Test.yml) +[![Test (latest)](https://github.com/ThummeTo/FMIBuild.jl/actions/workflows/TestLatest.yml/badge.svg)](https://github.com/ThummeTo/FMIBuild.jl/actions/workflows/TestLatest.yml) +[![Test (LTS)](https://github.com/ThummeTo/FMIBuild.jl/actions/workflows/TestLTS.yml/badge.svg)](https://github.com/ThummeTo/FMIBuild.jl/actions/workflows/TestLTS.yml) [![Run PkgEval](https://github.com/ThummeTo/FMIBuild.jl/actions/workflows/Eval.yml/badge.svg)](https://github.com/ThummeTo/FMIBuild.jl/actions/workflows/Eval.yml) [![Coverage](https://codecov.io/gh/ThummeTo/FMIBuild.jl/branch/main/graph/badge.svg)](https://codecov.io/gh/ThummeTo/FMIBuild.jl)