Conversation
ebbf8ad to
5aa9dfa
Compare
| run: | | ||
| echo "Checking if .gitmodules and external hashes are consistent" | ||
| cd $GITHUB_WORKSPACE/CESM/components/mom/ | ||
| ../../bin/git-fleximod update |
There was a problem hiding this comment.
Alper - you can also do ../../bin/git-fleximod test at this point. Instead of update and then git diff.
There was a problem hiding this comment.
I just ran the following in a clean checkout of the MOM_interface tag used in beta05:
$ git submodule update --init
Submodule 'MOM6' (https://github.com/NCAR/MOM6.git) registered for path 'MOM6'
Submodule 'MARBL' (https://github.com/marbl-ecosys/MARBL.git) registered for path 'externals/MARBL'
Submodule 'stochastic_physics' (https://github.com/ESCOMP/stochastic_physics.git) registered for path 'externals/stochastic_physics'
Cloning into '/glade/work/mlevy/codes/mi_tmp/MOM6'...
Cloning into '/glade/work/mlevy/codes/mi_tmp/externals/MARBL'...
Cloning into '/glade/work/mlevy/codes/mi_tmp/externals/stochastic_physics'...
Submodule path 'MOM6': checked out '8feb16278d3dbeb22e4902257d2dcf6560a49e06'
Submodule path 'externals/MARBL': checked out '2c04fb23d0ee9ceef6d61f1021652ccab62e8324'
Submodule path 'externals/stochastic_physics': checked out 'ba1dc9d73da5ede3927fd3cdcc38ab2db0a212e5'
$ /path/to/git-fleximod test
s MOM6 dev/ncar_250128 8feb16278 is out of sync with .gitmodules dev/ncar_241122b
e pkg/CVMix-src has no fxtag defined in .gitmodules
e pkg/GSW-Fortran has no fxtag defined in .gitmodules
stochastic_physics at tag ocn_skeb_240807
MARBL at tag marbl0.48.2and that returns with a non-zero exit code. So there seem to be two options for testing:
- use
git-fleximod updateto checkout the submodules, and then do agit diffto make sure the submodules are consistent with what git is expecting - use git to checkout submodules, and then use
git-fleximod testto check if they match what fleximod expects.
I don't have a preference for one method over the other
| echo "Checking if .gitmodules and external hashes are consistent" | ||
| cd $GITHUB_WORKSPACE/CESM/components/mom/ | ||
| ../../bin/git-fleximod update | ||
| git diff --exit-code |
There was a problem hiding this comment.
Talking with @jedwards4b, it sounds like ../../bin/git-fleximod test would be better than my proposed git diff --exit-code here. Though I'm not sure how it works, because running it in my sandbox I see
$ ../../bin/git-fleximod test
MOM6 at tag dev/ncar_241122b
e pkg/CVMix-src has no fxtag defined in .gitmodules, module at 87c3c0c
e pkg/GSW-Fortran has no fxtag defined in .gitmodules, module at 29e64d6
stochastic_physics at tag ocn_skeb_240807
MARBL at tag marbl0.48.2dev/ncar_241122b is the right tag from git-fleximod's perspective, but it's a problem because it's not what git submodules expects
|
@jedwards4b, @mnlevy1981 Does the current version look good? |
|
Yes, thanks! |
mnlevy1981
left a comment
There was a problem hiding this comment.
This looks good to me. I do want to talk about this type of test at tomorrow's CSEG meeting, and if that meeting leads to a different solution for testing then we might need a follow-up PR... but I think we should merge this in now and deal with updates in the future if needed
This PR add a new step in CI test to check if gitmodules and externals are inconsistent by simply running
git diff.