Skip to content

add am5 CI workflow

add am5 CI workflow #4

Workflow file for this run

name: AM5 test
on:
push:
tags:
- '*alpha*'
- '*beta*'
pull_request:
workflow_dispatch:
# cancel running jobs if theres a newer push
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
compile_AM5:
runs-on: [self-hosted, pw-platform]
strategy:
fail-fast: false
steps:
- name: Setup source and build directories
run: |
rm -rf am5_src am5_build
mkdir am5_src
mkdir am5_build
ln -s /contrib/am5/src_am5f7c1r0/am5_phys am5_src/am5_phys
ln -s /contrib/am5/src_am5f7c1r0/atmos_drivers am5_src/atmos_drivers
ln -s /contrib/am5/src_am5f7c1r0/GFDL_atmos_cubed_sphere am5_src/GFDL_atmos_cubed_sphere
ln -s /contrib/am5/src_am5f7c1r0/GRTCODE am5_src/GRTCODE
ln -s /contrib/am5/src_am5f7c1r0/ice_param am5_src/ice_param
ln -s /contrib/am5/src_am5f7c1r0/land_lad2 am5_src/land_lad2
ln -s /contrib/am5/src_am5f7c1r0/mom6 am5_src/mom6
ln -s /contrib/am5/src_am5f7c1r0/ocean_BGC am5_src/ocean_BGC
ln -s /contrib/am5/src_am5f7c1r0/rte-ecckd am5_src/rte-ecckd
ln -s /contrib/am5/src_am5f7c1r0/rte-rrtmgp am5_src/rte-rrtmgp
- name: Checkout FMS
uses: actions/checkout@v4
with:
path: am5_src/FMS
- name: Checkout FMScoupler
uses: actions/checkout@v4
with:
repository: NOAA-GFDL/FMScoupler
path: am5_src/coupler
- name: Build AM5 in Intel container
run: /contrib/am5/ci/container_build.sh ${GITHUB_WORKSPACE}/am5_build
- name: Check build succeeded
run: stat ${GITHUB_WORKSPACE}/am5_build/fms_am5f7b12r1_compile.x
run_AM5:
if: github.event_name == 'workflow_dispatch'
runs-on: [self-hosted, pw-platform]
strategy:
fail-fast: false
needs: [compile_AM5]
steps:
- name: Setup run directory
run: |
cd am5_run
rm -f *.nc.* RESTART/*.nc.*
- name: Launch runscript
run: /contrib/am5/ci/run.sh