Skip to content

Conversation

@nikParasyr
Copy link
Contributor

@nikParasyr nikParasyr commented Nov 6, 2025

What this PR does / why we need it:
Add support for controller-runtime PriorityQueue.
To do this:

  • introduce feature flags on the provider
  • create new feature flag that when set enables the controller-runtime PriorityQueue
  • document feature flags and how to enable them
  • document the PriorityQueue feature flag with upstream links

Which issue(s) this PR fixes:
Fixes #2820

Special notes for your reviewer:

  1. Opted to add this behind a feature flag. Reasoning is:
    a. keeping it similar with other providers
    b. makes it easier to remove at a later stage as based on upstream priorityQueue will become default
  2. Feature flag implementation is heavily based on the implementation of cluster-api
  3. I'm struggling a bit to see how i can unit test this, i have run titl environments to see if the feature flag mechanism works and it does

TODOs:

  • squashed commits
  • if necessary:
    • includes documentation
    • adds unit tests

/hold

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. labels Nov 6, 2025
@netlify
Copy link

netlify bot commented Nov 6, 2025

Deploy Preview for kubernetes-sigs-cluster-api-openstack ready!

Name Link
🔨 Latest commit 2d8d6f2
🔍 Latest deploy log https://app.netlify.com/projects/kubernetes-sigs-cluster-api-openstack/deploys/6912fb085162420008ac6e0a
😎 Deploy Preview https://deploy-preview-2823--kubernetes-sigs-cluster-api-openstack.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Nov 6, 2025
@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Nov 6, 2025
@k8s-ci-robot
Copy link
Contributor

Hi @nikParasyr. Thanks for your PR.

I'm waiting for a github.com member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

- "--v=2"
- "--diagnostics-address=127.0.0.1:8080"
- "--insecure-diagnostics=true"
- "--feature-gates=PriorityQueue=${EXP_CAPO_PRIORITY_QUEUE:=false}"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Some notes about this:

  • This will work fine when capo is installed through clusterctl (as they use envsub) but if someone uses the release manifests to directly install from it wont work for them
  • I opted for EXP_CAPO_PRIORITY_QUEUE to differentiate from capi EXP_PRIORITY_QUEUE, not sure if this is needed

@nikParasyr nikParasyr marked this pull request as ready for review November 7, 2025 07:25
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 7, 2025
@lentzi90
Copy link
Contributor

lentzi90 commented Nov 7, 2025

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Nov 7, 2025
Copy link
Contributor

@bnallapeta bnallapeta left a comment

Choose a reason for hiding this comment

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

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Nov 10, 2025
Copy link
Contributor

@lentzi90 lentzi90 left a comment

Choose a reason for hiding this comment

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

Code looks good. A couple of comments on the docs.

Add support for controller-runtime PriorityQueue.
To do this:
- introduce feature flags on the provider
- create new feature flag that when set enables
  the controller-runtime PriorityQueue
- document feature flags and how to enable them
- document the PriorityQueue feature flag with
  upstream links
@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Nov 11, 2025
Copy link
Contributor

@lentzi90 lentzi90 left a comment

Choose a reason for hiding this comment

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

Thank you for this!
/approve
/hold cancel

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Nov 11, 2025
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bnallapeta, lentzi90

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 11, 2025
@nikParasyr
Copy link
Contributor Author

I think this misses the /lgtm label
( was removed with my push )

@lentzi90
Copy link
Contributor

Yes, lgtm is always removed when there are changes.
@bnallapeta could you please re-lgtm if the docs changes look ok to you?

@bnallapeta
Copy link
Contributor

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Nov 12, 2025
@k8s-ci-robot k8s-ci-robot merged commit 24fee53 into kubernetes-sigs:main Nov 12, 2025
12 checks passed
@github-project-automation github-project-automation bot moved this from Inbox to Done in CAPO Roadmap Nov 12, 2025
@nikParasyr nikParasyr deleted the issue-2820 branch November 12, 2025 08:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Enable priority queue

4 participants