Skip to content

Improved CI testing#104

Draft
Andrew-Beggs-ECMWF wants to merge 52 commits intoecmwf-ifs:developfrom
Andrew-Beggs-ECMWF:naab-static-linking-fix
Draft

Improved CI testing#104
Andrew-Beggs-ECMWF wants to merge 52 commits intoecmwf-ifs:developfrom
Andrew-Beggs-ECMWF:naab-static-linking-fix

Conversation

@Andrew-Beggs-ECMWF
Copy link
Copy Markdown
Contributor

@Andrew-Beggs-ECMWF Andrew-Beggs-ECMWF commented Mar 6, 2026

This is a PR that started off as fixing issues with static linking within DrHook tests, but evolved to expand the coverage of the CI workflow & fix some bugs it highlighted.

Currently this is a draft PR as it's waiting for work on custom containers to be completed. This will hopefully also greatly decrease the time taken by the CI (which has increased due to the number of new tests) as dependencies won't need to be installed as part of the workflow.

The commit history for this branch is a bit messy due to testing, but I will squash this before removing draft status.

Due to running in containers, the PAPI tests are currently disabled using the label "PAPI_BROKEN_GITHUB_CI". This is a temporary fix that allows for testing a build with PAPI will complete, but not functionality of PAPI itself. Tests that don't call PAPI (i.e. only core DrHook functionality) will also be run. This will be fixed in a future PR by running on ECMWF's HPC.

This should allow for the testing of builds for both static and shared
libs. If the case statement doesn't match (not currently possible), it
will default to a shared lib build.
N.b. this is expected to fail due to missing libraries. That will be
added later.

Fix typo
It's common between ubuntu 24.04 and 22.04
Andrew-Beggs-ECMWF and others added 22 commits March 10, 2026 10:08
Also removes DR_HOOK_OPT=NOPROP since it is no longer needed.
Tests fail during CI due to the GitHub runner having no counters available. A minimal mock library should be made to solve this, but for now, simply having a working build that doesn't fail non-papi tests is sufficient.

Fix regex

Escape quotes

Change quotes

Replace case() statement

Remove outer quotes

Move regex to matrix to avoid string shenanigans

Fix matrix defs

Add quotes to avoid splitting

Swap quotes

Swap quotes

Tmp test

Add brackets for grouping

Make regex more explicit
Change to ifdef vs literal value

DR_HOOK_HAVE_PAPI isn't always defined. This is slightly safer too.
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