Skip to content

Conversation

@ahmad-ibra
Copy link
Member

@ahmad-ibra ahmad-ibra commented Nov 20, 2025

Summary by CodeRabbit

Release Notes

  • Documentation
    • Fixed a recurring typographical error across multiple documentation, configuration, and manifest files by correcting "Deployent" to "Deployment" in field descriptions. These corrections relate to deployment mode configuration settings and enhance terminology consistency and overall documentation clarity.

✏️ Tip: You can customize this high-level summary in your review settings.

Signed-off-by: Ahmad Ibrahim <ahmad.ibrahim@spectrocloud.com>
@coderabbitai
Copy link

coderabbitai bot commented Nov 20, 2025

Walkthrough

Corrects the typo "Deployent" to "Deployment" in documentation and field descriptions across API type definitions and CRD schema files. All changes are purely cosmetic documentation fixes with no functional or behavioral impact.

Changes

Cohort / File(s) Summary
API Type Definitions
fleetconfig-controller/api/v1alpha1/fleetconfig_types.go, fleetconfig-controller/api/v1beta1/spoke_types.go
Fixed typo in Klusterlet.Mode field comments: "Deployent mode" → "Deployment mode"
CRD Configurations
fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml, fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml, fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml
Fixed typo in mode field descriptions: "Deployent" → "Deployment" in CRD schemas and templates

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

This is a straightforward, repetitive typo correction across files. No logic changes, validation modifications, or functional behavioral impacts are present.

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title accurately and concisely describes the main change: fixing a typo ('Deployent' -> 'Deployment') across multiple CRD files and documentation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f31d112 and 7b01840.

📒 Files selected for processing (5)
  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go (1 hunks)
  • fleetconfig-controller/api/v1beta1/spoke_types.go (1 hunks)
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml (1 hunks)
  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml (1 hunks)
  • fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml (1 hunks)
🧰 Additional context used
🧠 Learnings (11)
📚 Learning: 2025-09-22T19:16:34.109Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 59
File: fleetconfig-controller/internal/webhook/v1beta1/validation.go:103-121
Timestamp: 2025-09-22T19:16:34.109Z
Learning: In the open-cluster-management-io/lab repository's fleetconfig-controller v1beta1 API, the Klusterlet field in SpokeSpec is defined as a struct value (Klusterlet Klusterlet), not a pointer (*Klusterlet), so direct field access like Klusterlet.Annotations is safe without nil checks. The Klusterlet struct does not contain a Source field.

Applied to files:

  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go
  • fleetconfig-controller/api/v1beta1/spoke_types.go
  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml
📚 Learning: 2025-09-12T22:46:57.106Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 59
File: fleetconfig-controller/internal/controller/v1beta1/spoke_controller.go:328-331
Timestamp: 2025-09-12T22:46:57.106Z
Learning: In fleetconfig-controller/internal/controller/v1beta1/spoke_controller.go, nil klusterletValues returned by mergeKlusterletValues is a valid state, not an error condition. The downstream prepareKlusterletValuesFile function properly handles nil values by returning early, making additional nil checks unnecessary and potentially harmful to the intended flow.

Applied to files:

  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go
  • fleetconfig-controller/api/v1beta1/spoke_types.go
  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml
📚 Learning: 2025-09-12T22:46:57.106Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 59
File: fleetconfig-controller/internal/controller/v1beta1/spoke_controller.go:328-331
Timestamp: 2025-09-12T22:46:57.106Z
Learning: In fleetconfig-controller/internal/controller/v1beta1/spoke_controller.go, nil klusterletValues returned by mergeKlusterletValues is a valid state, not an error condition. The downstream prepareKlusterletValuesFile function properly handles nil values by returning early with (nil, nil, nil), making additional nil checks unnecessary and potentially harmful to the intended flow.

Applied to files:

  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go
  • fleetconfig-controller/api/v1beta1/spoke_types.go
  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml
📚 Learning: 2025-09-12T22:46:57.106Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 59
File: fleetconfig-controller/internal/controller/v1beta1/spoke_controller.go:328-331
Timestamp: 2025-09-12T22:46:57.106Z
Learning: In fleetconfig-controller/internal/controller/v1beta1/spoke_controller.go, nil klusterletValues returned by mergeKlusterletValues is a valid state, not an error condition. The downstream functions (prepareKlusterletValuesFile and hash.ComputeHash) properly handle nil values - prepareKlusterletValuesFile returns early with (nil, nil, nil) and hash.ComputeHash uses ZeroNil: true option to handle nil as zero values.

Applied to files:

  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go
  • fleetconfig-controller/api/v1beta1/spoke_types.go
📚 Learning: 2025-09-12T22:46:57.106Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 59
File: fleetconfig-controller/internal/controller/v1beta1/spoke_controller.go:328-331
Timestamp: 2025-09-12T22:46:57.106Z
Learning: In fleetconfig-controller/internal/controller/v1beta1/spoke_controller.go, nil klusterletValues returned by mergeKlusterletValues is a valid state, not an error condition. The downstream functions handle nil properly: prepareKlusterletValuesFile returns early with (nil, nil, nil) for nil values, and hash.ComputeHash uses ZeroNil: true option to treat nil as zero values when computing hashes.

Applied to files:

  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go
  • fleetconfig-controller/api/v1beta1/spoke_types.go
📚 Learning: 2025-09-22T18:42:03.404Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 59
File: fleetconfig-controller/PROJECT:28-31
Timestamp: 2025-09-22T18:42:03.404Z
Learning: In the open-cluster-management-io/lab repository's fleetconfig-controller, the PROJECT file defines multiple API resources with different webhook configurations: FleetConfig v1alpha1 has defaulting: true (requiring MutatingWebhookConfiguration), while Hub and Spoke v1beta1 resources have defaulting: false. MutatingWebhookConfiguration resources in the manifests serve the v1alpha1 FleetConfig, not the v1beta1 Hub/Spoke resources.

Applied to files:

  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go
  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml
📚 Learning: 2025-09-25T23:31:11.630Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 69
File: fleetconfig-controller/charts/fleetconfig-controller/templates/ocm/fcc-addon/addon-template.yaml:110-112
Timestamp: 2025-09-25T23:31:11.630Z
Learning: The fleetconfig-controller-manager spoke agent requires create/update/patch/delete permissions on CustomResourceDefinitions because `clusteradm upgrade klusterlet` operations need create/update permissions and cleanup operations require delete permissions for proper lifecycle management.

Applied to files:

  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go
  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml
📚 Learning: 2025-08-22T19:38:49.769Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 52
File: fleetconfig-controller/internal/controller/v1beta1/spoke_controller_test.go:49-56
Timestamp: 2025-08-22T19:38:49.769Z
Learning: In the fleetconfig-controller project, the SpokeSpec and HubSpec structs in v1beta1 contain only optional fields (like Foo *string with omitempty tags), so creating these resources without populating the Spec field does not cause validation failures in tests.

Applied to files:

  • fleetconfig-controller/api/v1alpha1/fleetconfig_types.go
  • fleetconfig-controller/api/v1beta1/spoke_types.go
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml
📚 Learning: 2025-08-22T17:55:52.159Z
Learnt from: TylerGillson
Repo: open-cluster-management-io/lab PR: 51
File: fleetconfig-controller/charts/fleetconfig-controller/README.md:155-155
Timestamp: 2025-08-22T17:55:52.159Z
Learning: In the open-cluster-management-io/lab repository, chart versioning for fleetconfig-controller is handled automatically via GitHub release workflows, not through manual version bumps in Chart.yaml during regular PRs.

Applied to files:

  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml
📚 Learning: 2025-09-22T19:26:11.020Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 59
File: fleetconfig-controller/test/data/fleetconfig-v1alpha1.yaml:47-53
Timestamp: 2025-09-22T19:26:11.020Z
Learning: In the open-cluster-management-io/lab repository's fleetconfig-controller tests, the kubeconfigKey is intentionally set to "value" in test fixtures (fleetconfig-v1alpha1.yaml, fleetconfig-values.yaml) because that's how the test harness provisions the kubeconfig secret during test setup. This differs from the chart default of "kubeconfig" but is correct for the test environment.

Applied to files:

  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml
📚 Learning: 2025-08-27T21:58:32.141Z
Learnt from: arturshadnik
Repo: open-cluster-management-io/lab PR: 58
File: fleetconfig-controller/charts/fleetconfig-controller/README.md:155-155
Timestamp: 2025-08-27T21:58:32.141Z
Learning: In the open-cluster-management-io/lab repository, the fleetconfig-controller follows a workflow where chart version bumps (in README.md and values.yaml) are included in PRs before the corresponding Docker image exists. The Docker image is built and pushed automatically via GitHub release workflows after the PR is merged and tagged, making the referenced version available.

Applied to files:

  • fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml
  • fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: e2e (fleetconfig-controller) / e2e
  • GitHub Check: e2e (fleetconfig-controller) / e2e
  • GitHub Check: test (fleetconfig-controller) / Run Helm Chart Tests
🔇 Additional comments (5)
fleetconfig-controller/charts/fleetconfig-controller/templates/crd-fleetconfig.open-cluster-management.io_fleetconfigs.yaml (1)

447-447: Typo fix approved.

The correction from "Deployent" to "Deployment" in the mode field description is accurate and improves documentation clarity. This is a cosmetic-only change with no functional impact on the CRD schema or validation.

fleetconfig-controller/charts/fleetconfig-controller/crds/fleetconfig.open-cluster-management.io_spokes.yaml (1)

429-429: Typo correction in CRD schema description: looks good. The description for the Klusterlet mode field has been corrected from "Deployent" to "Deployment". This is a purely cosmetic documentation fix with no impact on validation logic or runtime behavior.

fleetconfig-controller/api/v1beta1/spoke_types.go (1)

169-169: Typo correction in field documentation comment: looks good. The comment for the Klusterlet.Mode field has been corrected from "Deployent" to "Deployment". This is a purely cosmetic documentation fix that will be reflected in the generated CRD schema.

fleetconfig-controller/config/crds/fleetconfig.open-cluster-management.io_fleetconfigs.yaml (1)

444-450: CRD klusterlet mode description typo fix looks good

The description now correctly says "Deployment mode for klusterlet" while leaving the enum, default, and schema intact. No behavioral impact.

fleetconfig-controller/api/v1alpha1/fleetconfig_types.go (1)

536-540: Klusterlet.Mode comment typo fix is correct

The field documentation now uses the correct word "Deployment" and remains consistent with the CRD schema; no code or API behavior changes.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@openshift-ci
Copy link

openshift-ci bot commented Nov 21, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ahmad-ibra, TylerGillson

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

@openshift-merge-bot openshift-merge-bot bot merged commit 21c43b2 into open-cluster-management-io:main Nov 21, 2025
19 checks passed
@ahmad-ibra ahmad-ibra deleted the chore/fix-typo branch November 21, 2025 00:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants