Merge pull request #42 from JezSw/nsaini #34
This file contains 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: CI | |
on: | |
# allows us to run workflows manually | |
workflow_dispatch: | |
push: | |
branches: | |
- master | |
env: | |
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
NEKRS_HOME: "${{ github.workspace }}/.local/nekrs" | |
MPICH_FC: "gfortran" | |
NEKRS_EXAMPLES: "${{ github.workspace }}/.local/nekrs/examples" | |
NEKRS_COMPILER_FLAGS: "-O2" | |
NRSCONFIG_NOBUILD: "1" | |
RUNNER_ARCH: "X64" | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
install: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: config and build | |
run: | | |
CC=mpicc CXX=mpic++ FC=mpif77 ./build.sh -DENABLE_CVODE=OFF -DNEKRS_CXX_FLAGS=${{ env.NEKRS_COMPILER_FLAGS }} -DNEKRS_C_FLAGS=${{ env.NEKRS_COMPILER_FLAGS }} -DNEKRS_Fortran_FLAGS=${{ env.NEKRS_COMPILER_FLAGS }} -DCMAKE_INSTALL_PREFIX=${{ env.NEKRS_HOME }} -DOCCA_CXXFLAGS=${{ env.NEKRS_COMPILER_FLAGS }} | |
cmake --build build --target install -j 4 | |
- name: config tests | |
working-directory: ${{ env.NEKRS_EXAMPLES }} | |
run: cmake -S . -B build | |
- name: Upload install dir | |
uses: actions/upload-artifact@v4 | |
with: | |
name: install-dir | |
retention-days: 2 | |
path: ${{ env.NEKRS_HOME }} | |
if-no-files-found: error | |
# - name: Setup tmate session | |
# uses: mxschmitt/action-tmate@v3 | |
# timeout-minutes: 3 | |
# if: ${{ github.event_name == 'workflow_dispatch' }} | |
ethier: | |
needs: install | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: Download install dir | |
uses: actions/download-artifact@v4 | |
with: | |
name: install-dir | |
path: ${{ env.NEKRS_HOME }} | |
- name: Set install dir permissions | |
run: chmod -R 755 ${{ env.NEKRS_HOME }} | |
- name: 'ethier build-only' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest --output-on-failure -R ethier-buildOnly | |
- name: 'ethier' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest --output-on-failure -R ethier | |
lowMach: | |
needs: install | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: Download install dir | |
uses: actions/download-artifact@v4 | |
with: | |
name: install-dir | |
path: ${{ env.NEKRS_HOME }} | |
- name: Set install dir permissions | |
run: chmod -R 755 ${{ env.NEKRS_HOME }} | |
- name: 'lowMach' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest --output-on-failure -R lowMach | |
mv_cyl: | |
needs: install | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: Download install dir | |
uses: actions/download-artifact@v4 | |
with: | |
name: install-dir | |
path: ${{ env.NEKRS_HOME }} | |
- name: Set install dir permissions | |
run: chmod -R 755 ${{ env.NEKRS_HOME }} | |
- name: 'mv_cyl' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest --output-on-failure -R "^mv_cyl$" | |
- name: 'mv_cyl_derived_bc' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest --output-on-failure -R mv_cyl_derived_bc | |
conj_ht: | |
needs: install | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: Download install dir | |
uses: actions/download-artifact@v4 | |
with: | |
name: install-dir | |
path: ${{ env.NEKRS_HOME }} | |
- name: Set install dir permissions | |
run: chmod -R 755 ${{ env.NEKRS_HOME }} | |
- name: 'conj_ht' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest --output-on-failure -R conj_ht | |
channel: | |
needs: install | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: Download install dir | |
uses: actions/download-artifact@v4 | |
with: | |
name: install-dir | |
path: ${{ env.NEKRS_HOME }} | |
- name: Set install dir permissions | |
run: chmod -R 755 ${{ env.NEKRS_HOME }} | |
- name: 'channel' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest --output-on-failure -R channel | |
shlChannel: | |
needs: install | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: Download install dir | |
uses: actions/download-artifact@v4 | |
with: | |
name: install-dir | |
path: ${{ env.NEKRS_HOME }} | |
- name: Set install dir permissions | |
run: chmod -R 755 ${{ env.NEKRS_HOME }} | |
- name: 'shlChannel' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest --output-on-failure -R shlChannel | |
eddyNekNek: | |
needs: install | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: Download install dir | |
uses: actions/download-artifact@v4 | |
with: | |
name: install-dir | |
path: ${{ env.NEKRS_HOME }} | |
- name: Set install dir permissions | |
run: chmod -R 755 ${{ env.NEKRS_HOME }} | |
- name: 'eddyNekNek' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest -R "^eddyNekNek$" || (cat ${{ env.NEKRS_EXAMPLES }}/eddyNekNek/inside/logfile; exit 1) | |
- name: 'eddyNekNekNek' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest -R eddyNekNekNek || (cat ${{ env.NEKRS_EXAMPLES }}/eddyNekNek/middle/logfile; exit 1) | |
ktauChannel: | |
needs: install | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
clean: true | |
- name: APT dependencies | |
run: | | |
sudo apt -y update | |
sudo apt install -y mpich libmpich-dev | |
- name: Download install dir | |
uses: actions/download-artifact@v4 | |
with: | |
name: install-dir | |
path: ${{ env.NEKRS_HOME }} | |
- name: Set install dir permissions | |
run: chmod -R 755 ${{ env.NEKRS_HOME }} | |
- name: 'ktauChannel' | |
working-directory: ${{ env.NEKRS_EXAMPLES }}/build | |
run: ctest -R ktauChannel |