Issue 1144 new continuous integration #207
Workflow file for this run
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 framework | |
| on: | |
| push: | |
| paths: | |
| - .github/workflows/test-framework.yml | |
| - 'src/amuse/**' | |
| pull_request: | |
| paths: | |
| - .github/workflows/test-framework.yml | |
| - 'src/amuse/**' | |
| 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 (Linux) | |
| if: ${{ startsWith(matrix.os, 'ubuntu') }} | |
| 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 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' pytest | |
| - name: Install dependencies (macOS) | |
| if: ${{ startsWith(matrix.os, 'macos') }} | |
| 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 mpich 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' pytest | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| fetch-tags: true | |
| - name: Build framework | |
| run: | | |
| ./setup install amuse-framework | |
| - name: Ensure we test only the installed package | |
| run: | | |
| ./setup distclean | |
| - name: Test framework | |
| env: | |
| OMPI_MCA_rmaps_base_oversubscribe: 1 | |
| PRTE_MCA_rmaps_base_oversubscribe: 1 | |
| PRTE_MCA_rmaps_default_mapping_policy: ":oversubscribe" | |
| OMPI_MCA_mpi_yield_when_idle: 1 | |
| PRTE_MCA_mpi_yield_when_idle: 1 | |
| OMPI_MCA_btl_tcp_if_include: lo,eth0 | |
| PRTE_MCA_btl_tcp_if_include: lo,eth0 | |
| PRTE_MCA_if_include: lo,eth0 | |
| OMPI_MCA_pmix_server_max_wait: 10 | |
| run: | | |
| ./setup test amuse-framework | |
| - 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 |