Skip to content

Conversation

@victorapm
Copy link
Contributor

This PR contains the initial steps toward implementing CI in hypre.

  1. Added .github/workflows/ci.yml that runs on pushes to master and on pull requests
  2. Configured a Debug CMake build for CI
  3. Added check target to CI to quickly test the compiled library.
  4. Added a require-label job that fails pull requests lacking the Run CI label; developers must add the label to trigger the build job and unblock merging.

@victorapm victorapm added the Run CI Label to trigger CI jobs label Nov 19, 2025
@victorapm victorapm requested a review from rfalgout November 19, 2025 03:51
@rfalgout
Copy link
Contributor

Is there a way for me to take this for a test drive? Also, is there documentation for the ci.yml file that would be helpful for understanding its structure, the label names, etc.? This looks really reasonable at first glance. Thanks!

@victorapm
Copy link
Contributor Author

Hi Rob, for a test drive, you can push to this branch and it will trigger the tests automatically (since the PR already has the "Run CI" label). I'll add a new documentation section about CI

@rfalgout
Copy link
Contributor

This looks good, Victor! I would like to walk through the ci.yml file in more detail before approving, because I want to understand what's going on there. Can you put a link to a github CI guide in the description (whatever resources you found helpful when you were developing this, for example)? Also, I think it would be good to have the other hypre developers take a look as well since this will affect all of them.

@victorapm
Copy link
Contributor Author

Hi Rob, I added a new section in our rtd page about CI. Let me know if it looks good!

@ulrikeyang @oseikuffuor1 @waynemitchell @liruipeng This PR is adding initial support to CI in hypre. Let me know if you have comments/feedback

@rfalgout
Copy link
Contributor

Hi Rob, I added a new section in our rtd page about CI. Let me know if it looks good!

Hi Victor. I think you misunderstood my request. Sorry for not being more explicit. I was only looking for a few pointers/links in the description for this PR to help me out while I read through the ci.yml file in more detail.

I am not sure the documentation you wrote belongs in the user manual. Most of it is for developers. Developer help may be better to put on the developer wiki. The folder src/docs/wiki-dev is where we can put these pages before we move them officially to the wiki. Alternatively, we could put it in a README.md file in some CI related directory like .github or .github/workflows. Or, maybe it's best to use a combination of these. Some discussion is probably in order before we do anything else.

What you wrote should be more than sufficient for me to walk through the ci.yml file. I'll let you know if I have any comments. Thanks again for putting this together! It looks really cool so far, and it's a path we've wanted to go down for many years now!

@victorapm
Copy link
Contributor Author

Oh yes, no worries! I guess we can easily move that section to the wiki page. I'm not using anything fancy in the rst file, so it's an easy switch to markdown...

Copy link
Contributor

@rfalgout rfalgout left a comment

Choose a reason for hiding this comment

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

This looks great, Victor! The only thing I think you should do here is move the documentation to the wiki dev folder (to be added to the wiki after the merge).

@victorapm
Copy link
Contributor Author

move the documentation to the wiki dev folder

Thanks, Rob! Done in 29f3028

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Run CI Label to trigger CI jobs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants