Skip to content

[blank]

[blank] #8

Workflow file for this run

name: SkalaXC CI
on:
push:
branches: [ main, dev ]
paths:
- SkalaXC/**
- .github/workflows/skalaxc-ci.yml
pull_request:
branches: [ main, dev ]
permissions:
contents: read
jobs:
build-and-test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- name: serial-release
mpi: OFF
build_type: Release
- name: serial-debug
mpi: OFF
build_type: Debug
- name: mpi-release
mpi: ON
build_type: Release
- name: mpi-debug
mpi: ON
build_type: Debug
name: ${{ matrix.name }}
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
- name: Setup micromamba
uses: mamba-org/setup-micromamba@4b9113af4fba0e9e1124b252dd6497a419e7396d # v1
with:
environment-file: SkalaXC/environment-ci.yml
environment-name: skalaxc-ci
cache-environment: true
cache-downloads: true
- name: Configure
run: >-
cmake
-S SkalaXC
-B SkalaXC/build-ci-${{ matrix.name }}
-G Ninja
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
-DSKALAXC_BUILD_FORTRAN=ON
-DSKALAXC_BUILD_TESTS=ON
-DSKALAXC_BUILD_EXAMPLES=ON
-DSKALAXC_ENABLE_MPI=${{ matrix.mpi }}
-DSKALAXC_ENABLE_OPENMP=ON
shell: micromamba-shell {0}
- name: Build
run: >-
cmake
--build SkalaXC/build-ci-${{ matrix.name }}
--parallel 2
shell: micromamba-shell {0}
- name: Test
run: >-
ctest
--test-dir SkalaXC/build-ci-${{ matrix.name }}
--output-on-failure
shell: micromamba-shell {0}