Skip to content

Commit ab476f9

Browse files
authored
Merge pull request #1052 from jedwards4b/rme/cam6_3_161
cam6_3_162: Remove manage externals
2 parents 8554477 + 74cfa9d commit ab476f9

File tree

197 files changed

+3090
-10021
lines changed

Some content is hidden

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

197 files changed

+3090
-10021
lines changed

.gitignore

-24
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,3 @@
1-
# Ignore externals
2-
ccs_config
3-
chem_proc
4-
cime
5-
components
6-
manage_externals.log
7-
src/physics/ali_arms/
8-
src/physics/carma/base
9-
src/physics/clubb
10-
src/physics/cosp2/src
11-
src/physics/silhs
12-
src/chemistry/geoschem/geoschem_src
13-
src/physics/pumas
14-
src/physics/pumas-frozen
15-
src/physics/rrtmgp/data
16-
src/physics/rrtmgp/ext
17-
src/dynamics/fv3
18-
libraries/FMS
19-
libraries/mct
20-
libraries/parallelio
21-
src/atmos_phys
22-
src/dynamics/mpas/dycore
23-
share
24-
src/hemco
251
# Ignore compiled python
262
buildnmlc
273
buildcppc

.gitmodules

+199
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,199 @@
1+
[submodule "chem_proc"]
2+
path = chem_proc
3+
url = https://github.com/ESCOMP/CHEM_PREPROCESSOR.git
4+
fxrequired = AlwaysRequired
5+
fxtag = chem_proc5_0_06
6+
fxDONOTUSEurl = https://github.com/ESCOMP/CHEM_PREPROCESSOR.git
7+
8+
[submodule "carma"]
9+
path = src/physics/carma/base
10+
url = https://github.com/ESCOMP/CARMA_base.git
11+
fxrequired = AlwaysRequired
12+
fxtag = carma4_01
13+
fxDONOTUSEurl = https://github.com/ESCOMP/CARMA_base.git
14+
15+
[submodule "pumas"]
16+
path = src/physics/pumas
17+
url = https://github.com/ESCOMP/PUMAS
18+
fxrequired = AlwaysRequired
19+
fxtag = pumas_cam-release_v1.36
20+
fxDONOTUSEurl = https://github.com/ESCOMP/PUMAS
21+
22+
[submodule "pumas-frozen"]
23+
path = src/physics/pumas-frozen
24+
url = https://github.com/ESCOMP/PUMAS
25+
fxrequired = AlwaysRequired
26+
fxtag = pumas_cam-release_v1.17_rename
27+
fxDONOTUSEurl = https://github.com/ESCOMP/PUMAS
28+
29+
[submodule "ali_arms"]
30+
path = src/physics/ali_arms
31+
url = https://github.com/ESCOMP/ALI-ARMS
32+
fxrequired = AlwaysRequired
33+
fxtag = ALI_ARMS_v1.0.1
34+
fxDONOTUSEurl = https://github.com/ESCOMP/ALI-ARMS
35+
36+
[submodule "atmos_phys"]
37+
path = src/atmos_phys
38+
url = https://github.com/ESCOMP/atmospheric_physics
39+
fxtag = atmos_phys0_02_006
40+
fxrequired = AlwaysRequired
41+
fxDONOTUSEurl = https://github.com/ESCOMP/atmospheric_physics
42+
43+
[submodule "fv3"]
44+
path = src/dynamics/fv3
45+
url = https://github.com/ESCOMP/CAM_FV3_interface.git
46+
fxrequired = AlwaysRequired
47+
fxtag = fv3int_053124
48+
fxDONOTUSEurl = https://github.com/ESCOMP/CAM_FV3_interface.git
49+
50+
[submodule "geoschem"]
51+
path = src/chemistry/geoschem/geoschem_src
52+
url = https://github.com/geoschem/geos-chem.git
53+
fxrequired = AlwaysRequired
54+
fxtag = 14.1.2
55+
fxDONOTUSEurl = https://github.com/geoschem/geos-chem.git
56+
57+
[submodule "hemco"]
58+
path = src/hemco
59+
url = https://github.com/ESCOMP/HEMCO_CESM.git
60+
fxtag = hemco-cesm1_2_1_hemco3_6_3_cesm_rme
61+
fxrequired = AlwaysRequired
62+
fxDONOTUSEurl = https://github.com/ESCOMP/HEMCO_CESM.git
63+
64+
[submodule "rte-rrtmgp"]
65+
path = src/physics/rrtmgp/ext
66+
url = https://github.com/earth-system-radiation/rte-rrtmgp.git
67+
fxrequired = AlwaysRequired
68+
fxtag = v1.7
69+
fxDONOTUSEurl = https://github.com/earth-system-radiation/rte-rrtmgp.git
70+
71+
[submodule "rrtmgp-data"]
72+
path = src/physics/rrtmgp/data
73+
url = https://github.com/earth-system-radiation/rrtmgp-data.git
74+
fxrequired = AlwaysRequired
75+
fxtag = v1.8
76+
fxDONOTUSEurl = https://github.com/earth-system-radiation/rrtmgp-data.git
77+
78+
[submodule "mpas"]
79+
path = src/dynamics/mpas/dycore
80+
url = https://github.com/MPAS-Dev/MPAS-Model.git
81+
fxrequired = AlwaysRequired
82+
fxsparse = ../.mpas_sparse_checkout
83+
fxtag = b8c33daa
84+
fxDONOTUSEurl = https://github.com/MPAS-Dev/MPAS-Model.git
85+
86+
[submodule "cosp2"]
87+
path = src/physics/cosp2/src
88+
url = https://github.com/CFMIP/COSPv2.0
89+
fxrequired = AlwaysRequired
90+
fxsparse = ../.cosp_sparse_checkout
91+
fxtag = v2.1.4cesm
92+
fxDONOTUSEurl = https://github.com/CFMIP/COSPv2.0
93+
94+
[submodule "clubb"]
95+
path = src/physics/clubb
96+
url = https://github.com/larson-group/clubb_release
97+
fxrequired = AlwaysRequired
98+
fxsparse = ../.clubb_sparse_checkout
99+
fxtag = clubb_4ncar_20231115_5406350
100+
fxDONOTUSEurl = https://github.com/larson-group/clubb_release
101+
102+
[submodule "cism"]
103+
path = components/cism
104+
url = https://github.com/ESCOMP/CISM-wrapper
105+
fxtag = cismwrap_2_2_001
106+
fxrequired = ToplevelRequired
107+
fxDONOTUSEurl = https://github.com/ESCOMP/CISM-wrapper
108+
109+
[submodule "rtm"]
110+
path = components/rtm
111+
url = https://github.com/ESCOMP/RTM
112+
fxtag = rtm1_0_79
113+
fxrequired = ToplevelRequired
114+
fxDONOTUSEurl = https://github.com/ESCOMP/RTM
115+
116+
[submodule "mosart"]
117+
path = components/mosart
118+
url = https://github.com/ESCOMP/MOSART
119+
fxtag = mosart1_0_49
120+
fxrequired = ToplevelRequired
121+
fxDONOTUSEurl = https://github.com/ESCOMP/MOSART
122+
123+
[submodule "mizuRoute"]
124+
path = components/mizuRoute
125+
url = https://github.com/ESCOMP/mizuRoute
126+
fxtag = cesm-coupling.n02_v2.1.2
127+
fxrequired = ToplevelRequired
128+
fxDONOTUSEurl = https://github.com/ESCOMP/mizuRoute
129+
130+
[submodule "ccs_config"]
131+
path = ccs_config
132+
url = https://github.com/ESMCI/ccs_config_cesm.git
133+
fxtag = ccs_config_cesm0.0.106
134+
fxrequired = ToplevelRequired
135+
fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git
136+
137+
[submodule "cime"]
138+
path = cime
139+
url = https://github.com/ESMCI/cime
140+
fxtag = cime6.0.246
141+
fxrequired = ToplevelRequired
142+
fxDONOTUSEurl = https://github.com/ESMCI/cime
143+
144+
[submodule "cmeps"]
145+
path = components/cmeps
146+
url = https://github.com/ESCOMP/CMEPS.git
147+
fxtag = cmeps0.14.63
148+
fxrequired = ToplevelRequired
149+
fxDONOTUSEurl = https://github.com/ESCOMP/CMEPS.git
150+
151+
[submodule "cdeps"]
152+
path = components/cdeps
153+
url = https://github.com/ESCOMP/CDEPS.git
154+
fxtag = cdeps1.0.34
155+
fxrequired = ToplevelRequired
156+
fxDONOTUSEurl = https://github.com/ESCOMP/CDEPS.git
157+
158+
[submodule "share"]
159+
path = share
160+
url = https://github.com/ESCOMP/CESM_share
161+
fxtag = share1.0.19
162+
fxrequired = ToplevelRequired
163+
fxDONOTUSEurl = https://github.com/ESCOMP/CESM_share
164+
165+
[submodule "mct"]
166+
path = libraries/mct
167+
url = https://github.com/MCSclimate/MCT
168+
fxtag = MCT_2.11.0
169+
fxrequired = ToplevelRequired
170+
fxDONOTUSEurl = https://github.com/MCSclimate/MCT
171+
172+
[submodule "parallelio"]
173+
path = libraries/parallelio
174+
url = https://github.com/NCAR/ParallelIO
175+
fxtag = pio2_6_2
176+
fxrequired = ToplevelRequired
177+
fxDONOTUSEurl = https://github.com/NCAR/ParallelIO
178+
179+
[submodule "cice"]
180+
path = components/cice
181+
url = https://github.com/ESCOMP/CESM_CICE
182+
fxtag = cesm_cice6_5_0_9
183+
fxrequired = ToplevelRequired
184+
fxDONOTUSEurl = https://github.com/NCAR/ParallelIO
185+
186+
[submodule "clm"]
187+
path = components/clm
188+
url = https://github.com/ESCOMP/CTSM
189+
fxtag = ctsm5.2.007
190+
fxrequired = ToplevelRequired
191+
fxDONOTUSEurl = https://github.com/ESCOMP/CTSM
192+
193+
[submodule "fms"]
194+
path = libraries/FMS
195+
url = https://github.com/ESCOMP/FMS_interface
196+
fxtag = fi_240516
197+
fxrequired = ToplevelRequired
198+
fxDONOTUSEurl = https://github.com/ESCOMP/FMS_interface
199+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
name: pre-commit
2+
on:
3+
pull_request:
4+
push:
5+
branches: [main]
6+
7+
jobs:
8+
pre-commit:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v3
12+
- uses: actions/setup-python@v3
13+
- uses: pre-commit/[email protected]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# Run this job on pushes to `main`, and for pull requests. If you don't specify
2+
# `branches: [main], then this actions runs _twice_ on pull requests, which is
3+
# annoying.
4+
5+
on:
6+
push:
7+
branches: [main]
8+
pull_request:
9+
branches: [main]
10+
11+
jobs:
12+
test:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v4
16+
17+
# If you wanted to use multiple Python versions, you'd have specify a matrix in the job and
18+
# reference the matrixe python version here.
19+
- uses: actions/setup-python@v5
20+
with:
21+
python-version: '3.9'
22+
23+
# Cache the installation of Poetry itself, e.g. the next step. This prevents the workflow
24+
# from installing Poetry every time, which can be slow. Note the use of the Poetry version
25+
# number in the cache key, and the "-0" suffix: this allows you to invalidate the cache
26+
# manually if/when you want to upgrade Poetry, or if something goes wrong. This could be
27+
# mildly cleaner by using an environment variable, but I don't really care.
28+
- name: cache poetry install
29+
uses: actions/cache@v4
30+
with:
31+
path: ~/.local
32+
key: poetry-1.7.1
33+
34+
# Install Poetry. You could do this manually, or there are several actions that do this.
35+
# `snok/install-poetry` seems to be minimal yet complete, and really just calls out to
36+
# Poetry's default install script, which feels correct. I pin the Poetry version here
37+
# because Poetry does occasionally change APIs between versions and I don't want my
38+
# actions to break if it does.
39+
#
40+
# The key configuration value here is `virtualenvs-in-project: true`: this creates the
41+
# venv as a `.venv` in your testing directory, which allows the next step to easily
42+
# cache it.
43+
- uses: snok/install-poetry@v1
44+
with:
45+
version: 1.7.1
46+
virtualenvs-create: true
47+
virtualenvs-in-project: true
48+
49+
# Cache your dependencies (i.e. all the stuff in your `pyproject.toml`). Note the cache
50+
# key: if you're using multiple Python versions, or multiple OSes, you'd need to include
51+
# them in the cache key. I'm not, so it can be simple and just depend on the poetry.lock.
52+
- name: cache deps
53+
id: cache-deps
54+
uses: actions/cache@v4
55+
with:
56+
path: .venv
57+
key: pydeps-${{ hashFiles('**/poetry.lock') }}
58+
59+
# Install dependencies. `--no-root` means "install all dependencies but not the project
60+
# itself", which is what you want to avoid caching _your_ code. The `if` statement
61+
# ensures this only runs on a cache miss.
62+
- run: poetry install --no-interaction --no-root
63+
if: steps.cache-deps.outputs.cache-hit != 'true'
64+
65+
# Now install _your_ project. This isn't necessary for many types of projects -- particularly
66+
# things like Django apps don't need this. But it's a good idea since it fully-exercises the
67+
# pyproject.toml and makes that if you add things like console-scripts at some point that
68+
# they'll be installed and working.
69+
- run: poetry install --no-interaction
70+
71+
# And finally run tests. I'm using pytest and all my pytest config is in my `pyproject.toml`
72+
# so this line is super-simple. But it could be as complex as you need.
73+
- run: |
74+
git config --global user.name "${GITHUB_ACTOR}"
75+
git config --global user.email "${GITHUB_ACTOR_ID}+${GITHUB_ACTOR}@users.noreply.github.com"
76+
poetry run pytest
77+
+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
exclude: ^utils/.*$
2+
3+
repos:
4+
- repo: https://github.com/pre-commit/pre-commit-hooks
5+
rev: v4.0.1
6+
hooks:
7+
- id: end-of-file-fixer
8+
- id: trailing-whitespace
9+
- repo: https://github.com/psf/black
10+
rev: 22.3.0
11+
hooks:
12+
- id: black
13+
- repo: https://github.com/PyCQA/pylint
14+
rev: v2.11.1
15+
hooks:
16+
- id: pylint
17+
args:
18+
- --disable=I,C,R,logging-not-lazy,wildcard-import,unused-wildcard-import,fixme,broad-except,bare-except,eval-used,exec-used,global-statement,logging-format-interpolation,no-name-in-module,arguments-renamed,unspecified-encoding,protected-access,import-error,no-member

.lib/git-fleximod/License

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
Copyright 2024 NSF National Center for Atmospheric Sciences (NCAR)
2+
3+
Permission is hereby granted, free of charge, to any person obtaining
4+
a copy of this software and associated documentation files (the
5+
“Software”), to deal in the Software without restriction, including
6+
without limitation the rights to use, copy, modify, merge, publish,
7+
distribute, sublicense, and/or sell copies of the Software, and to
8+
permit persons to whom the Software is furnished to do so, subject to
9+
the following conditions:
10+
11+
The above copyright notice and this permission notice shall be
12+
included in all copies or substantial portions of the Software.
13+
14+
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND,
15+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

0 commit comments

Comments
 (0)