Skip to content

ci(magnum): deprecate heat and use magnum-cluster-api driver#3765

Open
winiciusallan wants to merge 1 commit into
gophercloud:mainfrom
winiciusallan:change-magnum-ci
Open

ci(magnum): deprecate heat and use magnum-cluster-api driver#3765
winiciusallan wants to merge 1 commit into
gophercloud:mainfrom
winiciusallan:change-magnum-ci

Conversation

@winiciusallan
Copy link
Copy Markdown
Contributor

As Magnum moved towards removing the Heat driver to use out-of-tree drivers instead[1], we cannot rely on it anymore in our CI. This pull request changes the functional-containerinfra job to use the vexxhost/magnum-cluster-api[2] plugin that's also being used upstream[3].

The Vexxhost's driver spins up a Kubernetes cluster using Kind, installs all the dependencies, such as: kubectl, clusterctl, and CAPI, with OpenStack as the infrastructure provider (so we also have ORC here 🤩 ).

Let's see how it goes.

[1] https://review.opendev.org/c/openstack/magnum/+/985348
[2] https://github.com/vexxhost/magnum-cluster-api
[3] https://review.opendev.org/c/openstack/magnum-tempest-plugin/+/987846

@github-actions github-actions Bot added edit:actions This PR updates GitHub Actions code edit:testinfra This PR updates testing infrastructure code semver:patch No API change backport-v2 This PR will be backported to v2 labels May 23, 2026
Comment thread script/stackenv
if [ -z "$_MAGNUM_IMAGE_ID" ]; then
_MAGNUM_IMAGE_ID=$(openstack image list --format value -c Name -c ID | grep -i atomic | cut -d ' ' -f 1)
fi
_MAGNUM_IMAGE_ID=$(openstack image list --format value -c Name -c ID | grep ubuntu | cut -d ' ' -f 1)
Copy link
Copy Markdown
Contributor Author

@winiciusallan winiciusallan May 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wondering whether we want to be able to choose the Kubernetes version to test against. We could add it to this filter instead of just grep'ing for "ubuntu".

This works because devstack does not create any ubuntu image, so there is no conflict.

But the K8s version tells more about the underlying driver support, and CAPI compatibility

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's a fair question. I think there's no need to do it here and we can leave that to future work.

@coveralls
Copy link
Copy Markdown

Coverage Status

coverage: 64.008%. remained the same — winiciusallan:change-magnum-ci into gophercloud:main

@winiciusallan
Copy link
Copy Markdown
Contributor Author

winiciusallan commented May 23, 2026

The error on master branch has an upstream bug report on Launchpad. It looks like a consequence of migrating to use the openstacksdk.

https://bugs.launchpad.net/magnum/+bug/2153128

@winiciusallan
Copy link
Copy Markdown
Contributor Author

The error on master branch has an upstream bug report on Launchpad. It looks like a consequence of migrating to use the openstacksdk.

https://bugs.launchpad.net/magnum/+bug/2153128

As a follow-up, I've proposed a patch for this issue. Let's see if we can get it merged.

https://review.opendev.org/c/openstack/magnum/+/990397

@winiciusallan
Copy link
Copy Markdown
Contributor Author

The error on Epoxy is because this release has been using the --no-build-isolation flag when installing dependencies, which forces build packages (as it is used by magnum-cluster-api to build things in Rust) to be installed in advance. I'm trying to find a workaround to this; suggestions are appreciated.

I filed an issue in vexxhost/magnum-cluster-api vexxhost/magnum-cluster-api#1045

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

Labels

backport-v2 This PR will be backported to v2 edit:actions This PR updates GitHub Actions code edit:testinfra This PR updates testing infrastructure code semver:patch No API change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants