Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge develop into main for 2.22.0 release #1584

Merged
merged 114 commits into from
Jun 24, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
114 commits
Select commit Hold shift + click to select a range
8920ed5
WIP: Test GCM run in CI
mathomp4 Apr 1, 2022
b8451ee
Change to trigger CI
mathomp4 Apr 1, 2022
e5ac124
Change to trigger CI. Try 2
mathomp4 Apr 1, 2022
9d8e8b3
One more comment change to trigger executor
mathomp4 Apr 1, 2022
42d2a60
Another comment change to trigger CI
mathomp4 Apr 5, 2022
fd5e415
Fix ADAS CI
mathomp4 May 16, 2022
282e883
Add loggers for generic stages
mathomp4 May 16, 2022
26e1c99
Use special branch of adas
mathomp4 May 16, 2022
de2024d
Add comment
mathomp4 May 16, 2022
c88a5a7
Don't do mepodevelop for adas
mathomp4 May 16, 2022
3ad1441
Merge pull request #1509 from GEOS-ESM/feature/mathomp4/fix-develop-a…
mathomp4 May 16, 2022
5860d30
Merge branch 'develop' into feature/mathomp4/loggers-for-stages
mathomp4 May 16, 2022
75ba56b
Merge pull request #1510 from GEOS-ESM/feature/mathomp4/loggers-for-s…
tclune May 17, 2022
bd70eae
Merge branch 'develop' into feature/mathomp4/enable-gcm-run
mathomp4 May 17, 2022
fe2f88f
Update CHANGELOG.md
mathomp4 May 17, 2022
4fb3b9e
Expand error handling in FileMetadataUtilities to print filename
lizziel May 11, 2022
b037c3c
Allow double precision data when retrieving single precision attributes
lizziel May 11, 2022
bec6680
Update Changelog
lizziel May 11, 2022
e484e71
Update usage of fname
lizziel May 16, 2022
3e34cff
Merge pull request #1506 from geoschem/feature/ewl/improvements_to_Fi…
mathomp4 May 17, 2022
e9cc776
Merge branch 'develop' into feature/mathomp4/enable-gcm-run
mathomp4 May 17, 2022
e90cd76
Update CHANGELOG.md
mathomp4 May 17, 2022
e114377
if a field makes it to ExtData. Go through all components and if that…
bena-nasa May 17, 2022
7c5fcc0
Merge branch 'develop' into feature/bmauer/auto_rstskip_extdata
bena-nasa May 17, 2022
65f5cd6
Merge pull request #1466 from GEOS-ESM/feature/mathomp4/enable-gcm-run
tclune May 18, 2022
61184ce
Update generic/MAPL_Generic.F90
bena-nasa May 18, 2022
338f3d1
better naming ...
bena-nasa May 18, 2022
bfc585f
Merge branch 'develop' into feature/bmauer/auto_rstskip_extdata
bena-nasa May 18, 2022
b153dbd
Merge pull request #1516 from GEOS-ESM/feature/bmauer/auto_rstskip_ex…
tclune May 18, 2022
8802c04
Merge branch 'develop'
mathomp4 May 24, 2022
cf61996
Merge branch 'main' into develop
mathomp4 May 24, 2022
a634e1b
Merge pull request #1525 from GEOS-ESM/merge/mathomp4/handmerge-main-…
mathomp4 May 25, 2022
8b52074
allow monotonic dynamic masking and update history kewords
bena-nasa May 25, 2022
9ae0462
update to add "monotonic" option to regridding
bena-nasa May 26, 2022
4fb2722
update changelog
bena-nasa May 26, 2022
0569e4b
oops, forgot the most important part!
bena-nasa May 26, 2022
4391df3
Merge branch 'develop' into feature/bmauer/constrain_minmax_regridding
bena-nasa May 26, 2022
b806f17
Merge pull request #1528 from GEOS-ESM/feature/bmauer/constrain_minma…
tclune May 26, 2022
6eb53d6
Merge branch 'main' into develop
mathomp4 May 31, 2022
2877c9b
Merge pull request #1534 from GEOS-ESM/merge/mathomp4/handmerge-main-…
mathomp4 May 31, 2022
a019512
Update to ESMA_cmake v3.16.0
mathomp4 Jun 3, 2022
630154c
Update GitHub Actions
mathomp4 Jun 3, 2022
0b454fe
Merge pull request #1540 from GEOS-ESM/feature/mathomp4/update-cmake-…
mathomp4 Jun 3, 2022
f9f207a
Fixes #1544. Adds _ASSERT for missing ExtData file
mathomp4 Jun 6, 2022
f6cf291
Merge pull request #1545 from GEOS-ESM/feature/mathomp4/1544-extdata2…
mathomp4 Jun 6, 2022
d72bf3e
Updates for Spack Support
mathomp4 Jun 7, 2022
d9cbe44
Add library alias
mathomp4 Jun 7, 2022
91c46e1
Add interface library
mathomp4 Jun 7, 2022
bf599e8
Change all esmf to ESMF in CMake
mathomp4 Jun 7, 2022
028a85d
Merge branch 'develop'
mathomp4 Jun 7, 2022
765d336
Merge branch 'main' into develop
mathomp4 Jun 7, 2022
0ec8c59
Merge pull request #1553 from GEOS-ESM/merge/mathomp4/handmerge-main-…
bena-nasa Jun 7, 2022
9808957
add extdata testing framework
bena-nasa Jun 10, 2022
b2ec7e2
remove accidental .gitignore commit
bena-nasa Jun 10, 2022
f114273
fixed bundle io tests
bena-nasa Jun 13, 2022
40ba755
Merge pull request #1559 from GEOS-ESM/feature/bmauer/fix_bundleio_tests
mathomp4 Jun 13, 2022
e3d575c
Enable bundleio tests in CI
mathomp4 Jun 13, 2022
3abec6d
Disable bundleio with Open MPI
mathomp4 Jun 13, 2022
3ef81a0
Merge pull request #1561 from GEOS-ESM/feature/mathomp4/enable-bundle…
bena-nasa Jun 13, 2022
7ce5207
fixes #1565
bena-nasa Jun 13, 2022
a1890a8
Merge branch 'develop' into feature/bmauer/extdata_test_cases
bena-nasa Jun 13, 2022
fa3e59b
Merge pull request #1566 from GEOS-ESM/feature/bmauer/fixes-#1565
atrayano Jun 13, 2022
b47b2e2
Merge branch 'develop' into spack
mathomp4 Jun 14, 2022
f1e80eb
Need to stick to esmf alias for upstream reasons
mathomp4 Jun 14, 2022
190a591
Update comments
mathomp4 Jun 14, 2022
9d2a685
get testing framework working
bena-nasa Jun 14, 2022
536efe1
Add option to test either extdata1g extdata2g or both. Default extdat…
bena-nasa Jun 14, 2022
787a605
add labels for big and small extdata tests
bena-nasa Jun 14, 2022
cca2d1b
consilidate scripts
bena-nasa Jun 14, 2022
c4b61ad
remove file
bena-nasa Jun 14, 2022
5eb24e5
more updates
bena-nasa Jun 14, 2022
84e6124
Merge branch 'develop' into feature/bmauer/extdata_test_cases
bena-nasa Jun 14, 2022
ae41875
only add tests for ExtData if ExtDataDriver.x is built
bena-nasa Jun 14, 2022
2bc465d
remove curlies
bena-nasa Jun 14, 2022
f69e273
remove case 12 from cases.txt as that is beyond resourses currently a…
bena-nasa Jun 15, 2022
f92952d
update circle ci
bena-nasa Jun 15, 2022
84ccfdd
fix directory name
bena-nasa Jun 15, 2022
516e9de
renamed
bena-nasa Jun 15, 2022
da39ef1
more updates for ci
bena-nasa Jun 15, 2022
79eb1be
Merge pull request #1556 from GEOS-ESM/feature/bmauer/extdata_test_cases
tclune Jun 15, 2022
538b0af
Updates for FORD Testing
mathomp4 Jun 15, 2022
3d24a6a
Merge branch 'develop' into feature/mathomp4/updates-for-ford
mathomp4 Jun 15, 2022
f6e47a7
Update CHANGELOG
mathomp4 Jun 15, 2022
fef169d
Remove pfio/tests/Test_SimpleClient.pf
mathomp4 Jun 16, 2022
ae0be61
Merge branch 'develop' into spack
mathomp4 Jun 16, 2022
9cf12ca
Merge pull request #1570 from GEOS-ESM/feature/mathomp4/updates-for-ford
tclune Jun 16, 2022
a0c23b4
Merge branch 'develop' into spack
mathomp4 Jun 16, 2022
db88ebe
Update components.yaml to latest env and cmake
mathomp4 Jun 16, 2022
c76f20f
Try to get GEOSldas to work
mathomp4 Jun 17, 2022
0cfa10c
GEOSldas is updated. Push
mathomp4 Jun 17, 2022
c8ccd65
Merge pull request #1572 from GEOS-ESM/feature/mathomp4/update-compon…
mathomp4 Jun 17, 2022
14425b2
Merge branch 'develop' into spack
mathomp4 Jun 17, 2022
9fd588a
Merge pull request #1550 from GEOS-ESM/spack
tclune Jun 17, 2022
f93dab2
by pass missing value of NaN
weiyuan-jiang Jun 18, 2022
e63aec1
change log
weiyuan-jiang Jun 18, 2022
cbfb498
by pass in request data call
weiyuan-jiang Jun 22, 2022
3b9d10b
test Nan and change Nan to MAPL_Undef
weiyuan-jiang Jun 22, 2022
f5e34e9
save metadata to cfio
weiyuan-jiang Jun 22, 2022
247248c
add the field current_file_metadata
weiyuan-jiang Jun 22, 2022
5bd1910
fix typos
weiyuan-jiang Jun 22, 2022
961d4de
re-block check
weiyuan-jiang Jun 23, 2022
d198c08
Merge branch 'feature/wjiang/by_pass_nan_missing' of github.com:GEOS-…
weiyuan-jiang Jun 23, 2022
5ace0e7
fixed CMakeLists.txt
Jun 23, 2022
e79c772
Add NetCDF C requirement to CMake
mathomp4 Jun 23, 2022
9d5968b
Add comment about ESMF library CMake
mathomp4 Jun 23, 2022
c651f90
Merge pull request #1578 from GEOS-ESM/bugfix/mathomp4/add-netcdf-c
tclune Jun 23, 2022
5b5b687
Merge branch 'develop' into feature/wjiang/by_pass_nan_missing
mathomp4 Jun 23, 2022
8a9ab11
Add YAML Linter
mathomp4 Jun 23, 2022
1744fb4
Add comments about yaml linter
mathomp4 Jun 23, 2022
62aa921
Merge pull request #1576 from GEOS-ESM/feature/wjiang/by_pass_nan_mis…
mathomp4 Jun 23, 2022
98bd26d
Merge branch 'develop' into feature/mathomp4/add-yamllint-mapl
mathomp4 Jun 23, 2022
120fe45
Merge pull request #1580 from GEOS-ESM/feature/mathomp4/add-yamllint-…
mathomp4 Jun 24, 2022
6f7b2d2
Update CHANGELOG and CMakeLists for 2.22.0 Release
mathomp4 Jun 24, 2022
6f62bff
Merge pull request #1583 from GEOS-ESM/feature/mathomp4/prepare-for-m…
tclune Jun 24, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 49 additions & 17 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,24 +1,52 @@
version: 2.1

# Anchor to prevent forgetting to update a version
baselibs_version: &baselibs_version v6.3.1

orbs:
ci: geos-esm/circleci-tools@1

workflows:
build-and-test:
jobs:

# Builds MAPL in a "default" way
# Builds MAPL in a "default" way - Intel
- ci/build:
name: build-and-test-MAPL-on-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
compiler: [gfortran, ifort]
compiler: [ifort]
baselibs_version: *baselibs_version
repo: MAPL
mepodevelop: false
run_unit_tests: true
ctest_options: "-LE 'PERFORMANCE|EXTDATA1G_BIG_TESTS|EXTDATA2G_BIG_TESTS' --output-on-failure"

# Builds MAPL in a "default" way - GNU
#
# NOTE: Currently Open MPI fails on the bundleio with:
#
# The OSC pt2pt component does not support MPI_THREAD_MULTIPLE in this release.
# Workarounds are to run on a single node, or to use a system with an RDMA
# capable network such as Infiniband.
#
# For now, we run GNU/Open MPI without the bundleio tests. Some indications that
# Open MPI 5 will not have this limitation

- ci/build:
name: build-and-test-MAPL-on-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
compiler: [gfortran]
baselibs_version: *baselibs_version
repo: MAPL
mepodevelop: false
run_unit_tests: true
ctest_options: "-R MAPL -LE PERFORMANCE --output-on-failure"
ctest_options: "-E bundleio -LE 'PERFORMANCE|EXTDATA1G_BIG_TESTS|EXTDATA2G_BIG_TESTS' --output-on-failure"

# Builds MAPL like UFS does (no FLAP and pFlogger, static)
- ci/build:
Expand All @@ -28,11 +56,12 @@ workflows:
matrix:
parameters:
compiler: [ifort]
baselibs_version: *baselibs_version
repo: MAPL
mepodevelop: false
extra_cmake_options: "-DBUILD_WITH_FLAP=OFF -DBUILD_WITH_PFLOGGER=OFF -DBUILD_SHARED_MAPL=OFF"
run_unit_tests: true
ctest_options: "-R MAPL -LE PERFORMANCE --output-on-failure"
ctest_options: "-LE 'PERFORMANCE|EXTDATA1G_BIG_TESTS|EXTDATA2G_BIG_TESTS' --output-on-failure"

# Build GEOSgcm
- ci/build:
Expand All @@ -42,11 +71,12 @@ workflows:
matrix:
parameters:
compiler: [gfortran, ifort]
baselibs_version: *baselibs_version
repo: GEOSgcm
checkout_fixture: true
mepodevelop: true
checkout_mapl_branch: true
persist_workspace: false # Needs to be true to run fv3/gcm experiment, costs extra
persist_workspace: true # Needs to be true to run fv3/gcm experiment, costs extra, retained for one day

# Build GEOSldas
- ci/build:
Expand All @@ -56,6 +86,7 @@ workflows:
matrix:
parameters:
compiler: [gfortran, ifort]
baselibs_version: *baselibs_version
repo: GEOSldas
mepodevelop: false
checkout_fixture: true
Expand All @@ -71,6 +102,7 @@ workflows:
parameters:
compiler: [ifort]
resource_class: xlarge
baselibs_version: *baselibs_version
repo: GEOSadas
checkout_fixture: true
# This branch on GEOSadas will be used to track subrepos needed
Expand All @@ -80,15 +112,15 @@ workflows:
mepodevelop: false
rebuild_procs: 8

##################################################
# - ci/run_fv3: #
# name: run-FV3-on-<< matrix.compiler >> #
# context: #
# - docker-hub-creds #
# matrix: #
# parameters: #
# compiler: [gfortran, ifort] #
# requires: #
# - build-GEOSgcm-on-<< matrix.compiler >> #
# repo: GEOSgcm #
##################################################
# Run GCM (1 hour, no ExtData)
- ci/run_gcm:
name: run-GCM-on-<< matrix.compiler >>
context:
- docker-hub-creds
matrix:
parameters:
compiler: [gfortran, ifort]
requires:
- build-GEOSgcm-on-<< matrix.compiler >>
repo: GEOSgcm
baselibs_version: *baselibs_version
2 changes: 1 addition & 1 deletion .github/workflows/changelog-enforcer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:
types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]

jobs:
# Enforces the update of a changelog file on every pull request
# Enforces the update of a changelog file on every pull request
changelog:
runs-on: ubuntu-latest
steps:
Expand Down
31 changes: 31 additions & 0 deletions .github/workflows/validate_yaml_files.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
---

# Based on code from https://github.com/marketplace/actions/yaml-lint

name: Yaml Lint

on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled]

# This validation is equivalent to running on the command line:
# yamllint -d relaxed --no-warnings
# and is controlled by the .yamllint.yml file
jobs:
validate-YAML:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- id: yaml-lint
name: yaml-lint
uses: ibiqlik/action-yamllint@v3
with:
no_warnings: true
format: colored
config_file: .yamllint.yml

- uses: actions/upload-artifact@v2
if: always()
with:
name: yamllint-logfile
path: ${{ steps.yaml-lint.outputs.logfile }}
93 changes: 14 additions & 79 deletions .github/workflows/workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
name: Build and Test MAPL
runs-on: ubuntu-latest
container:
image: gmao/ubuntu20-geos-env-mkl:v6.2.8-openmpi_4.0.6-gcc_11.2.0
image: gmao/ubuntu20-geos-env-mkl:v6.3.1-openmpi_4.1.2-gcc_11.2.0
# Per https://github.com/actions/virtual-environments/issues/1445#issuecomment-713861495
# It seems like we might not need secrets on GitHub Actions which is good for forked
# pull requests
Expand All @@ -30,7 +30,7 @@ jobs:
OMPI_MCA_btl_vader_single_copy_mechanism: none
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.9.0
uses: styfle/cancel-workflow-action@0.9.1
with:
access_token: ${{ github.token }}
- name: Checkout
Expand Down Expand Up @@ -61,85 +61,20 @@ jobs:
cd build
make -j4 build-tests
# skip performance tests
ctest -R MAPL -LE PERFORMANCE --output-on-failure
############################################################################################################################################################
# build_gcm: #
# name: Build GEOSgcm #
# if: "!contains(github.event.pull_request.labels.*.name, '0 diff trivial')" #
# runs-on: ubuntu-latest #
# container: #
# image: gmao/ubuntu20-geos-env-mkl:v6.2.8-openmpi_4.0.6-gcc_11.2.0 #
# env: #
# OMPI_ALLOW_RUN_AS_ROOT: 1 #
# OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1 #
# OMPI_MCA_btl_vader_single_copy_mechanism: none #
# steps: #
# - name: Cancel Previous Runs #
# uses: styfle/cancel-workflow-action@0.9.0 #
# with: #
# access_token: ${{ github.token }} #
# - name: Checkout GCM #
# uses: actions/checkout@v2 #
# with: #
# repository: GEOS-ESM/GEOSgcm #
# fetch-depth: 1 #
# - name: Versions etc. #
# run: | #
# gfortran --version #
# mpirun --version #
# echo $BASEDIR #
# echo ${GITHUB_HEAD_REF} #
# echo ${{github.ref}} #
# echo ${{github.head_ref}} #
# - name: Mepo clone external repos #
# run: | #
# mepo init #
# mepo clone #
# mepo status #
# mepo develop GEOSgcm_GridComp GEOSgcm_App #
# mepo status #
# # The next two actions use: #
# # https://github.uint.cloudmunity/t/is-there-a-way-to-tell-if-a-pr-is-from-a-forked-repository/134186/7?u=mathomp4 #
# # to test if you are in a fork or not #
# - name: Git checkout MAPL branch (forks) #
# if: github.event.pull_request.head.repo.full_name != github.repository #
# working-directory: ./src/Shared/@MAPL #
# run: | #
# # GITHUB_REF will look like 'refs/pull/669/merge' and we want 'pull/669' #
# GITHUB_REF_STRIP_REFS=${GITHUB_REF##refs/} #
# GITHUB_REF_STRIP_MERGE=${GITHUB_REF_STRIP_REFS%%/merge} #
# # This was figured out with looking at CircleCI output #
# git fetch --force origin "${GITHUB_REF_STRIP_MERGE}/head:remotes/origin/${GITHUB_REF_STRIP_MERGE}" #
# mepo checkout ${GITHUB_REF_STRIP_MERGE} MAPL #
# mepo status #
# # If we are in the same org, this will work #
# - name: Mepo checkout MAPL branch (same org), MAPL on main/develop #
# if: github.event.pull_request.head.repo.full_name == github.repository && (github.head_ref == 'main' || github.head_ref == 'develop') #
# run: | #
# mepo checkout ${GITHUB_HEAD_REF} MAPL #
# mepo status #
# # If we are in the same org, this will work #
# - name: Mepo checkout MAPL branch (same org), MAPL not on main/develop #
# if: github.event.pull_request.head.repo.full_name == github.repository && (github.head_ref != 'main' && github.head_ref != 'develop') #
# run: | #
# mepo checkout ${GITHUB_HEAD_REF} MAPL #
# mepo checkout-if-exists ${GITHUB_HEAD_REF} #
# mepo status #
# - name: CMake #
# run: | #
# mkdir build #
# cd build #
# cmake .. -DBASEDIR=$BASEDIR/Linux -DCMAKE_Fortran_COMPILER=gfortran -DCMAKE_BUILD_TYPE=Debug -DMPIEXEC_PREFLAGS='--oversubscribe' -DUSE_F2PY=OFF #
# - name: Build #
# run: | #
# cd build #
# make -j4 install #
############################################################################################################################################################
# NOTE: Currently Open MPI fails on the bundleio with:
#
# The OSC pt2pt component does not support MPI_THREAD_MULTIPLE in this release.
# Workarounds are to run on a single node, or to use a system with an RDMA
# capable network such as Infiniband.
#
# For now, we run GNU/Open MPI without the bundleio tests. Some indications that
# Open MPI 5 will not have this limitation
ctest -E bundleio -LE 'PERFORMANCE|EXTDATA1G_BIG_TESTS|EXTDATA2G_BIG_TESTS' --output-on-failure
build_test_mapl_intel:
name: Build and Test MAPL Intel
runs-on: ubuntu-latest
container:
image: gmao/ubuntu20-geos-env:v6.2.8-intelmpi_2021.3.0-intel_2021.3.0
image: gmao/ubuntu20-geos-env:v6.3.1-intelmpi_2021.3.0-intel_2021.3.0
# Per https://github.com/actions/virtual-environments/issues/1445#issuecomment-713861495
# It seems like we might not need secrets on GitHub Actions which is good for forked
# pull requests
Expand All @@ -148,7 +83,7 @@ jobs:
#password: ${{ secrets.DOCKERHUB_TOKEN }}
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@0.9.0
uses: styfle/cancel-workflow-action@0.9.1
with:
access_token: ${{ github.token }}
- name: Checkout
Expand Down Expand Up @@ -179,4 +114,4 @@ jobs:
cd build
make -j4 build-tests
# skip performance tests
ctest -R MAPL -LE PERFORMANCE --output-on-failure
ctest -LE 'PERFORMANCE|EXTDATA1G_BIG_TESTS|EXTDATA2G_BIG_TESTS' --output-on-failure
Loading