Merge pull request #1260 from LourensVeen/issue-1144-new-continuous-i… #12
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Test AMUSE ic and ext | |
| on: | |
| push: | |
| paths: | |
| - .github/workflows/test-ext.yml | |
| - src/amuse/couple | |
| - src/amuse/ext | |
| - src/amuse/ic | |
| - src/amuse/plot | |
| pull_request: | |
| paths: | |
| - .github/workflows/test-ext.yml | |
| - src/amuse/couple | |
| - src/amuse/ext | |
| - src/amuse/ic | |
| - src/amuse/plot | |
| workflow_dispatch: | |
| jobs: | |
| test: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: | |
| - ubuntu-latest | |
| - macos-latest | |
| defaults: | |
| run: | |
| shell: bash -el {0} | |
| steps: | |
| - name: Set up conda | |
| uses: conda-incubator/setup-miniconda@v3 | |
| with: | |
| auto-update-conda: true | |
| channels: conda-forge | |
| channel-priority: strict | |
| - name: Show conda info | |
| run: | | |
| conda info | |
| conda list | |
| - name: Install dependencies | |
| run: | | |
| conda install c-compiler cxx-compiler fortran-compiler 'gfortran<14' python-gil pkgconfig coreutils patch curl tar unzip gzip bzip2 xz perl bison make cmake 'openmpi<5' gsl fftw gmp mpfr hdf5 netcdf4 libopenblas liblapack zlib pip wheel 'docutils>=0.6' 'mpi4py>=1.1.0' 'numpy>=1.2.2' 'h5py>=1.1.0' scipy pytest | |
| - name: Configure OpenMPI | |
| if: ${{ matrix.os == 'ubuntu-latest' }} | |
| run: | | |
| mkdir -p "$HOME/.openmpi" | |
| echo "btl_tcp_if_include = lo" >>"$HOME/.openmpi/mca-params.conf" | |
| echo "rmaps_base_oversubscribe = true" >>"$HOME/.openmpi/mca-params.conf" | |
| echo "rmaps_default_mapping_policy = :oversubscribe" >>"$HOME/.openmpi/mca-params.conf" | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| fetch-tags: true | |
| - name: Build framework | |
| run: | | |
| ./setup install amuse-framework | |
| - name: Install required codes | |
| run: | | |
| ./setup install amuse-bhtree amuse-bse amuse-evtwin amuse-fi amuse-fractalcluster amuse-gadget2 amuse-galactics amuse-halogen amuse-hermite amuse-hop amuse-kepler amuse-mesa-r2208 amuse-ph4 amuse-phigrape amuse-seba amuse-sse | |
| - name: Ensure we test only the installed packages | |
| run: | | |
| ./setup distclean | |
| - name: Test ext | |
| env: | |
| PYTEST_OPTS: "-s -v -x" | |
| run: | | |
| ./setup test amuse-ext | |
| - name: Archive build logs | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: logs-${{ matrix.os }} | |
| path: ${{ github.workspace }}/support/logs/ | |
| if-no-files-found: warn |