Skip to content

Refactored CI infrastructure. #170

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

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

p-costa
Copy link
Collaborator

@p-costa p-costa commented May 8, 2025

This PR features a major change in the CI testing infrastructure, designed by Louis Henry @lohenry-escience in the framework of the ExaFLOW project.

The new infrastructure:

  • Makes it easy to test different environments and tests automatically NVIDIA and Intel, in addition to GNU.
  • Organizes tests in matrices per compiler vendor.
  • Creates a sequential dependency between "compiling" and "running" workflows, using the executable generated during compilation for the running step. The "running" test is not triggered if the "compiling" test fails.
  • Allows automatic tests with different compiling profiles (e.g., debug and optimized builds).
  • Avoids long log outputs. Only a subset of the log is printed, and the full logs may be visualized in a separate step, or as a downloadable artifact.

p-costa and others added 2 commits May 8, 2025 20:29
@p-costa p-costa added this to the v3.1 milestone May 8, 2025
shell: bash
run: |
echo "INFO: Installing compiling environment: ${{ inputs.compiler }}"
chmod a+x ./.github/actions/build/scripts/install-${{ inputs.compiler }}.sh
Copy link
Contributor

Choose a reason for hiding this comment

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

Do you prefer putting the test-related scripts in the .github repository, rather than in a dedicated scripts/testing directory which may be more accessible to people that could use them as reference? I do not have a strong feeling.

Copy link
Collaborator Author

@p-costa p-costa May 9, 2025

Choose a reason for hiding this comment

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

Yes... My logic is that the user who runs the test locally will run it in their own already set environment, which is
not necessarily the same as that is used on the CI. In that sense, the set-up of the environment is CI-specific.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@loostrum, to follow up on a query over Zulip, do you have an opinion about this? Thanks!

@p-costa p-costa force-pushed the refactored-ci branch 2 times, most recently from ed1397b to 771960f Compare May 9, 2025 16:02
Co-authored-by: lohenry-escience <[email protected]>
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