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

ctsm5.3.028: Move Izumi intel and gnu tests to Derecho #2975

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

samsrabin
Copy link
Collaborator

@samsrabin samsrabin commented Feb 27, 2025

Description of changes

Moves Izumi intel and gnu tests to Derecho.

Notes to reviewer(s)

  • I used two Python scripts for this, which I have put in a new top-level tmp/ directory. This directory will be deleted before merging, but I wanted to show my work.
  • The first Python script, tmp/remove_testlist_whitespace.py, rewrote testlist_clm.xml with extraneous whitespace removed. This would an inevitable result of using Python to parse, edit, and rewrite testlist_clm.xml, so I did it in one separate step that got its own commit. However, the result is that it looks like there are many more diffs in testlist_clm.xml than there really are. Make sure to ignore whitespace in your review to simplify things.
  • I then did a find-and-replace to change all Izumi intel and gnu tests to Derecho, except for the FUNIT test.
  • The second Python script, tmp/remove_duplicate_tests.py, removed duplicate tests resulting from the Izumi-to-Derecho change.

Specific notes

Contributors other than yourself, if any: None

CTSM Issues Fixed:

Are answers expected to change (and if so in what way)? No. However, a bunch of tests will be moved from Izumi to Derecho.

Any User Interface Changes (namelist or namelist defaults changes)? No

Does this create a need to change or add documentation? Did you do so? No

Testing performed, if any: None so far

@samsrabin samsrabin added testing additions or changes to tests test: aux_clm Pass aux_clm suite before merging labels Feb 27, 2025
@samsrabin samsrabin self-assigned this Feb 27, 2025
@samsrabin samsrabin added this to the cesm3_0_beta06 milestone Feb 27, 2025
@samsrabin samsrabin marked this pull request as draft February 27, 2025 19:31
@samsrabin samsrabin marked this pull request as ready for review February 27, 2025 19:53
@samsrabin
Copy link
Collaborator Author

samsrabin commented Feb 27, 2025

Those two Python scripts could actually be used in a GitHub workflow to check that testlist_clm.xml is well-formed... Will play with this but won't let it hold up this PR. @ekluzek

Copy link
Collaborator

@ekluzek ekluzek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I verified that the new testlist only has izumi_nag. And the changes all make sense to me. Some things I hadn't thought about you also brought in which makes sense. This will make the test list on Derecho, slightly longer, but that's fine.

I also think that the tools you made should become more mainstream. The tmp directory makes me think you were going to delete them. But, I don't think you should. We should do more of using tools like this. If they do become more mainstream, I'd like to see more testing for them, and probably a library level that removes some code duplication.

But, I think you bring this in like it is.

@@ -0,0 +1,104 @@
# %%
import xml.etree.ElementTree as ET
from xml.dom import minidom
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Putting this in a tmp directory makes it sound like this is a one time thing to do. But, when thinking about it -- we probably ought to keep this around, and run it periodically. Maybe even have a github action for it.

Having some tools that check the testlists and make sure they are valid is really good thing to have. Having more tools around this would be really good. This is moving us towards automation and tools doing work for us, which is a really powerful thing to move towards.

Copy link
Collaborator Author

@samsrabin samsrabin Feb 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! For now I've moved them into a new directory, tools/contrib/testlist_checks/.

  • File an issue to convert these to GitHub Workflows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
test: aux_clm Pass aux_clm suite before merging testing additions or changes to tests
Projects
Status: In progress - master/b4b-dev
Development

Successfully merging this pull request may close these issues.

Move non-nag Izumi tests to Derecho
2 participants