Skip to content

Rework OSCAR loading #104

Rework OSCAR loading

Rework OSCAR loading #104

Workflow file for this run

name: Run tests with Oscar master
on:
push:
branches:
- master
pull_request:
workflow_dispatch:
# needed to allow julia-actions/cache to delete old caches that it has created
permissions:
actions: write
contents: read
concurrency:
# group by workflow and ref; the last slightly strange component ensures that for pull
# requests, we limit to 1 concurrent job, but for the master branch we don't
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.ref != 'refs/heads/master' || github.run_number }}
# Cancel intermediate builds, but only if it is a pull request build.
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
jobs:
oscartest:
runs-on: ${{ matrix.os }}
timeout-minutes: 30
continue-on-error: ${{ matrix.julia-version == 'nightly' }}
strategy:
fail-fast: false
matrix:
julia-version:
- '1.6'
- '1.8'
- '1.9'
- '1.10'
- '1.11-nightly'
# - 'nightly'
julia-arch:
- x64
os:
- ubuntu-latest
# include:
# Add a few macOS jobs (not too many, the number we can run in parallel is limited)
# - julia-version: '1.6'
# julia-arch: x64
# os: macOS-latest
# - julia-version: 'nightly'
# julia-arch: x64
# os: macOS-latest
steps:
- uses: actions/checkout@v4
with:
# For Codecov, we must also fetch the parent of the HEAD commit to
# be able to properly deal with PRs / merges
fetch-depth: 2
- name: "Set up Julia"
uses: julia-actions/setup-julia@v1
with:
version: ${{ matrix.julia-version }}
arch: ${{ matrix.julia-arch }}
- name: Restore cache
uses: julia-actions/cache@v1
with:
cache-name: julia-cache;workflow=${{ github.workflow }};julia=${{ matrix.julia-version }};arch=${{ runner.arch }}
include-matrix: false
- name: "Add deps (including Oscar.jl master)"
shell: julia --project=. --color=yes {0}
run: |
include(joinpath(pwd(), "etc", "add_oscar.jl"))
env:
JULIA_PKG_PRECOMPILE_AUTO: no
- name: "Build package"
uses: julia-actions/julia-buildpkg@latest
# - name: "limit OpenMP threads"
# if: runner.os == 'macOS'
# # restrict number of openMP threads on macOS due to oversubscription
# run: echo "OMP_NUM_THREADS=1" >> $GITHUB_ENV
- name: "Run tests"
uses: julia-actions/julia-runtest@latest
- name: "Process code coverage"
uses: julia-actions/julia-processcoverage@v1
- name: "Upload coverage data to Codecov"
continue-on-error: true
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}