Skip to content

Replace deprecated oraculum with fedora-distro-aliases#28

Open
thrix wants to merge 1 commit into
mainfrom
replace-oraculum-with-fedora-distro-aliases
Open

Replace deprecated oraculum with fedora-distro-aliases#28
thrix wants to merge 1 commit into
mainfrom
replace-oraculum-with-fedora-distro-aliases

Conversation

@thrix
Copy link
Copy Markdown
Contributor

@thrix thrix commented Jun 4, 2026

The Fedora image URL resolver in testcloud/distro_utils/fedora.py mapped the latest/rawhide/branched aliases to concrete release numbers by querying oraculum (the Packager Dashboard) at https://packager-dashboard.fedoraproject.org/api/v1/releases. Oraculum is being deprecated, so this moves the lookup to the fedora-distro-aliases library, which sources the same data from Bodhi
(https://bodhi.fedoraproject.org/releases/).

A new get_fedora_releases() helper returns a dict shaped like the old oraculum releases["fedora"] payload
({"rawhide", "branched", "stable"}), so the alias-normalization logic is unchanged. Release lookups are cached via the library's Cache (gated on CACHE_IMAGES, TTL TRUST_DEADLINE), and failures map to TestcloudImageError as before.

fedora-distro-aliases>=1.5 is pinned because the caching API (Cache, BadCache, the cache= argument) was introduced in 1.5.

Assisted-by: Claude Code

The Fedora image URL resolver in `testcloud/distro_utils/fedora.py`
mapped the `latest`/`rawhide`/`branched` aliases to concrete release
numbers by querying oraculum (the Packager Dashboard) at
`https://packager-dashboard.fedoraproject.org/api/v1/releases`. Oraculum
is being deprecated, so this moves the lookup to the
[`fedora-distro-aliases`](https://github.com/rpm-software-management/fedora-distro-aliases)
library, which sources the same data from Bodhi
(`https://bodhi.fedoraproject.org/releases/`).

A new `get_fedora_releases()` helper returns a dict shaped like the old
oraculum `releases["fedora"]` payload
(`{"rawhide", "branched", "stable"}`), so the alias-normalization logic
is unchanged. Release lookups are cached via the library's `Cache`
(gated on `CACHE_IMAGES`, TTL `TRUST_DEADLINE`), and failures map to
`TestcloudImageError` as before.

`fedora-distro-aliases>=1.5` is pinned because the caching API
(`Cache`, `BadCache`, the `cache=` argument) was introduced in 1.5.

Assisted-by: Claude Code
Signed-off-by: Miroslav Vadkerti <mvadkert@redhat.com>
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.

1 participant