Skip to content

Conversation

@chrischdi
Copy link
Member

@chrischdi chrischdi commented Nov 18, 2025

What type of PR is this?

/kind cleanup

What this PR does / why we need it:

Supersedes:

Updates Cluster API to v1.11.3.

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged)

Fixes #5658
Fixes #5602
Closes #5661

Required Issues/PRs to get this green

Special notes for your reviewer:

TODOs:

  • squashed commits
  • includes documentation
  • adds unit tests
  • cherry-pick candidate

Release note:

Bump CAPI to v1.11.3

@k8s-ci-robot k8s-ci-robot added release-note Denotes a PR that will be considered when it comes time to generate release notes. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. labels Nov 18, 2025
@k8s-ci-robot
Copy link
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 mboersma for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found 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 cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Nov 18, 2025
@k8s-ci-robot k8s-ci-robot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Nov 18, 2025
@chrischdi chrischdi force-pushed the pr-capi-rebase-one-eleven-test branch from 845f0fd to f4b28a7 Compare November 18, 2025 12:41
@codecov
Copy link

codecov bot commented Nov 18, 2025

Codecov Report

❌ Patch coverage is 44.95677% with 191 lines in your changes missing coverage. Please review.
✅ Project coverage is 44.46%. Comparing base (2130510) to head (a906a0f).
⚠️ Report is 2 commits behind head on main.

Files with missing lines Patch % Lines
azure/scope/managedcontrolplane.go 11.11% 22 Missing and 2 partials ⚠️
azure/scope/machinepoolmachine.go 16.66% 20 Missing ⚠️
azure/scope/machine.go 21.73% 18 Missing ⚠️
util/azure/azure.go 14.28% 18 Missing ⚠️
azure/scope/machinepool.go 46.66% 16 Missing ⚠️
azure/scope/cluster.go 25.00% 15 Missing ⚠️
azure/scope/managedmachinepool.go 21.05% 15 Missing ⚠️
controllers/helpers.go 62.96% 7 Missing and 3 partials ⚠️
exp/controllers/azuremachinepool_controller.go 22.22% 7 Missing ⚠️
api/v1beta1/azuremanagedcontrolplane_webhook.go 42.85% 2 Missing and 2 partials ⚠️
... and 23 more
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5979      +/-   ##
==========================================
- Coverage   44.54%   44.46%   -0.09%     
==========================================
  Files         279      279              
  Lines       25140    25110      -30     
==========================================
- Hits        11199    11164      -35     
- Misses      13128    13136       +8     
+ Partials      813      810       -3     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@chrischdi
Copy link
Member Author

Unsure about the occurring errors.

The aks errors show:

The client '765e6bfb-2fd8-4c1e-8ee4-79df6a972ce7' with object id '02ef41cf-1158-4336-9ca6-5d4183184f39'
  does not have authorization to perform action 'Microsoft.Resources/subscriptions/resourceGroups/read'
  over scope '/subscriptions/46678f10-4bbb-447e-98e8-d2829589f2d8/resourceGroups/<resource-group-name>'

@chrischdi
Copy link
Member Author

/test pull-cluster-api-provider-azure-conformance-custom-builds

Unrelated error:

[2025-11-21 13:20:38] 	[ERROR ImagePull]: failed to pull image registry.k8s.io/kube-apiserver:v1.35.0-beta.0.6_5bcb7599736327: failed to pull image registry.k8s.io/kube-apiserver:v1.35.0-beta.0.6_5bcb7599736327: rpc error: code = NotFound desc = failed to pull and unpack image "registry.k8s.io/kube-apiserver:v1.35.0-beta.0.6_5bcb7599736327": failed to resolve reference "registry.k8s.io/kube-apiserver:v1.35.0-beta.0.6_5bcb7599736327": registry.k8s.io/kube-apiserver:v1.35.0-beta.0.6_5bcb7599736327: not found

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 21, 2025
@chrischdi chrischdi force-pushed the pr-capi-rebase-one-eleven-test branch from 02667fa to 13ea58e Compare November 21, 2025 16:12
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 21, 2025
@chrischdi chrischdi force-pushed the pr-capi-rebase-one-eleven-test branch 2 times, most recently from e092a2c to 971dd90 Compare November 21, 2025 16:38
@damdo
Copy link
Member

damdo commented Nov 21, 2025

cc. @mboersma @jackfrancis @willie-yao

@chrischdi
Copy link
Member Author

/retest

@damdo damdo mentioned this pull request Nov 21, 2025
4 tasks
@damdo
Copy link
Member

damdo commented Nov 24, 2025

/retest

@chrischdi
Copy link
Member Author

/test pull-cluster-api-provider-azure-conformance-custom-builds

Unrelated error (from cloud-init):

[2025-11-24 09:53:27] [ERROR ImagePull]: failed to pull image registry.k8s.io/kube-proxy:v1.35.0-beta.0.6_5bcb7599736327: failed to pull image registry.k8s.io/kube-proxy:v1.35.0-beta.0.6_5bcb7599736327: rpc error: code = NotFound desc = failed to pull and unpack image "registry.k8s.io/kube-proxy:v1.35.0-beta.0.6_5bcb7599736327": failed to resolve reference "registry.k8s.io/kube-proxy:v1.35.0-beta.0.6_5bcb7599736327": registry.k8s.io/kube-proxy:v1.35.0-beta.0.6_5bcb7599736327: not found

@chrischdi
Copy link
Member Author

/retest

@chrischdi chrischdi force-pushed the pr-capi-rebase-one-eleven-test branch from d2ddf10 to fc92d0d Compare November 24, 2025 15:14
@chrischdi
Copy link
Member Author

/retest

Gh networking issues

@chrischdi chrischdi force-pushed the pr-capi-rebase-one-eleven-test branch from f665fd8 to 4af053f Compare November 28, 2025 11:27
@chrischdi
Copy link
Member Author

/retest

Flake

@chrischdi chrischdi force-pushed the pr-capi-rebase-one-eleven-test branch 2 times, most recently from 4d8a69f to e8aa667 Compare November 28, 2025 15:41
@chrischdi
Copy link
Member Author

/retest

@chrischdi chrischdi changed the title [WIP] Bump CAPI to v1.11.2 Bump CAPI to v1.11.2 Dec 1, 2025
@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 Dec 1, 2025
@chrischdi chrischdi changed the title Bump CAPI to v1.11.2 Bump CAPI to v1.11.3 Dec 1, 2025
@chrischdi
Copy link
Member Author

/hold

To wait for kubernetes-sigs/cluster-api#13060

@mboersma , @willie-yao , @jackfrancis

It would be awesome to get some opinion on this PR and also on kubernetes-sigs/cluster-api#13060 :-)

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Dec 1, 2025
@chrischdi
Copy link
Member Author

cc @nojnhuh

@chrischdi chrischdi force-pushed the pr-capi-rebase-one-eleven-test branch from e8aa667 to 2a090e4 Compare December 2, 2025 07:34
@chrischdi
Copy link
Member Author

/retest

Unrelated http request ci flake to third party data.

@chrischdi
Copy link
Member Author

/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 Dec 2, 2025
@damdo
Copy link
Member

damdo commented Dec 2, 2025

/assign @mboersma @jackfrancis @willie-yao @nojnhuh

}
}
return nil, nil
return utilexp.GetOwnerMachinePool(ctx, c, obj)
Copy link
Contributor

Choose a reason for hiding this comment

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

👍🏻

}
}

func TestClusterPauseChangeAndInfrastructureReady(t *testing.T) {
Copy link
Contributor

Choose a reason for hiding this comment

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

Nice to remove these helpers and their tests, this PR almost doesn't add any lines of code. 😄


```yaml
core: "cluster-api:v1.10.7"
core: "cluster-api:v1.11.2"
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
core: "cluster-api:v1.11.2"
core: "cluster-api:v1.11.3"

echo "$${LINE_SEPARATOR}"
CI_VERSION=${CI_VERSION}
# Note: We assume if kubectl has the right version, everything else has as well
Copy link
Contributor

Choose a reason for hiding this comment

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

This seems like a reasonable early exit. Was this change from upstream? Just curious.

path: /tmp/oot-cred-provider.sh
permissions: "0744"
- content: |
- content: |2
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
- content: |2
- content: |

Typo

loadBehavior: mustLoad
- name: registry.k8s.io/cluster-api/cluster-api-controller:v1.10.7
# - name: registry.k8s.io/cluster-api/cluster-api-controller:v1.11.3 # Bumped to nightly release-1.11 to
- name: gcr.io/k8s-staging-cluster-api/cluster-api-controller:v20251201-v1.11.3-29-g889987e8d
Copy link
Contributor

Choose a reason for hiding this comment

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

I'm fine with merging this and then bumping up to v1.11.4 when it's out.

"sigs.k8s.io/cluster-api/util/conditions"
bootstrapv1 "sigs.k8s.io/cluster-api/api/bootstrap/kubeadm/v1beta2"
clusterv1 "sigs.k8s.io/cluster-api/api/core/v1beta2"
deprecatedv1beta1conditions "sigs.k8s.io/cluster-api/util/conditions/deprecated/v1beta1"
Copy link
Contributor

Choose a reason for hiding this comment

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

These two packages are confusingly named.

count := 0
for _, machine := range machineList.Items {
if condition := conditions.Get(&machine, clusterv1.MachineReadyV1Beta2Condition); condition != nil && condition.Status == corev1.ConditionTrue {
if meta.IsStatusConditionTrue(machine.GetConditions(), clusterv1.MachineReadyCondition) {
Copy link
Contributor

Choose a reason for hiding this comment

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

👍🏻


# Deploy CAPI
timeout --foreground 300 bash -c "until curl --retry $(CURL_RETRIES) -sSL https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.10.7/cluster-api-components.yaml | $(ENVSUBST) | $(KUBECTL) apply -f -; do sleep 5; done"
timeout --foreground 300 bash -c "until curl --retry $(CURL_RETRIES) -sSL https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.11.2/cluster-api-components.yaml | $(ENVSUBST) | $(KUBECTL) apply -f -; do sleep 5; done"
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
timeout --foreground 300 bash -c "until curl --retry $(CURL_RETRIES) -sSL https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.11.2/cluster-api-components.yaml | $(ENVSUBST) | $(KUBECTL) apply -f -; do sleep 5; done"
timeout --foreground 300 bash -c "until curl --retry $(CURL_RETRIES) -sSL https://github.com/kubernetes-sigs/cluster-api/releases/download/v1.11.3/cluster-api-components.yaml | $(ENVSUBST) | $(KUBECTL) apply -f -; do sleep 5; done"

"preload_images_for_kind": True,
"kind_cluster_name": "capz",
"capi_version": "v1.10.7",
"capi_version": "v1.11.2",
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
"capi_version": "v1.11.2",
"capi_version": "v1.11.3",

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. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

Status: Todo

Development

Successfully merging this pull request may close these issues.

CAPI v1.11.0-alpha.0 has been released and is ready for testing Update controller-runtime to v.0.20.X

8 participants