Skip to content

feat(openstack-cloud-controller-manager): add splitMode - #3063

Open
cwrau wants to merge 3 commits into
kubernetes:masterfrom
cwrau:feat/openstack-cloud-controller-manager/add-split-mode
Open

feat(openstack-cloud-controller-manager): add splitMode#3063
cwrau wants to merge 3 commits into
kubernetes:masterfrom
cwrau:feat/openstack-cloud-controller-manager/add-split-mode

Conversation

@cwrau

@cwrau cwrau commented Jan 23, 2026

Copy link
Copy Markdown
Contributor

What this PR does / why we need it:

This allows the user to deploy the controller-manager split between the
management cluster and the workload cluster.

That way the cluster is not dependent "on itself".

Special notes for reviewers:

The management mode only deploys the controller and the workload mode only
deploys the necessary RBAC roles and bindings.

Release note:

[openstack-cloud-controller-manager] Allow deploying the controller-manager split between management and workload clusters.

@k8s-ci-robot k8s-ci-robot added the release-note Denotes a PR that will be considered when it comes time to generate release notes. label Jan 23, 2026
@k8s-ci-robot

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign stephenfin for approval. For more information see the Code Review Process.

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

Details 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 requested review from dulek and kayrus January 23, 2026 13:37
@k8s-ci-robot

Copy link
Copy Markdown
Contributor

Hi @cwrau. Thanks for your PR.

I'm waiting for a kubernetes 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.

Details

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.

@k8s-ci-robot k8s-ci-robot added needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Jan 23, 2026
@cwrau
cwrau force-pushed the feat/openstack-cloud-controller-manager/add-split-mode branch from caf6e28 to 5634d94 Compare January 23, 2026 13:41
@cwrau

cwrau commented Jan 23, 2026

Copy link
Copy Markdown
Contributor Author

This has shown itself to be useful when theres trouble with the nodes resulting in dozens or hundreds of NotReady nodes which in turn break other stuff like cilium, as their pods get scheduled there and will never run.

And the ccm can't clean those nodes up, as it doesn't run yet.

With this one can run the ccm outside the cluster which makes sure that it always works™️

@cwrau
cwrau marked this pull request as draft January 23, 2026 13:45
@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jan 23, 2026
@cwrau
cwrau force-pushed the feat/openstack-cloud-controller-manager/add-split-mode branch from 5634d94 to d39bec4 Compare January 23, 2026 15:36
@cwrau
cwrau marked this pull request as ready for review January 23, 2026 15:37
@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 Jan 23, 2026
@cwrau
cwrau force-pushed the feat/openstack-cloud-controller-manager/add-split-mode branch 4 times, most recently from 3bec71b to a67f3fb Compare January 23, 2026 16:52
@cwrau

cwrau commented Jan 23, 2026

Copy link
Copy Markdown
Contributor Author

Ok, I thought I had to bump the chart version as I had to for #3067, but that also didn't help and I don't know how I would fix that dependency issue

@cwrau

cwrau commented Mar 20, 2026

Copy link
Copy Markdown
Contributor Author

Hello, is there something I can do to get this merged?

@cwrau
cwrau force-pushed the feat/openstack-cloud-controller-manager/add-split-mode branch from a67f3fb to fbd26d6 Compare April 21, 2026 19:24
@cwrau

cwrau commented Apr 21, 2026

Copy link
Copy Markdown
Contributor Author

@dulek / @Kayruz

Hello, not to be annoying, but is there something I can do to help getting this merged? 🙏

@k8s-triage-robot

Copy link
Copy Markdown

The Kubernetes project currently lacks enough contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle stale
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

@kubernetes-prow kubernetes-prow Bot added lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jul 20, 2026
@kayrus

kayrus commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Hi @cwrau. Thanks for the PR. Please remove the ZIP file from the PR and fix lint issues.

@cwrau
cwrau force-pushed the feat/openstack-cloud-controller-manager/add-split-mode branch from fbd26d6 to 5bf967d Compare July 21, 2026 07:59
@kubernetes-prow

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign zetaab for approval. For more information see the Code Review Process.

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

Details 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

@cwrau

cwrau commented Jul 21, 2026

Copy link
Copy Markdown
Contributor Author

Hi @cwrau. Thanks for the PR. Please remove the ZIP file from the PR

Oh, I assuemed the zip was wanted, as there is no .gitignore.

and fix lint issues.

There aren't linting issues, the linter doesn't run because it fails building the dependencies, it seems CI must be adjusted? In our helm charts repo we set CT_CHARTS_REPOS to the repos so ct can download them itself:

      - name: Extract helm repos
        id: helm-repos
        run: |
          [[ "$RUNNER_DEBUG" == 1 ]] && set -x
          (
            echo -n "repos="
            yq -r '.dependencies[] | .repository' "charts/$CHART/Chart.yaml" | sort -u | grep https:// | awk '{printf (NR>1 ? "," : "") NR "=" $1}'
            echo
          ) | tee -a "$GITHUB_OUTPUT"
...
      - name: Lint chart
        env:
          CT_CHART_REPOS: ${{ steps.helm-repos.outputs.repos }}
          CT_CHARTS: charts/${{ matrix.chart }}
        run: |
          [[ "$RUNNER_DEBUG" == 1 ]] && set -x
          if ! [[ -f "charts/$CHART/values.yaml" ]]; then
            echo "No values.yaml found for $CHART, skipping 'ct lint'" >&2
            helm lint "charts/$CHART"
          else
            ct lint --check-version-increment=false
          fi

@cwrau
cwrau force-pushed the feat/openstack-cloud-controller-manager/add-split-mode branch from 5bf967d to f36a33f Compare July 21, 2026 08:11
Comment thread charts/openstack-cloud-controller-manager/Chart.lock Outdated
@cwrau
cwrau force-pushed the feat/openstack-cloud-controller-manager/add-split-mode branch from c782986 to 1645d34 Compare July 27, 2026 07:37
@kayrus

kayrus commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

@cwrau please bump the chart version

@cwrau

cwrau commented Jul 28, 2026

Copy link
Copy Markdown
Contributor Author

@cwrau please bump the chart version

Done 👌

@kayrus

kayrus commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

/ok-to-test

@kubernetes-prow kubernetes-prow Bot 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 Jul 28, 2026
Comment thread charts/openstack-cloud-controller-manager/templates/controller.yaml Outdated
cwrau added 3 commits July 30, 2026 10:18
This allows the user to deploy the controller-manager split between the
management cluster and the workload cluster.

Signed-off-by: Chris Werner Rau <cwrau@cwrau.info>
Signed-off-by: Chris Werner Rau <cwrau@cwrau.info>
Signed-off-by: Chris Werner Rau <cwrau@cwrau.info>
@cwrau
cwrau force-pushed the feat/openstack-cloud-controller-manager/add-split-mode branch from bcc6666 to 1718586 Compare July 30, 2026 08:18
@cwrau

cwrau commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

The tests seem to fail because of a quota error?

@kayrus

kayrus commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

/test pull-cloud-provider-openstack-test

@cwrau no, it seems there are some race conditions.

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

Labels

cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants