Skip to content

Conversation

@gordonmessmer
Copy link
Contributor

Refactor the CI workflow to build and run tests inside Docker containers instead of directly on GitHub runners. This adds support for testing on Fedora releases in addition to Ubuntu 22.04 and 24.04.

Description

This change uses container images for tests so that platforms other than the ones provided directly by GitHub can be tested.

Testing in container images makes it easier to support a broader range of platforms, but more importantly it allows gef to test and adapt to changes in glibc, gcc, and Python as they are released, rather than re-synchronizing with those projects every two years.

Checklist

  • My code follows the code style of this project.
  • My change includes a change to the documentation, if required.
  • If my change adds new code, adequate tests have been added.
  • I have read and agree to the CONTRIBUTING document.

@github-actions
Copy link

🤖 Coverage update for 23e7e8c 🟢

Old New
Commit 60a99cb 23e7e8c
Score 71.0582% 71.0582% (0)

@github-actions
Copy link

github-actions bot commented Feb 2, 2026

🤖 Coverage update for d19c0ec 🔴

Old New
Commit 1840407 d19c0ec
Score 71.116% 71.0582% (-0.0578)

@github-actions
Copy link

github-actions bot commented Feb 2, 2026

🤖 Coverage update for cbb4132 🔴

Old New
Commit 1840407 cbb4132
Score 71.116% 71.0582% (-0.0578)

@gordonmessmer
Copy link
Contributor Author

This version of the container CI setup runs on all of the expected platforms. The failures on Fedora 43 and 44 amd64 are expected... they are probably the result of glibc changes, and illustrating those failures is largely the point of this change.

The failures on arm are not expected. It looks like the tests that 1840407 marked skipped aren't being skipped in the arm container. I'll have to look into that later.

@hugsy
Copy link
Owner

hugsy commented Feb 2, 2026

Very cool @gordonmessmer - funny that we both got to work on that almost at the time 😄

Can you mark the failing tests as skipped on CI then ? So we can still have a 🟢 build for this PR, and tackle the known failures in individual followup issues/PRs ?

@hugsy
Copy link
Owner

hugsy commented Feb 2, 2026

FWIW in my own tests in #1206 I remember Arch was also not playing well for the test suite.

@gordonmessmer gordonmessmer force-pushed the container-ci branch 2 times, most recently from 4059975 to ef33e72 Compare February 2, 2026 23:33
@github-actions
Copy link

github-actions bot commented Feb 2, 2026

🤖 Coverage update for ef33e72 🔴

Old New
Commit 1840407 ef33e72
Score 71.116% 71.0582% (-0.0578)

@github-actions
Copy link

github-actions bot commented Feb 2, 2026

🤖 Coverage update for 01f7132 🔴

Old New
Commit 1840407 01f7132
Score 71.116% 71.0775% (-0.0385)

@github-actions
Copy link

github-actions bot commented Feb 2, 2026

🤖 Coverage update for d6febdd 🔴

Old New
Commit 1840407 d6febdd
Score 71.116% 71.0582% (-0.0578)

@gordonmessmer
Copy link
Contributor Author

funny that we both got to work on that almost at the time

I suppose I should make a habit of looking at open PRs to see if the thing I want to do is already in progress, but.... -_-

Can you mark the failing tests as skipped on CI then

If you'd like, I can squash these commits and then work on disabling some tests. Or you can squash these and merge in its current condition, and then disable tests in another PR. Either way, I think it makes sense to disable tests in a separate commit so that it's easier to revert later.

I think that the PR is now working as expected. All of the Ubuntu jobs are green. Fedora 42 on amd64 is green. Fedora 43 and rawhide fail, but that's expected. Not entirely sure why f42:arm64 fails. :-/

@hugsy
Copy link
Owner

hugsy commented Feb 3, 2026

Either way, I think it makes sense to disable tests in a separate commit so that it's easier to revert later.

Yeah, that's fine. As long as we track the disabled tests in an issue or somewhere so we don't forget they fail (and point it if someone comes and asks why it fails)

I can de-dust my arm64 dev box and install a fedora43 vm over the weekend and have a look. But in the meantime I see no reason not to merge this PR as-is when all lights come back green

@gordonmessmer
Copy link
Contributor Author

I'll send a commit to disable some tests shortly... Are you able to reopen and rebase #1197 ? It fixes some of the tests currently failing.

Refactor the CI workflow to build and run tests inside Docker containers
instead of directly on GitHub runners. This adds support for testing on
Fedora releases in addition to Ubuntu 22.04 and 24.04.
@github-actions
Copy link

github-actions bot commented Feb 3, 2026

🤖 Coverage update for e28dc31 🔴

Old New
Commit 1840407 e28dc31
Score 71.116% 71.0582% (-0.0578)

@github-actions
Copy link

github-actions bot commented Feb 3, 2026

🤖 Coverage update for 049d3dd 🔴

Old New
Commit 1840407 049d3dd
Score 71.116% 71.0582% (-0.0578)

@github-actions
Copy link

github-actions bot commented Feb 3, 2026

🤖 Coverage update for 1a098de 🔴

Old New
Commit 1840407 1a098de
Score 71.116% 71.0582% (-0.0578)

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