feat(infra): Refactor base-images for Ubuntu 24.04 support #13942
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Context
This PR is a significant step in modernizing the OSS-Fuzz infrastructure by upgrading the base images from Ubuntu 20.04 to 24.04. The primary motivation is to address the upcoming End-of-Life (EOL) of Ubuntu 20.04, ensuring the project remains secure and maintainable.
Instead of a simple replacement, this work refactors the entire
infra/base-images
directory to support parallel builds for both Ubuntu 20.04 and 24.04, ensuring a smooth and verifiable transition.Description of Changes
Dockerfile
for each base image with two version-specific files:ubuntu20-04.Dockerfile
andubuntu24-04.Dockerfile
.fuzzbench_install_dependencies
,install_swift.sh
) to detect the underlying Ubuntu version and install appropriate packages or apply necessary patches.base-image
and finishing withbase-runner-debug
, to ensure stability at each step.BUILD_ANALYSIS_AND_REPORT.md
file for each image to document the migration process, issues encountered, and their resolutions.CHANGELOG.md
ininfra/base-images
to summarize the entire refactoring effort.pytype
andOrange3
incompatibilities infuzzbench
and linker errors related to PIE inbase-builder
.How to Test
A reviewer can verify these changes by building all the base images locally using the provided script.
Related Issues
infra/base-images
to support both Ubuntu 20.04 and 24.04".Next Steps
With the base images updated, the next steps will involve integrating these new Ubuntu 24.04 images into the main CI/CD workflows and updating the project-wide documentation to reflect the new build process.