v2.0 (tentative) #97
Workflow file for this run
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: Idefix CIs | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- master | |
pull_request: | |
concurrency: | |
# auto-cancel any concurrent job *in the same context* | |
# see https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#concurrency | |
# see https://docs.github.com/en/actions/learn-github-actions/contexts#github-context | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
TESTME_OPTIONS: -cuda -Werror | |
PYTHONPATH: ${{ github.workspace }} | |
IDEFIX_DIR: ${{ github.workspace }} | |
jobs: | |
Linter: | |
# Don't do this in forks | |
if: github.repository == 'idefix-code/idefix' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
lfs: false | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: 3.x | |
- uses: pre-commit/action@v3.0.0 | |
- uses: pre-commit-ci/lite-action@v1.0.0 | |
if: always() | |
ShocksHydro: | |
needs: Linter | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
# Manually do a git LFS https://github.com/actions/checkout/issues/270 | |
- run: git lfs pull | |
- name: Sod test | |
run: | | |
cd $IDEFIX_DIR/test/HD/sod | |
./testme.py -all $TESTME_OPTIONS | |
- name: Isothermal Sod test | |
run: | | |
cd $IDEFIX_DIR/test/HD/sod-iso | |
./testme.py -all $TESTME_OPTIONS | |
- name: Mach reflection test | |
run: | | |
cd $IDEFIX_DIR/test/HD//MachReflection | |
./testme.py -all $TESTME_OPTIONS | |
ParabolicHydro: | |
needs: Linter | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
# Manually do a git LFS https://github.com/actions/checkout/issues/270 | |
- run: git lfs pull | |
- name: Viscous flow past cylinder | |
run: | | |
cd $IDEFIX_DIR/test/HD/ViscousFlowPastCylinder | |
./testme.py -all $TESTME_OPTIONS | |
- name: Viscous disk | |
run: | | |
cd $IDEFIX_DIR/test/HD/ViscousDisk | |
./testme.py -all $TESTME_OPTIONS | |
- name: Thermal diffusion | |
run: | | |
cd $IDEFIX_DIR/test/HD/thermalDiffusion | |
./testme.py -all $TESTME_OPTIONS | |
ShocksMHD: | |
needs: Linter | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
- run: git lfs pull | |
- name: MHD Sod test | |
run: | | |
cd $IDEFIX_DIR/test/MHD/sod | |
./testme.py -all $TESTME_OPTIONS | |
- name: MHD Isothermal Sod test | |
run: | | |
cd $IDEFIX_DIR/test/MHD/sod-iso | |
./testme.py -all $TESTME_OPTIONS | |
- name: Orszag Tang | |
run: | | |
cd $IDEFIX_DIR/test/MHD/OrszagTang | |
./testme.py -all $TESTME_OPTIONS | |
- name: Orszag Tang 3D+restart tests | |
run: | | |
cd $IDEFIX_DIR/test/MHD/OrszagTang3D | |
./testme.py -all $TESTME_OPTIONS | |
ParabolicMHD: | |
needs: Linter | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
- run: git lfs pull | |
- name: Ambipolar C Shock | |
run: | | |
cd $IDEFIX_DIR/test/MHD/AmbipolarCshock | |
./testme.py -all $TESTME_OPTIONS | |
- name: Ambipolar C Shock 3D | |
run: | | |
cd $IDEFIX_DIR/test/MHD/AmbipolarCshock3D | |
./testme.py -all $TESTME_OPTIONS | |
- name: Resistive Alfvén wave | |
run: | | |
cd $IDEFIX_DIR/test/MHD/ResistiveAlfvenWave | |
./testme.py -all $TESTME_OPTIONS | |
- name: Hall whistler waves | |
run: | | |
cd $IDEFIX_DIR/test/MHD/HallWhistler | |
./testme.py -all $TESTME_OPTIONS | |
Fargo: | |
needs: [Linter, ShocksHydro, ParabolicHydro, ShocksMHD, ParabolicMHD] | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
- run: git lfs pull | |
- name: Fargo + planet | |
run: | | |
cd $IDEFIX_DIR/test/HD/FargoPlanet | |
./testme.py -all $TESTME_OPTIONS | |
- name: Fargo MHD spherical | |
run: | | |
cd $IDEFIX_DIR/test/MHD/FargoMHDSpherical | |
./testme.py -all $TESTME_OPTIONS | |
ShearingBox: | |
needs: [Linter, ShocksHydro, ParabolicHydro, ShocksMHD, ParabolicMHD] | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
- run: git lfs pull | |
- name: Hydro shearing box | |
run: | | |
cd $IDEFIX_DIR/test/HD/ShearingBox | |
./testme.py -all $TESTME_OPTIONS | |
- name: MHD shearing box | |
run: | | |
cd $IDEFIX_DIR/test/MHD/ShearingBox | |
./testme.py -all $TESTME_OPTIONS | |
SelfGravity: | |
needs: [Linter, ShocksHydro, ParabolicHydro, ShocksMHD, ParabolicMHD] | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
- run: git lfs pull | |
- name: Jeans Instability | |
run: | | |
cd $IDEFIX_DIR/test/SelfGravity/JeansInstability | |
./testme.py -all $TESTME_OPTIONS | |
- name: Random sphere spherical | |
run: | | |
cd $IDEFIX_DIR/test/SelfGravity/RandomSphere | |
./testme.py -all $TESTME_OPTIONS | |
- name: Random sphere cartesian | |
run: | | |
cd $IDEFIX_DIR/test/SelfGravity/RandomSphereCartesian | |
./testme.py -all $TESTME_OPTIONS | |
- name: Uniform spherical collapse | |
run: | | |
cd $IDEFIX_DIR/test/SelfGravity/UniformCollapse | |
./testme.py -all $TESTME_OPTIONS | |
Planet: | |
needs: [Linter, ShocksHydro, ParabolicHydro, ShocksMHD, ParabolicMHD] | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
- run: git lfs pull | |
- name: 3 body | |
run: | | |
cd $IDEFIX_DIR/test/Planet/Planet3Body | |
./testme.py -all $TESTME_OPTIONS | |
- name: migration | |
run: | | |
cd $IDEFIX_DIR/test/Planet/PlanetMigration2D | |
./testme.py -all $TESTME_OPTIONS | |
- name: planet-planet | |
run: | | |
cd $IDEFIX_DIR/test/Planet/PlanetPlanetRK42D | |
./testme.py -all $TESTME_OPTIONS | |
- name: spiral wake | |
run: | | |
cd $IDEFIX_DIR/test/Planet/PlanetSpiral2D | |
./testme.py -all $TESTME_OPTIONS | |
- name: torques | |
run: | | |
cd $IDEFIX_DIR/test/Planet/PlanetTorque3D | |
./testme.py -all $TESTME_OPTIONS | |
- name: RK5 | |
run: | | |
cd $IDEFIX_DIR/test/Planet/PlanetsIsActiveRK52D | |
./testme.py -all $TESTME_OPTIONS | |
Dust: | |
needs: [Linter, ShocksHydro, ParabolicHydro, ShocksMHD, ParabolicMHD] | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
- run: git lfs pull | |
- name: Energy conservation | |
run: | | |
cd $IDEFIX_DIR/test/Dust/DustEnergy | |
./testme.py -all $TESTME_OPTIONS | |
- name: Dusty wave | |
run: | | |
cd $IDEFIX_DIR/test/Dust/DustyWave | |
./testme.py -all $TESTME_OPTIONS | |
Examples: | |
needs: [Fargo, Dust, Planet, ShearingBox, SelfGravity] | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
# Manually do a git LFS https://github.com/actions/checkout/issues/270 | |
- run: git lfs pull | |
- name: Run examples test | |
run: cd test && ./checks_examples.sh $TEST_OPTIONS | |
Utils: | |
needs: [Fargo, Dust, Planet, ShearingBox, SelfGravity] | |
runs-on: self-hosted | |
steps: | |
- name: Check out repo | |
uses: actions/checkout@v3 | |
with: | |
lfs: true | |
submodules: recursive | |
# Manually do a git LFS https://github.com/actions/checkout/issues/270 | |
- run: git lfs pull | |
- name: Run utils test | |
run: cd test && ./checks_utils.sh $TEST_OPTIONS |