Update Red Hat Family Image Releases
Overview
Update the release-related lines in image-scripts/images/{rocky-*,almalinux-*,centos-*-stream,fedora-*}/build.sh by reading the upstream HTTP package listings and then verify each changed image with its matching image-scripts/test@... test.
Quick Start
- From repo root, run
ruby skills/update-redhat-family-image-releases/scripts/discover_release_updates.rb <scope>. - Edit the
build.shfiles reported by the script. - Run
./test-runner.sh test image-scripts/test@<image-name>for every changed image. - Keep one commit per changed image directory, for example
image-scripts: update rocky-9 to <ver>.
Use rocky, almalinux, centos-stream, fedora, or all for <scope>.
Workflow
Select Targets
rocky: update everyimage-scripts/images/rocky-*almalinux: update everyimage-scripts/images/almalinux-*centos-stream: update everyimage-scripts/images/centos-*-streamfedora: update everyimage-scripts/images/fedora-*all: update all of the above
Discover Exact Versions
- Never guess RPM filenames or point releases.
- Use
scripts/discover_release_updates.rbto read the current repo state and the upstream directory listings. - Read references/release-workflow.md only when you need the per-family URL and variable rules.
- If a stable Fedora image is no longer on the live Fedora releases mirror, treat it as stale repo content to remove instead of chasing archive URLs.
Edit Only Release-Related Lines
- Rocky: update
POINTVERandRELEASE. - AlmaLinux 9/10/future: update
POINTVERandRELEASE. - AlmaLinux 8: update
POINTVERandRELEASE, but leaveBASEURLandUPDATESon${RELVER}unless the upstream layout changed. - CentOS Stream: update
RELEASEto the highestcentos-stream-release-<POINTVER>-*.rpmin the major stream's BaseOS packages listing. If the newest RPM embeds a different<POINTVER>than the current file, updatePOINTVERto match it. KeepBASEURLandUPDATESon<major>-streamunless the upstream layout changed. - Fedora stable: update the shared release suffix in the four
fedora-release*lines. - Fedora rawhide: update
RAWHIDE_RELVER; keep the fourRELEASElines consistent with it.
Verify Every Changed Image
- Run
./test-runner.sh test image-scripts/test@<image-name>for each changed image directory. - If
osvmortest-runnerhas local changes, runnix develop .#test-runner -c bundle exec ./test-runner/bin/test-runner test image-scripts/test@<image-name>from repo root so the tests use the local code. - Do not skip a changed image because another image in the same family passed.
Keep Commits Focused
- Make one commit per changed image directory, not one commit for the whole family sweep.
- Use subjects such as
image-scripts: update rocky-9 to <ver>,image-scripts: update centos-9-stream release to <ver>,image-scripts: update almalinux-10 to <ver>, orimage-scripts: update fedora-rawhide release to <ver>.
Source: vpsfreecz/vpsadminos — distributed by TomeVault.