diff --git a/.github/workflows/ci_pipeline.yml b/.github/workflows/ci_pipeline.yml index bc2d92e19d..e9b59cb75b 100644 --- a/.github/workflows/ci_pipeline.yml +++ b/.github/workflows/ci_pipeline.yml @@ -42,7 +42,7 @@ jobs: strategy: matrix: - python: ['3.7', '3.8', '3.9', '3.10'] + python: ['3.8', '3.9', '3.10'] env: ['base', 'fenics', 'mpi4py', 'petsc'] defaults: @@ -126,7 +126,53 @@ jobs: path: | data_libpressio coverage_libpressio_3.10.dat - + + user_monodomain_tests_linux: + runs-on: ubuntu-latest + + defaults: + run: + shell: bash -l {0} + + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Install Conda environment with Micromamba + uses: mamba-org/setup-micromamba@v1 + with: + environment-file: "pySDC/projects/Monodomain/etc/environment-monodomain.yml" + create-args: >- + python=3.10 + + - name: Compile C++ ionic models + env: + IONIC_MODELS_PATH: "pySDC/projects/Monodomain/problem_classes/ionicmodels/cpp" + run: | + c++ -O3 -Wall -shared -std=c++11 -fPIC -fvisibility=hidden $(python3 -m pybind11 --includes) ${IONIC_MODELS_PATH}/bindings_definitions.cpp -o ${IONIC_MODELS_PATH}/ionicmodels$(python3-config --extension-suffix) + + - name: Run pytest for CPU stuff + run: | + echo "print('Loading sitecustomize.py...') + import coverage + coverage.process_startup() " > sitecustomize.py + coverage run -m pytest --continue-on-collection-errors -v --durations=0 pySDC/tests -m monodomain + + - name: Make coverage report + run: | + mv data data_monodomain + coverage combine + mv .coverage coverage_monodomain_3.10.dat + + - name: Uploading artifacts + uses: actions/upload-artifact@v3 + with: + name: cpu-test-artifacts + path: | + data_monodomain + coverage_monodomain_3.10.dat + + # user_cpu_tests_macos: # runs-on: macos-12 # @@ -170,6 +216,7 @@ jobs: - lint - user_cpu_tests_linux - user_libpressio_tests + - user_monodomain_tests_linux # - wait_for_gitlab defaults: @@ -194,7 +241,7 @@ jobs: run: | ls -artl cpu-test-artifacts cp cpu-test-artifacts/data_3.10/* data/. - python -m coverage combine cpu-test-artifacts/coverage_*.dat + python -m coverage combine cpu-test-artifacts/coverage_*_3.10.dat python -m coverage xml python -m coverage html @@ -310,4 +357,3 @@ jobs: # rm -rf data # unzip artifacts.zip # -