Skip to content

OCPBUGS-47508: Set --max-concurrent-reconciles=10 for AWS machine controller#1521

Open
RadekManak wants to merge 1 commit into
openshift:mainfrom
RadekManak:OCPBUGS-47508
Open

OCPBUGS-47508: Set --max-concurrent-reconciles=10 for AWS machine controller#1521
RadekManak wants to merge 1 commit into
openshift:mainfrom
RadekManak:OCPBUGS-47508

Conversation

@RadekManak

@RadekManak RadekManak commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Depends on openshift/machine-api-provider-aws#195

/hold until above is merged

Summary

Add AWSPlatformType to the existing platform switch that passes --max-concurrent-reconciles=10 to the machine-controller (already used for Azure and GCP).

Summary by CodeRabbit

  • Bug Fixes

    • Updated AWS deployments to apply the intended machine-controller concurrency argument, aligning AWS behavior with Azure and GCP.
  • Tests

    • Added a new test that verifies the max-concurrent-reconciles argument is present for AWS/Azure/GCP and omitted for BareMetal and vSphere.

@openshift-ci-robot openshift-ci-robot added jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Jul 17, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@RadekManak: This pull request references Jira Issue OCPBUGS-47508, which is invalid:

  • expected the bug to target the "5.0.0" version, but no target version was set

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

The bug has been updated to refer to the pull request using the external bug tracker.

Details

In response to this:

Depends on openshift/machine-api-provider-aws#195

/hold until above is merged

Summary

  • Add AWSPlatformType to the existing platform switch that passes --max-concurrent-reconciles=10 to the machine-controller (already used for Azure and GCP).
  • Speeds address population during large AWS scale-ups so Cluster Machine Approver can authorize kubelet CSRs sooner (OCPBUGS-47508).

Do not roll this out against an older MAPA image that lacks the flag; unknown args crash the AWS machine-controller.

Test plan

  • Unit: TestNewContainersMaxConcurrentReconciles (AWS/Azure/GCP get the arg; BareMetal/vSphere do not)
  • CI
  • Large scale-up validation after MAPA + this PR (+ CMA prune PR) land

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci Bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 17, 2026
@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

Walkthrough

AWS is added to the platform-specific machine-controller argument branch that enables --max-concurrent-reconciles=10. A new test verifies the flag for AWS, Azure, and GCP, and its absence for BareMetal and vSphere.

Changes

Machine-controller concurrency configuration

Layer / File(s) Summary
Platform concurrency arguments and validation
pkg/operator/sync.go, pkg/operator/sync_test.go
AWS now receives the max-concurrent-reconciles argument alongside Azure and GCP; tests verify the expected flag behavior across supported platform types.

Estimated code review effort: 2 (Simple) | ~5 minutes

Suggested reviewers: mdbooth, theobarberbany

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed The added test uses static, descriptive names only; no Ginkgo titles or dynamic values appear in the new test cases.
Test Structure And Quality ✅ Passed PASS: The added table-driven unit test is single-purpose, uses no cluster resources or waits, and matches existing Gomega style; Ginkgo-specific concerns don’t apply.
Microshift Test Compatibility ✅ Passed The added test is a plain Go unit test (testing.T/t.Run), not a Ginkgo e2e test, and it doesn't use MicroShift-unsupported APIs or features.
Single Node Openshift (Sno) Test Compatibility ✅ Passed The added test is a standard Go unit test (TestNewContainersMaxConcurrentReconciles) using testing/Gomega, not a Ginkgo e2e test, so no SNO guard is needed.
Topology-Aware Scheduling Compatibility ✅ Passed Only a platform-specific container arg and matching unit test changed; no replicas, affinity, nodeSelectors, tolerations, or topology-spread constraints were added.
Ote Binary Stdout Contract ✅ Passed The PR only changes container args and adds a unit test; no main/init/TestMain/suite-level stdout writes were added in touched code.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No Ginkgo e2e tests were added; the new test is a unit test and has no IPv4 literals, URL construction, or external connectivity.
No-Weak-Crypto ✅ Passed The diff only extends a platform switch and adds a unit test; no weak algorithms, custom crypto, or secret comparisons were introduced.
Container-Privileges ✅ Passed PASS: The PR only changes machine-controller args and tests; it adds no privileged, hostPID/Network/IPC, root, or CAP_SYS_ADMIN settings.
No-Sensitive-Data-In-Logs ✅ Passed No new logging of passwords, tokens, PII, or host/customer data appears in the changed code; the patch only adds a non-sensitive flag and a unit test.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: enabling --max-concurrent-reconciles=10 for the AWS machine controller.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@openshift-ci
openshift-ci Bot requested review from mdbooth and theobarberbany July 17, 2026 14:29
@openshift-ci

openshift-ci Bot commented Jul 17, 2026

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 theobarberbany 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

Align AWS with Azure and GCP so the machine-controller can process
reconcile queues with higher concurrency during large create waves.
@openshift-ci-robot openshift-ci-robot added jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. and removed jira/invalid-bug Indicates that a referenced Jira bug is invalid for the branch this PR is targeting. labels Jul 17, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@RadekManak: This pull request references Jira Issue OCPBUGS-47508, which is valid.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target version (5.0.0) matches configured target version for branch (5.0.0)
  • bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact:
/cc @sunzhaohua2

Details

In response to this:

Depends on openshift/machine-api-provider-aws#195

/hold until above is merged

Summary

Add AWSPlatformType to the existing platform switch that passes --max-concurrent-reconciles=10 to the machine-controller (already used for Azure and GCP).

Summary by CodeRabbit

  • Bug Fixes

  • Updated AWS deployments to apply the intended machine-controller concurrency argument, aligning AWS behavior with Azure and GCP.

  • Tests

  • Added a new test that verifies the max-concurrent-reconciles argument is present for AWS/Azure/GCP and omitted for BareMetal and vSphere.

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci

openshift-ci Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

@openshift-ci-robot: GitHub didn't allow me to request PR reviews from the following users: sunzhaohua2.

Note that only openshift members and repo collaborators can review this PR, and authors cannot review their own PRs.

Details

In response to this:

@RadekManak: This pull request references Jira Issue OCPBUGS-47508, which is valid.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target version (5.0.0) matches configured target version for branch (5.0.0)
  • bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, POST)

Requesting review from QA contact:
/cc @sunzhaohua2

In response to this:

Depends on openshift/machine-api-provider-aws#195

/hold until above is merged

Summary

Add AWSPlatformType to the existing platform switch that passes --max-concurrent-reconciles=10 to the machine-controller (already used for Azure and GCP).

Summary by CodeRabbit

  • Bug Fixes

  • Updated AWS deployments to apply the intended machine-controller concurrency argument, aligning AWS behavior with Azure and GCP.

  • Tests

  • Added a new test that verifies the max-concurrent-reconciles argument is present for AWS/Azure/GCP and omitted for BareMetal and vSphere.

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 openshift-eng/jira-lifecycle-plugin repository.

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.

@openshift-ci

openshift-ci Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

@RadekManak: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-metal-ipi-ovn-ipv6 4c5eff1 link true /test e2e-metal-ipi-ovn-ipv6
ci/prow/e2e-aws-ovn-upgrade 4c5eff1 link true /test e2e-aws-ovn-upgrade
ci/prow/e2e-metal-ipi-virtualmedia 4c5eff1 link true /test e2e-metal-ipi-virtualmedia
ci/prow/e2e-aws-operator 4c5eff1 link true /test e2e-aws-operator
ci/prow/e2e-metal-ipi 4c5eff1 link true /test e2e-metal-ipi
ci/prow/e2e-aws-ovn 4c5eff1 link true /test e2e-aws-ovn

Full PR test history. Your PR dashboard.

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. I understand the commands that are listed here.

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

Labels

do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants