New CI test to build iturbo#226
Conversation
Build the MOM6 executable with both TIM and FMS when MOM6 is the dev/turbo-debug branch (instrumented TURBO, or iturbo) rather than the default dev/turbo branch
|
I could see an argument for only testing iturbo with TIM (dropping FMS2 tests), but I think it's nice to show that we aren't accidentally trying to call TIM subroutines through the FMS2 infrastructure layer |
|
@mnlevy1981 I have created a handful of unit tests that test the scaffolding functions that only exist in the iturbo branch. Do we also create an iturbo branch in turbo-stack that uses the proper version of MOM6? |
I think it makes more sense to create a workflow that checks out I also want to figure out why my new workflow didn't run on this branch... @mwaxmonsky, @alperaltuntas, or @sjsprecious do any of you know why I don't see the "Build iturbo branch of MOM6 with TIM and FMS" checks here? |
|
@mnlevy1981 Looks like the pull request branch list doesn't contain |
|
Also, because |
|
The additional unit tests (located in turbo-stack) will not compile without the use of the iturbo version of MOM6, which is why I am thinking that there might need to be an iturbo version of turbo-stack. |
This is the
Oh, I see. I should probably let go of this idea of running everything off turbo-stack's |
Also removed CESM_share (and modified the build so we don't rely on CESM share code in our MOM6 build anymore)
I hadn't aligned the new "Switch MOM6 to dev/turbo-debug" section correctly, so the new tests were not being run
There was a problem hiding this comment.
Pull request overview
Adds a new GitHub Actions workflow to build the instrumented MOM6 branch (dev/turbo-debug, “iturbo”) with both TIM and FMS2, aiming to catch submodule/branch integration issues earlier in CI. As part of enabling this, the PR also removes the CESM_share submodule and trims build logic that previously referenced CESM share source files.
Changes:
- Add a new CI workflow that checks out
submodules/MOM6atdev/turbo-debugand builds with TIM and FMS2. - Remove CESM_share submodule from
.gitmodules. - Remove CESM_share
shr_*source injections from the infrastructure build step inbuild.sh.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
build.sh |
Removes CESM_share shr_* file appends from infra build path generation. |
.gitmodules |
Drops the src/CESM_share submodule entry. |
.github/workflows/build-tests-iturbo.yaml |
New workflow to build MOM6 dev/turbo-debug with TIM and FMS2 in CI. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Removed SHR_ROOT from build.sh and gen_parse_tree.sh; added a git fetch to the new workflow before checking out a new branch. A few notes: 1. I also added a git log --oneline --decorate so we can verify we've made necessary changes (and a --recurse-submodules flag to git checkout in case any of the submodules changed) 2. It looks like gen_parse_tree.sh used to be very similar to build.sh, but they have diverged quite a bit. Besides removing SHR_ROOT, I also added the infra/ subdirectory to INFRA_ROOT (and set the default to be TIM instead of FMS). There's probably still more clean-up to do, though. 3. I did not change the grep command; co-pilot has suggested this before, but it doesn't work as advertised on my laptop
|
This PR is ready for review / merging, but I'm not sure who would be best for reviewing. It
|
Description
Build the MOM6 executable with both TIM and FMS when MOM6 is the dev/turbo-debug branch (instrumented TURBO, or iturbo) rather than the default dev/turbo branch
Type of Change
Related Issues
We didn't create an issue, but when @johnmauff and I were working on TURBO-ESM/MOM6#18 and #224 we realized that the
dev/turbo-debugbranch won't build in turbo-stack until the TIM submodule is updated to bring in some new commits. That could have been caught by the CI if we were trying to build this branch of MOM6.Changes Made
I duplicated
build-tests.yamland added a step to checkoutdev/turbo-debug.Testing
Test Environment
Test Cases
Performance Impact
Documentation
Checklist