Skip to content

add am5 CI workflow

add am5 CI workflow #2

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/ci/src_am5f7b12r1/am5_phys am5_src/am5_phys
ln -s /contrib/am5/ci/src_am5f7b12r1/atmos_drivers am5_src/atmos_drivers
ln -s /contrib/am5/ci/src_am5f7b12r1/GFDL_atmos_cubed_sphere am5_src/GFDL_atmos_cubed_sphere
ln -s /contrib/am5/ci/src_am5f7b12r1/GRTCODE am5_src/GRTCODE
ln -s /contrib/am5/ci/src_am5f7b12r1/ice_param am5_src/ice_param
ln -s /contrib/am5/ci/src_am5f7b12r1/land_lad2 am5_src/land_lad2
ln -s /contrib/am5/ci/src_am5f7b12r1/mom6 am5_src/mom6
ln -s /contrib/am5/ci/src_am5f7b12r1/ocean_BGC am5_src/ocean_BGC
ln -s /contrib/am5/ci/src_am5f7b12r1/rte-ecckd am5_src/rte-ecckd
ln -s /contrib/am5/ci/src_am5f7b12r1/rte-rrtmgp am5_src/rte-rrtmgp
- name: Checkout FMS
uses: actions/checkout@v3
with:
path: am5_src/FMS
- name: Checkout FMScoupler
uses: actions/checkout@v3
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
# TODO this can be used to run the model once we get more cloud allocation
# 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.*
# cp -f /contrib/am5/ci/nmls_and_tables_am5f7b12r1_576x1/* .
# - name: Launch runscript
# run: /contrib/am5/ci/run.sh