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

Github Action script to run preview_namelists #305

Closed

Conversation

mnlevy1981
Copy link
Contributor

Description of changes

Adds Github Action to create cases using a range of compsets (currently B, C, C with MARBL, D, I, Q, and T) and run preview_namelists. I intentionally set up the matrix to turn this into 35 parallel jobs (7 compsets and 5 versions of python)... it might be more efficient to have a separate job for each version of python that creates all 7 compsets in that same job, but I think that would make it harder to parse the results. If a B compset is failing because of issues in MOM6, CAM, and CLM, then we should see failures in B, both Cs, I, and Q tests while a single job per python version would just abort after the first failure and not catch the other four.

Specific notes

Contributors other than yourself, if any: @manishvenu was helpful in getting past some issues I had with github actions

Fixes: [Github issue #s] And brief description of each issue.

User interface changes?: [ No/Yes ]
[ If yes, describe what changed, and steps taken to ensure backward compatibility ]

Testing performed (automated tests and/or manual tests): These tests have run on my branch at https://github.com/mnlevy1981/cesm/actions/runs/11946703920 -- note that I had 3.14 in the python version matrix, but those tests failed with

Version 3.14 was not found in the local cache
  Error: The version '3.14' with architecture 'x64' was not found for Ubuntu 22.04.

So I removed it from this PR. Test results:

  • Fails in python 3.9 for G and B compsets because CICE's buildnml relies on glob.glob API introduced in 3.10
  • Fails all 3.12 and 3.13 tests because distutils has been removed from the standard library

Fails in python 3.9 for G and B compsets because CICE's buildnml relies on
glob.glob API introduced in 3.10. Fails all 3.12 and 3.13 tests because
distutils has been removed from the standard library.
Copy link
Contributor

@jedwards4b jedwards4b left a comment

Choose a reason for hiding this comment

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

@mnlevy1981 I believe that if you update to the latest cime it should fix the distutils issue.

- uses: actions/checkout@v4

- name: Setup python ${{ matrix.python-version }}
uses: actions/setup-python@v4
Copy link
Contributor

Choose a reason for hiding this comment

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

should be actions/setup-python@v5

Copy link
Contributor Author

Choose a reason for hiding this comment

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

done in c9eb302

@mnlevy1981
Copy link
Contributor Author

@mnlevy1981 I believe that if you update to the latest cime it should fix the distutils issue.

I'll leave that to Chris when he pushes the newest alpha tags to cesm3.0-alphabranch :) I did note on ESMCI/cime#4668 that master still has a few from distutils.spawn import find_executable, but the failure I'm seeing in the current tests is from from distutils import file_util and those have been removed.

@jedwards4b
Copy link
Contributor

@mnlevy1981 can you give me permission to push to your fork please?

@jedwards4b jedwards4b mentioned this pull request Dec 4, 2024
@mnlevy1981
Copy link
Contributor Author

Closed in favor of #307

@mnlevy1981 mnlevy1981 closed this Dec 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants