-
Notifications
You must be signed in to change notification settings - Fork 383
Add support for copy_file tag #467
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
Conversation
This is needed for copying config files that may then be altered by the user within a test case. Since there is a significant amount of redundant code between this and and support for the `add_link` tag, a helper function has been added to encapsulate the redundancy. Some error messages have been modified to raise exceptions.
|
@mark-petersen, let me know if |
|
@matthewhoffman, #417 merged in @mark-petersen's work in progress on making initial conditions, mapping files, etc. that are ready to go into E3SM. One of the things we realized we couldn't do in COMPASS was copy (as opposed to symlink) a file. In this particular case, we want to copy a config file that a user would then alter as needed for a particular config (e.g for debugging). |
TestingI cherry-picked this commit onto I also set up all of the other It would be good to setup and run as many test cases as practical before merging this, since the |
mark-petersen
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@xylar I made a similar change locally, but then forgot to merge it into develop. Thanks for your willingness to pitch in, as always. I also tested with this merged into ocean/develop and it worked just right.
|
@mgduda this goes into @matthewhoffman, this is adding a new COMPASS function |
|
@matthewhoffman, I know this is already merged, but could you run a test case or 2 from |
Note: This was originally merged into develop. Adding it to ocean/develop so we have it now. This is needed for copying config files that may then be altered by the user within a test case. Since there is a significant amount of redundant code between this and and support for the add_link tag, a helper function has been added to encapsulate the redundancy. Some error messages have been modified to raise exceptions.
|
@xylar, I added this one commit to |
|
@xylar , I'll try to double check this today when I'm doing some COMPASS stuff. This is a valuable feature that I've wanted in the past. Thanks for putting it together. |
In this case, I'm okay with this. In general, we don't want to put in redundant commits because it makes debugging a lot more challenging because the same change is effectively introduced in two places. |
|
I agree. The alternative today was to merge develop back to all three cores at once and make a separate E3SM PR for just that, which is way too much overhead for this small change on a lone file in COMPASS. |
|
@xylar , I included this in a COMPASS run today, and everything worked. Nice work. |
Note: This was originally merged into develop. Adding it to ocean/develop so we have it now. This is needed for copying config files that may then be altered by the user within a test case. Since there is a significant amount of redundant code between this and and support for the add_link tag, a helper function has been added to encapsulate the redundancy. Some error messages have been modified to raise exceptions.
#3737) Update MPAS framework This PR brings in a new mpas-source submodule with updates to the mpas framework itself, plus changes to the cores supporting the framework update. Some changes are made to the atmosphere core, even though it is not used by E3SM, in order to maintain consistency with the framework. This update includes the following individual branches and PRs, many of which are additions to the makefiles for summit, or optional libraries: * az/azamat/mpas-cmake/mpas-tool-dir (MPAS-Dev/MPAS-Model#629) * init_atmosphere/kd_tree_ties (MPAS-Dev/MPAS-Model#630) * mark-petersen/framework/add_FillValue (MPAS-Dev/MPAS-Model#616) * mark-petersen/framework/add_lapack_option (MPAS-Dev/MPAS-Model#613) * amametjanov/framework/nullify-field-pointers (MPAS-Dev/MPAS-Model#578) * framework/makefile_e3sm (MPAS-Dev/MPAS-Model#603) * xylar/framework/make_shell_bash (MPAS-Dev/MPAS-Model#594) * registry/missing_value (MPAS-Dev/MPAS-Model#562) * pwolfram/updates_make_intel_stack (MPAS-Dev/MPAS-Model#592) * azamat/framework/pgi-cpr-omp-workaround (MPAS-Dev/MPAS-Model#449) * az/framework/e3sm-cmake-qnosmp-typo (MPAS-Dev/MPAS-Model#579) * xylar/compass/add_prerequisite_tag * atmosphere/fix_timekeeping_imports (MPAS-Dev/MPAS-Model#582) * xylar/fix_docs_ci (MPAS-Dev/MPAS-Model#575) * xylar/add_compass_docs (MPAS-Dev/MPAS-Model#472) * philipwjones/framework/summitmake (MPAS-Dev/MPAS-Model#536) * atmosphere/atm_core_cleanup (MPAS-Dev/MPAS-Model#548) * init_atmosphere/parse_geoindex (MPAS-Dev/MPAS-Model#459) * xylar/compass/add_copy_file (MPAS-Dev/MPAS-Model#467) * init_atmosphere/kd_tree (MPAS-Dev/MPAS-Model#438) * init_atmosphere/mpas_stack (MPAS-Dev/MPAS-Model#426) * operators/add_mpas_in_cell (MPAS-Dev/MPAS-Model#400) Fixes #3396 Fixes #3236 [BFB]
Update MPAS framework This PR brings in a new mpas-source submodule with updates to the mpas framework itself, plus changes to the cores supporting the framework update. Some changes are made to the atmosphere core, even though it is not used by E3SM, in order to maintain consistency with the framework. This update includes the following individual branches and PRs, many of which are additions to the makefiles for summit, or optional libraries: * az/azamat/mpas-cmake/mpas-tool-dir (MPAS-Dev/MPAS-Model#629) * init_atmosphere/kd_tree_ties (MPAS-Dev/MPAS-Model#630) * mark-petersen/framework/add_FillValue (MPAS-Dev/MPAS-Model#616) * mark-petersen/framework/add_lapack_option (MPAS-Dev/MPAS-Model#613) * amametjanov/framework/nullify-field-pointers (MPAS-Dev/MPAS-Model#578) * framework/makefile_e3sm (MPAS-Dev/MPAS-Model#603) * xylar/framework/make_shell_bash (MPAS-Dev/MPAS-Model#594) * registry/missing_value (MPAS-Dev/MPAS-Model#562) * pwolfram/updates_make_intel_stack (MPAS-Dev/MPAS-Model#592) * azamat/framework/pgi-cpr-omp-workaround (MPAS-Dev/MPAS-Model#449) * az/framework/e3sm-cmake-qnosmp-typo (MPAS-Dev/MPAS-Model#579) * xylar/compass/add_prerequisite_tag * atmosphere/fix_timekeeping_imports (MPAS-Dev/MPAS-Model#582) * xylar/fix_docs_ci (MPAS-Dev/MPAS-Model#575) * xylar/add_compass_docs (MPAS-Dev/MPAS-Model#472) * philipwjones/framework/summitmake (MPAS-Dev/MPAS-Model#536) * atmosphere/atm_core_cleanup (MPAS-Dev/MPAS-Model#548) * init_atmosphere/parse_geoindex (MPAS-Dev/MPAS-Model#459) * xylar/compass/add_copy_file (MPAS-Dev/MPAS-Model#467) * init_atmosphere/kd_tree (MPAS-Dev/MPAS-Model#438) * init_atmosphere/mpas_stack (MPAS-Dev/MPAS-Model#426) * operators/add_mpas_in_cell (MPAS-Dev/MPAS-Model#400) Fixes #3396 Fixes #3236 [BFB]
This is needed for copying config files that may then be altered by the user within a test case.
Since there is a significant amount of redundant code between this and and support for the
add_linktag, a helper function has been added to encapsulate the redundancy.Some error messages have been modified to raise exceptions.