Skip to content

Enable Kernel tests #75

Enable Kernel tests

Enable Kernel tests #75

Workflow file for this run

name: CI
on:
push:
branches:
- main
pull_request:
branches:
- main
defaults:
run:
shell: bash -l {0}
jobs:
unix:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, ubuntu-22.04, macos-12, macos-13]
steps:
- uses: actions/checkout@v4
- name: Install micromamba
uses: mamba-org/setup-micromamba@v1
with:
environment-file: environment-dev.yml
- name: Make build directory
run: mkdir build
- name: Configure cmake
run: |
cmake .. \
-DCMAKE_PREFIX_PATH=$CONDA_PREFIX \
-DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_C_COMPILER=$CC \
-DCMAKE_CXX_COMPILER=$CXX
working-directory: build
- name: Install
run: make -j ${{ runner.os == 'macOS' && 3 || 4 }} install
working-directory: build
- name: Test
run: pytest . --reruns 5
working-directory: test
win:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-2019, windows-2022]
steps:
- uses: actions/checkout@v4
- name: Install micromamba
uses: mamba-org/setup-micromamba@v1
with:
init-shell: cmd.exe
environment-file: environment-dev.yml
- name: Make build directory
run: mkdir build
- name: Configure cmake
shell: cmd /C call {0}
run: |
cmake .. ^
-GNinja ^
-DCMAKE_BUILD_TYPE=Release ^
-DCMAKE_INSTALL_PREFIX="%CONDA_PREFIX%\Library"
working-directory: build
- name: Build
shell: cmd /C call {0}
run: |
set CL=/MP
ninja install
working-directory: build
- name: Test
shell: cmd /C call {0}
run: pytest . --reruns 5
working-directory: test
emscripten_wasm:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
emsdk_ver: ["3.1.45"]
steps:
- uses: actions/checkout@v4
- name: Install micromamba
uses: mamba-org/setup-micromamba@v1
with:
environment-file: environment-wasm-build.yml
environment-name: xeus-nelson-wasm-build
- name: Setup emsdk
run: |
micromamba activate xeus-nelson-wasm-build
emsdk install ${{matrix.emsdk_ver}}
- name: Build xeus-nelson
run: |
micromamba activate xeus-nelson-wasm-build
emsdk activate ${{matrix.emsdk_ver}}
source $CONDA_EMSDK_DIR/emsdk_env.sh
micromamba create -f environment-wasm-host.yml --platform=emscripten-wasm32
mkdir build
pushd build
export EMPACK_PREFIX=$MAMBA_ROOT_PREFIX/envs/xeus-nelson-wasm-build
export PREFIX=$MAMBA_ROOT_PREFIX/envs/xeus-nelson-wasm-host
export CMAKE_PREFIX_PATH=$PREFIX
export CMAKE_SYSTEM_PREFIX_PATH=$PREFIX
emcmake cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ON \
-DXEUS_NELSON_EMSCRIPTEN_WASM_BUILD=ON \
..
make -j5