Skip to content

Commit 43eb9d7

Browse files
author
Peter Bogenschutz
committed
Merge branch 'master' into tcclevenger/iop_as_atm
2 parents c5105d4 + 767c2a0 commit 43eb9d7

File tree

343 files changed

+9173
-5554
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

343 files changed

+9173
-5554
lines changed

.github/actions/check-skip-labels/README.md

Lines changed: 0 additions & 24 deletions
This file was deleted.

.github/actions/check-skip-labels/action.yml

Lines changed: 0 additions & 48 deletions
This file was deleted.

.github/workflows/e3sm-gh-ci-cime-tests.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,14 @@ on:
2222

2323
workflow_dispatch:
2424

25+
concurrency:
26+
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.run_id }}
27+
cancel-in-progress: true
28+
2529
jobs:
2630

2731
ci:
28-
if: false
32+
if: ${{ github.repository == 'E3SM-Project/E3SM' }}
2933
runs-on: ubuntu-latest
3034
strategy:
3135
fail-fast: false
@@ -36,7 +40,7 @@ jobs:
3640
- SMS_D_Ln5_P4.ne4pg2_oQU480.F2010-SCREAMv1-MPASSI.ghci-oci_gnu
3741
- ERS_Ld5_P4.ne4pg2_oQU480.F2010-SCREAMv1-MPASSI.ghci-oci_gnu.eamxx-prod
3842
container:
39-
image: ghcr.io/e3sm-project/containers-ghci:ghci-0.1.0
43+
image: ghcr.io/e3sm-project/containers-ghci:ghci-0.2.0
4044

4145
steps:
4246
-

.github/workflows/e3sm-gh-ci-w-cime-tests.yml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: gh
1+
name: gh-w
22

33
on:
44
pull_request:
@@ -11,10 +11,14 @@ on:
1111

1212
workflow_dispatch:
1313

14+
concurrency:
15+
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.run_id }}
16+
cancel-in-progress: true
17+
1418
jobs:
1519

16-
ci-w:
17-
if: ${{ github.event.repository.name == 'e3sm' }}
20+
ci:
21+
if: ${{ github.repository == 'E3SM-Project/E3SM' }}
1822
runs-on: ubuntu-latest
1923
strategy:
2024
fail-fast: false
@@ -23,7 +27,7 @@ jobs:
2327
- SMS_D_Ld1_P8.ne4pg2_oQU480.WCYCL2010NS.ghci-oci_gnu
2428
- ERS_Ld3_P8.ne4pg2_oQU480.WCYCL2010NS.ghci-oci_gnu.allactive-wcprod_1850
2529
container:
26-
image: ghcr.io/e3sm-project/containers-ghci:ghci-0.1.0
30+
image: ghcr.io/e3sm-project/containers-ghci:ghci-0.2.0
2731

2832
steps:
2933
-

.github/workflows/e3sm-gh-md-linter.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,13 @@ on:
1010
# for now let's not lint files in eamxx
1111
- '!components/eamxx/**/*.md'
1212

13+
concurrency:
14+
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.run_id }}
15+
cancel-in-progress: true
16+
1317
jobs:
1418
linter:
19+
if: ${{ github.repository == 'E3SM-Project/E3SM' }}
1520
runs-on: ubuntu-latest
1621
steps:
1722
- uses: actions/checkout@v4
@@ -22,7 +27,7 @@ jobs:
2227
with:
2328
files: '**/*.md'
2429
separator: ","
25-
- uses: DavidAnson/markdownlint-cli2-action@v17
30+
- uses: DavidAnson/markdownlint-cli2-action@v18
2631
if: steps.changed-files.outputs.any_changed == 'true'
2732
with:
2833
config: 'docs/.markdownlint.json'

.github/workflows/e3sm-gh-pages.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ concurrency:
1515

1616
jobs:
1717
Build-and-Deploy-docs:
18-
if: ${{ github.event.repository.name == 'e3sm' }}
18+
if: ${{ github.repository == 'E3SM-Project/E3SM' }}
1919
runs-on: ubuntu-latest
2020
steps:
2121
- uses: actions/checkout@v4

.github/workflows/e3sm-gh-tools-mkatmsrffile-test.yml

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,13 @@ on:
1111
- cron: '00 15 * * 2'
1212
workflow_dispatch:
1313

14+
concurrency:
15+
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.run_id }}
16+
cancel-in-progress: true
17+
1418
jobs:
1519
mkatmsrffile-test:
20+
if: ${{ github.repository == 'E3SM-Project/E3SM' }}
1621
runs-on: ubuntu-latest
1722
defaults:
1823
run:
@@ -31,18 +36,15 @@ jobs:
3136
uses: conda-incubator/setup-miniconda@v3
3237
with:
3338
activate-environment: "envmkatmsrffile"
34-
miniforge-variant: Mambaforge
3539
miniforge-version: latest
36-
use-mamba: true
37-
mamba-version: "*"
3840
channel-priority: strict
3941
auto-update-conda: true
4042
python-version: 3.11
4143
-
4244
name: Install dependencies
4345
run: |
4446
echo $CONDA_PREFIX
45-
mamba install -y nco xarray numba numpy netcdf4
47+
conda install -y nco xarray numba numpy netcdf4 -c conda-forge
4648
-
4749
name: Run tests
4850
working-directory: components/eam/tools/mkatmsrffile
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
name: gh-standalone
2+
3+
on:
4+
pull_request:
5+
branches: [ master ]
6+
paths:
7+
# first, yes to these
8+
- '.github/workflows/eamxx-gh-ci-standalone.yml'
9+
- 'cime_config/machine/config_machines.xml'
10+
- 'components/eamxx/**'
11+
- 'components/homme/**'
12+
# second, no to these
13+
- '!components/eamxx/docs/**'
14+
- '!components/eamxx/mkdocs.yml'
15+
16+
workflow_dispatch:
17+
18+
concurrency:
19+
group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.run_id }}
20+
cancel-in-progress: true
21+
22+
jobs:
23+
24+
ci:
25+
if: ${{ github.repository == 'E3SM-Project/E3SM' }}
26+
runs-on: ubuntu-latest
27+
strategy:
28+
fail-fast: false
29+
matrix:
30+
test:
31+
- sp
32+
- opt
33+
- dbg
34+
- fpe
35+
container:
36+
image: ghcr.io/e3sm-project/containers-standalone-ghci:standalone-ghci-0.1.0
37+
38+
steps:
39+
-
40+
name: Checkout
41+
uses: actions/checkout@v4
42+
with:
43+
show-progress: false
44+
submodules: recursive
45+
-
46+
name: standalone
47+
env:
48+
SHELL: sh
49+
run: |
50+
# TODO: get rid of this extra line if we can?
51+
git config --global safe.directory '*'
52+
./components/eamxx/scripts/test-all-scream -m ghci-oci -t ${{ matrix.test }} -c BUILD_SHARED_LIBS=ON
53+
-
54+
name: Artifacts
55+
uses: actions/upload-artifact@v4
56+
if: ${{ always() }}
57+
with:
58+
name: ${{ matrix.test }}
59+
path: |
60+
components/eamxx/ctest-build/*/Testing/Temporary/Last*.log

.github/workflows/eamxx-gh-pages.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ concurrency:
3434
jobs:
3535

3636
eamxx-docs:
37-
if: ${{ github.event.repository.name == 'scream' }}
37+
if: ${{ github.repository == 'E3SM-Project/scream' }}
3838
runs-on: ubuntu-latest
3939

4040
steps:

.github/workflows/eamxx-sa-coverage.yml

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@ name: eamxx-sa-coverage
22

33
on:
44
workflow_dispatch:
5+
inputs:
6+
submit:
7+
description: 'Force cdash submission'
8+
required: true
9+
type: boolean
510

611
# Add schedule trigger for nightly runs at midnight MT (Standard Time)
712
schedule:
@@ -13,7 +18,8 @@ concurrency:
1318
cancel-in-progress: true
1419

1520
env:
16-
submit: ${{ github.event_name == 'schedule' && 'true' || 'false' }} # Submit to cdash only for nightlies
21+
# Submit to cdash only for nightlies or if the user explicitly forced a submission via workflow dispatch
22+
submit: ${{ github.event_name == 'schedule' || (github.event_name == 'workflow_dispatch' && inputs.submit) }}
1723

1824
jobs:
1925
gcc-openmp:
@@ -48,11 +54,40 @@ jobs:
4854
submodules: recursive
4955
- name: Show action trigger
5056
uses: ./.github/actions/show-workflow-trigger
57+
- name: Get CUDA Arch
58+
run: |
59+
# Ensure nvidia-smi is available
60+
if ! command -v nvidia-smi &> /dev/null; then
61+
echo "nvidia-smi could not be found. Please ensure you have Nvidia drivers installed."
62+
exit 1
63+
fi
64+
65+
# Get the GPU model from nvidia-smi, and set env for next step
66+
gpu_model=$(nvidia-smi --query-gpu=name --format=csv,noheader | head -n 1)
67+
case "$gpu_model" in
68+
*"H100"*)
69+
echo "Hopper=ON" >> $GITHUB_ENV
70+
echo "CUDA_ARCH=90" >> $GITHUB_ENV
71+
ARCH=90
72+
;;
73+
*"A100"*)
74+
echo "Ampere=ON" >> $GITHUB_ENV
75+
echo "CUDA_ARCH=80" >> $GITHUB_ENV
76+
;;
77+
*"V100"*)
78+
echo "Volta=ON" >> $GITHUB_ENV
79+
echo "CUDA_ARCH=70" >> $GITHUB_ENV
80+
;;
81+
*)
82+
echo "Unsupported GPU model: $gpu_model"
83+
exit 1
84+
;;
85+
esac
5186
- name: Run tests
5287
uses: ./.github/actions/test-all-scream
5388
with:
5489
build_type: cov
5590
machine: ghci-snl-cuda
5691
generate: false
5792
submit: ${{ env.submit }}
58-
cmake-configs: Kokkos_ARCH_VOLTA70=ON;CMAKE_CUDA_ARCHITECTURES=70
93+
cmake-configs: Kokkos_ARCH_HOPPER90=${{ env.Hopper }};Kokkos_ARCH_AMPERE80=${{ env.Ampere }};Kokkos_ARCH_VOLTA70=${{ env.Volta }};CMAKE_CUDA_ARCHITECTURES=${{ env.CUDA_ARCH }}

0 commit comments

Comments
 (0)