Skip to content

Commit

Permalink
Github Action script to run preview_namelists
Browse files Browse the repository at this point in the history
Fails in python 3.9 for G and B compsets because CICE's buildnml relies on
glob.glob API introduced in 3.10. Fails all 3.12 and 3.13 tests because
distutils has been removed from the standard library.
  • Loading branch information
mnlevy1981 committed Nov 21, 2024
1 parent 5ad92d4 commit 9911c0d
Showing 1 changed file with 51 additions and 0 deletions.
51 changes: 51 additions & 0 deletions .github/workflows/preview_namelist.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
on:
push:
branches: [ master, cesm3.0-alphabranch ]
pull_request:
branches: [ master, cesm3.0-alphabranch ]

jobs:
preview_namelists:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Lots of python versions, pare down if we don't support a version
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
config:
- {"compset": "BLT1850", "res": "ne30pg3_t232"} # fully coupled
- {"compset": "C_JRA", "res": "TL319_t232"} # ocean only
- {"compset": "C1850MARBL_JRA", "res": "TL319_t232"} # ocean only, with BGC
- {"compset": "DTEST", "res": "TL319_t232"} # ice only
- {"compset": "I1850Clm60SpCru", "res": "f10_f10_mg37"} # land only
- {"compset": "QPC6HIST", "res": "f09_f09_mg17"} # atm only
- {"compset": "T1850Gg", "res": "f09_g17_gris4"} # glc only
steps:
- uses: actions/checkout@v4

- name: Setup python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

- name: Set up non-python environment (need xmllint and a fake ESMF make file)
run: |
git config --global user.email "[email protected]"
git config --global user.name "Github Actions Testing"
echo "ESMFMKFILE=$HOME/esmf.mk" >> ${GITHUB_ENV}
echo "ESMF_VERSION_MAJOR=8" > ${HOME}/esmf.mk
echo "ESMF_VERSION_MINOR=8" >> ${HOME}/esmf.mk
sudo apt-get install libxml2-utils
- name: Checkout CESM
run: |
$GITHUB_WORKSPACE/bin/git-fleximod update
- name: Create new cases, run case.setup, and then preview namelists
run: |
cd $GITHUB_WORKSPACE/cime/scripts
./create_newcase --run-unsupported --mach ubuntu-latest --compset ${{ matrix.config.compset }} --res ${{ matrix.config.res }} --case $GITHUB_WORKSPACE/cases/${{ matrix.config.compset }}_${{ matrix.python-version }}
cd $GITHUB_WORKSPACE/cases/${{ matrix.config.compset }}_${{ matrix.python-version }}
./case.setup
./preview_namelists

0 comments on commit 9911c0d

Please sign in to comment.