Skip to content

Take kolla tags from the images' own versions - #323

Merged
berendt merged 3 commits into
mainfrom
kolla-release-tags
Oct 10, 2026
Merged

berendt merged 3 commits into
mainfrom
kolla-release-tags

Conversation

@ideaship

@ideaship ideaship commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Important

Part of a four-repo change. Start with osism/issues#1462: it explains why four repos are involved, what each PR fixes, and the merge order.

On OSISM 11.0.0, ten kolla containers request image tags that do not exist, because the image's own release version never reaches the variable its tag is read from. This PR points the catalogue at the version variables that container-image-kolla-ansible now renders. One commit per image group:

  • httpd: keystone_httpd_tag, a new ironic_http_tag (plus ironic_http_image) and, from 2026.1 on, letsencrypt_webserver_tag read kolla_httpd_version.
  • exporters: image and tag entries for the valkey and openstack-network exporters, mapped like the existing exporters.
  • hacluster: hacluster_corosync_tag gets its own variable, because corosync's version differs from pacemaker's.

ovsdpdk needs no change here. Every new reference has a default(), so this can merge at any point: until a kolla-ansible image with the new variables is released, the tags fall back as they do today.

Related:

🤖 Generated with Claude Code

Three kolla-ansible containers run the httpd image, but none takes its
tag from httpd's own version:

- keystone_httpd_tag (httpd from 2025.2) followed keystone_tag.
- ironic_http_tag (httpd from 2026.1) is not in this catalogue, so the
  kolla-ansible role default "{{ ironic_tag }}" applied.
- letsencrypt_webserver_tag followed kolla_letsencrypt_webserver_version,
  which no longer resolves from 2026.1 on, because kolla replaced the
  letsencrypt-webserver image with httpd and the SBOM has no key for
  it. The tag fell back to the series.

On the latest track every kolla image carries the series tag, so this
went unnoticed. On a release, images carry per-image versions, and
OSISM 11.0.0 requests httpd:29.0.3.20261008 (keystone),
httpd:35.1.1.20261008 (ironic) and httpd:2026.1 (Let's Encrypt), none
of which exists; the build pushed httpd:2.4.58.20261008. ironic-http
runs in every deployment with ironic enabled.

Point all three at kolla_httpd_version, which container-image-kolla-
ansible now renders from the SBOM's httpd key, falling back as before
to kolla_image_version (letsencrypt_tag for the webserver). Add
ironic_http_image and ironic_http_tag to the catalogue so the role
default is overridden. letsencrypt_webserver_tag keeps
kolla_letsencrypt_webserver_version up to 2025.2, gated on the same
release list as letsencrypt_webserver_image.

Every new reference has a default(), so this can land before or after
the container-images-kolla and container-image-kolla-ansible changes
that provide kolla_httpd_version. Until a kolla-ansible image carrying
it is released, the tags fall back as described, which is no worse
than today.

Assisted-by: Claude:claude-opus-5-5
Signed-off-by: Roger Luethi <luethi@osism.tech>
kolla 2026.1 adds prometheus-valkey-exporter and
prometheus-openstack-network-exporter, both enabled by default. The
catalogue has no entries for them, so kolla-ansible's role defaults
apply and both use prometheus_tag. On the latest track that is the
series tag, which exists. On OSISM 11.0.0 both request
3.5.5.20261008, Prometheus's own version, which does not exist for
either image; the build pushed 1.82.0.20261008 and 0.2.0.20261008.
Every deployment with Prometheus fails at the monitoring stage.

Add image and tag entries for both, mapped like the other exporters:
kolla_prometheus_<name>_version from container-image-kolla-ansible,
falling back to prometheus_tag. Until a kolla-ansible image providing
the variables is released, the fallback keeps today's behaviour.

Assisted-by: Claude:claude-opus-5-5
Signed-off-by: Roger Luethi <luethi@osism.tech>
hacluster_corosync_tag followed hacluster_tag, like the pacemaker and
pacemaker-remote tags. On a release that cannot be right for all three:
the OSISM 11.0.0 build pushed hacluster-corosync:3.1.7.20261008 but
hacluster-pacemaker(-remote):2.1.6.20261008. (All three currently fall
back to the series, 2026.1, because kolla_hacluster_version is never
defined; container-image-kolla-ansible fixes that separately.)

Take hacluster_corosync_tag from kolla_hacluster_corosync_version,
rendered by container-image-kolla-ansible from the SBOM's
hacluster_corosync key, falling back to hacluster_tag. The pacemaker
tags keep hacluster_tag, which will carry the pacemaker version. Until
a kolla-ansible image providing the variable is released, the fallback
keeps today's behaviour.

Assisted-by: Claude:claude-opus-5-5
Signed-off-by: Roger Luethi <luethi@osism.tech>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants