Skip to content

🐛Feat/hash clusterclass#223

Open
garloff wants to merge 3 commits intomainfrom
feat/hash-clusterclass
Open

🐛Feat/hash clusterclass#223
garloff wants to merge 3 commits intomainfrom
feat/hash-clusterclass

Conversation

@garloff
Copy link
Copy Markdown
Member

@garloff garloff commented May 6, 2026

I had screwed the release of openstack-scs2-1-34-v2, as it contained a clusterClass 1.33.
Now, pushing out a -v3 using the normal csctl create -m stable would not work, as csctl thinks we have the same release. It looks at all components and compares hashes to make that determination.
All components?
No, a collection of clusterClass populated by inflexible attributes does not stop resisting being ignored ...

csctl did not hash the most important thing ...

garloff@dev2018(://):/casa/src/SCS/cluster-stacks [0]$ csctl create -m stable  --remote oci providers/openstack/scs2
path "providers/openstack/scs2": cluster stack hash: "w6do8apcvww9no0oihssqbyykwt1tdsajwxeba6iuq"
latest release found: "openstack-scs2-1-34-v2"
ClusterAddon Version unchanged: v2
NodeImage Version unchanged: v1
Error: failed to validate with latest release hash: no change in the cluster stack

SovereignCloudStack/cluster-stacks#265 (comment)

This patchset addresses this.
Needs review!
Possibly, CSO has similar logic that needs to change as well?

garloff@dev2018(://):/casa/src/SCS/cluster-stacks [0]$ ../csctl/csctl create -m stable --remote oci providers/openstack/scs2
path "providers/openstack/scs2": cluster stack hash: "w6do8apcvww9no0oihssqbyykwt1tdsajwxeba6iuq"
latest release found: "openstack-scs2-1-34-v2"
Bumped ClusterAddon Version: v3
NodeImage Version unchanged: v1
Initial ClusterClass Version: v1
Creating output in .release/openstack-scs2-1-34-v3
.tmp/cluster-class/Chart.yaml updating version from v1 to v3
path now: ".tmp/cluster-class"
No provider specific configuration in csctl.yaml. No need to call a plugin for provider "openstack"
Created .release/openstack-scs2-1-34-v3

garloff added 2 commits April 25, 2026 16:03
We do this because the mere existence of a
openstack-hosted-control-plane-1-34-v0-sha-0ewkztd tag in the registry
confused csctl and prevented us from releasing a new cluster stack.

So, we tolerate dashes in clusterstack names now by being more robust
in parsing, So, if we don't have '-v' at the right position in the
string spliited by '-', we look for a '-v' further to the right.
We then assume that the extra dashes belong to the name and process
accordingly.

The string parsing code is not very beautiful, but has been tested
successfully.

This fixes #220.

Signed-off-by: Kurt Garloff <kurt@garloff.de>
This is the main thing and it should be hashed, as changes there are
consequential.

Signed-off-by: Kurt Garloff <kurt@garloff.de>
@garloff garloff requested review from aniruddha2000 and jschoone May 6, 2026 15:06
@garloff garloff self-assigned this May 6, 2026
@garloff garloff added bug Something isn't working Container Issues or pull requests relevant for Team 2: Container Infra and Tooling labels May 6, 2026
@garloff garloff changed the title Feat/hash clusterclass 🐛Feat/hash clusterclass May 8, 2026
@garloff garloff requested review from janiskemper and schmidax May 8, 2026 11:12
@garloff
Copy link
Copy Markdown
Member Author

garloff commented May 8, 2026

This patch needs to be done against CSO as well, it seems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working Container Issues or pull requests relevant for Team 2: Container Infra and Tooling

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

1 participant