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

Update Ubuntu CI runner from old AWS c6i ParallelCluster to c6a single-node instance #1085

Merged
merged 32 commits into from
Apr 26, 2024

Conversation

ashley314
Copy link
Collaborator

@ashley314 ashley314 commented Apr 19, 2024

Summary

  • Update the Ubuntu CI workflow to (a) run on a newly provisioned c6a single node instead of an old c6i ParallelCluster that is now in a state where it can't be updated anymore, and (b) build Intel and GNU environments in two steps: first create a buildcache, then an actual environment from it. The buildcache can be used to create spack-stack environments for other CI testing by JCSDA (simobs, skylab, ufs-bundle).
  • Use tag v1.3.0 of the CMakeModules submodule - no code changes here, we tagged the commit that spack-stack was pointing to for several releases as v1.3.0.
  • Update submodule pointer for spack for a few accumulated changes, including Add -fPIC to hdf-eos2 builds spack#426 which is required for this PR.

Testing

Systems affected

CI testing

Issue(s) addressed

Working towards https://github.com/JCSDA-internal/CI/issues/118

Dependencies

Checklist

  • This PR addresses one issue/problem/enhancement, or has a very good reason for not doing so.
  • These changes have been tested on the affected systems and applications.
  • All dependency PRs/issues have been resolved and this PR can be merged.

@ashley314 ashley314 changed the title new CI workflow yaml WIP: new CI workflow yaml Apr 19, 2024
@ashley314 ashley314 self-assigned this Apr 19, 2024
@ashley314 ashley314 added the INFRA JEDI Infrastructure label Apr 19, 2024
…-ci-x86_64.yaml to ubuntu-ci-x86_64-intel.yaml, and update both workflows (incomplete)
…github/workflows/ubuntu-ci-x86_64-intel.yaml.tmp to debug GNU build
…d temporarily rename .github/workflows/macos-ci-aarch64.yaml
@climbfuji climbfuji changed the title WIP: new CI workflow yaml Update Ubuntu CI runner from old AWS c6i ParallelCluster to c6a single-node instance Apr 24, 2024
@climbfuji climbfuji marked this pull request as ready for review April 25, 2024 02:15
@climbfuji
Copy link
Collaborator

This is finally ready for review. I also ran the container CI test (needs to run from a branch in the spack-stack repo) and it was successful: https://github.com/JCSDA/spack-stack/actions/runs/8825426794

@@ -0,0 +1,192 @@
name: ubuntu-ci-c6a-x86_64-gnu-build
Copy link
Collaborator

Choose a reason for hiding this comment

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

This is almost a copy of the .github/workflows/ubuntu-ci-x86_64-intel.yaml workflow. There are subtle differences and I thought it might be better to keep them apart, even though this means some amount of code duplication. We could move some of the steps into a common/shared workflow file and draw from there in the future ...

run: |
# Get day of week to decide whether to use build caches or not
Copy link
Collaborator

Choose a reason for hiding this comment

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

I adopted this logic from the previously removed workflow on the AWS ParallelCluster (R&D cluster)

Copy link
Collaborator

@climbfuji climbfuji left a comment

Choose a reason for hiding this comment

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

I contributed many of the changes in this PR, therefore I should not be approving it. But I am obviously happy with it :-)

@climbfuji
Copy link
Collaborator

@ashley314 Can you please do a self-review of this PR, especially all the changes I added on top of yours (apologies for the many updates)? Thanks!

@ashley314
Copy link
Collaborator Author

Will do! @climbfuji thanks for all of the updates

Copy link
Collaborator Author

@ashley314 ashley314 left a comment

Choose a reason for hiding this comment

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

I'm not able to approve this PR, but I reviewed and everything looks good. Thank you for getting these working!

@climbfuji
Copy link
Collaborator

@AlexanderRichert-NOAA Do you have time for a review of this?

Copy link
Collaborator

@srherbener srherbener left a comment

Choose a reason for hiding this comment

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

Why do the file names not contain the "c6a" marking, but the internal names in the configuration do contain "c6a"? Just want to check if this was what was intended. Thanks!

@climbfuji
Copy link
Collaborator

Why do the file names not contain the "c6a" marking, but the internal names in the configuration do contain "c6a"? Just want to check if this was what was intended. Thanks!

Only the name of the runner differs, which is totally independent of the yaml.

@srherbener
Copy link
Collaborator

Why do the file names not contain the "c6a" marking, but the internal names in the configuration do contain "c6a"? Just want to check if this was what was intended. Thanks!

Only the name of the runner differs, which is totally independent of the yaml.

Sounds good. I just wanted to double check.

@climbfuji climbfuji merged commit dc05664 into JCSDA:develop Apr 26, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
INFRA JEDI Infrastructure
Projects
Development

Successfully merging this pull request may close these issues.

None yet

3 participants