Remove helmify / kustomize, switch to helm-chart only.#71
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (38)
💤 Files with no reviewable changes (31)
✅ Files skipped from review due to trivial changes (2)
🚧 Files skipped from review as they are similar to previous changes (3)
📝 WalkthroughWalkthroughThis pull request migrates the deployment configuration from traditional Kubernetes manifests to a Helm chart-based approach. CRD definitions, RBAC, manager, and monitoring configurations are removed from Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~22 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
.github/workflows/container-registry-ghcr.yaml (1)
48-48: Remove unnecessary QEMU setup for single-platform amd64 build.This workflow builds only
linux/amd64and runs on an amd64 runner (large_runner_16core_64gb). QEMU is only needed for multi-platform or cross-architecture builds, not for native platform builds. Removing thesetup-qemu-action@v4step on line 48 will reduce unnecessary build time overhead.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/container-registry-ghcr.yaml at line 48, Remove the unnecessary QEMU setup step that uses "docker/setup-qemu-action@v4" from the workflow since the job targets only linux/amd64 and runs on an amd64 runner (large_runner_16core_64gb); delete the entire step block referencing docker/setup-qemu-action@v4 and verify no subsequent steps depend on QEMU before committing the change.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@Makefile.maker.yaml`:
- Line 10: The CRD generation path (crdOutputPath: charts/kvm-node-agent/crds)
and the install step path (install-crds using config/crd/*.yaml) are
inconsistent; update the install target so it reads CRDs from the generated
location or change crdOutputPath to match the installer. Locate the
crdOutputPath setting and the install-crds rule/target that references
config/crd/*.yaml and make them identical (e.g., point install-crds to
charts/kvm-node-agent/crds/*.yaml or set crdOutputPath to config/crd) so
generated CRDs are the ones applied.
---
Nitpick comments:
In @.github/workflows/container-registry-ghcr.yaml:
- Line 48: Remove the unnecessary QEMU setup step that uses
"docker/setup-qemu-action@v4" from the workflow since the job targets only
linux/amd64 and runs on an amd64 runner (large_runner_16core_64gb); delete the
entire step block referencing docker/setup-qemu-action@v4 and verify no
subsequent steps depend on QEMU before committing the change.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 8f5179a0-ebdc-4546-8eea-f6c8600f0e28
⛔ Files ignored due to path filters (1)
go.sumis excluded by!**/*.sum
📒 Files selected for processing (35)
.github/workflows/container-registry-ghcr.yaml.pre-commit-config.yamlMakefileMakefile.maker.yamlcharts/kvm-node-agent/crds/kvm.cloud.sap_migrations.yamlcharts/kvm-node-agent/crds/migration-crd.yamlcharts/kvm-node-agent/values.yamlconfig/crd/bases/kvm.cloud.sap_hypervisors.yamlconfig/crd/kustomization.yamlconfig/crd/kustomizeconfig.yamlconfig/default/kustomization.yamlconfig/default/manager_metrics_patch.yamlconfig/default/metrics_service.yamlconfig/manager/kustomization.yamlconfig/manager/manager.yamlconfig/manager/manager_node_selector_patch.yamlconfig/prometheus/kustomization.yamlconfig/prometheus/monitor.yamlconfig/rbac/hypervisor_editor_role.yamlconfig/rbac/hypervisor_viewer_role.yamlconfig/rbac/kustomization.yamlconfig/rbac/leader_election_role.yamlconfig/rbac/leader_election_role_binding.yamlconfig/rbac/metrics_auth_role.yamlconfig/rbac/metrics_auth_role_binding.yamlconfig/rbac/metrics_reader_role.yamlconfig/rbac/migration_editor_role.yamlconfig/rbac/migration_viewer_role.yamlconfig/rbac/role_binding.yamlconfig/rbac/service_account.yamlconfig/samples/kustomization.yamlconfig/samples/kvm_v1alpha1_hypervisor.yamlconfig/samples/kvm_v1alpha1_migration.yamlinternal/controller/suite_test.gointernal/evacuation/suite_test.go
💤 Files with no reviewable changes (29)
- config/samples/kustomization.yaml
- config/rbac/metrics_reader_role.yaml
- config/rbac/hypervisor_viewer_role.yaml
- config/manager/kustomization.yaml
- config/rbac/kustomization.yaml
- config/default/manager_metrics_patch.yaml
- config/samples/kvm_v1alpha1_hypervisor.yaml
- config/rbac/migration_viewer_role.yaml
- charts/kvm-node-agent/values.yaml
- config/rbac/leader_election_role.yaml
- config/rbac/leader_election_role_binding.yaml
- config/rbac/service_account.yaml
- config/rbac/metrics_auth_role.yaml
- config/crd/bases/kvm.cloud.sap_hypervisors.yaml
- charts/kvm-node-agent/crds/migration-crd.yaml
- config/rbac/migration_editor_role.yaml
- config/rbac/hypervisor_editor_role.yaml
- config/prometheus/kustomization.yaml
- config/prometheus/monitor.yaml
- config/crd/kustomizeconfig.yaml
- config/samples/kvm_v1alpha1_migration.yaml
- .pre-commit-config.yaml
- config/default/kustomization.yaml
- config/crd/kustomization.yaml
- config/manager/manager_node_selector_patch.yaml
- config/default/metrics_service.yaml
- config/rbac/metrics_auth_role_binding.yaml
- config/manager/manager.yaml
- config/rbac/role_binding.yaml
This PR removes the helmify step and removes kustomize as an option to render the manager/rbacs/crd. Helmify took a lot of work creating a helm-chart based on the boilerplate generated by kubebuilder. But ultimatively, it imposes too many constraints to the outcome of the helm-chart and makes it hard to implement custom renditions (like using .AppVersion as a image tag). Thus this PR is removing the kustomize files, leaving only the generated CRDs in the config directory (which don't need any templating) and symlinks it to the helm chart.
d60a800 to
23bf2b7
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.github/workflows/helm-oci-package-ghcr.yaml:
- Line 23: The workflow uses an invalid runner label "large_runner_16core_64gb"
which fails actionlint; update the runs-on entry (the runs-on key in the
helm-oci-package-ghcr workflow) to a CI-approved label such as "ubuntu-latest"
or, if you intend to use a self-hosted runner, change runs-on to the label-array
form (e.g. ["self-hosted","large_runner_16core_64gb"]) and ensure actionlint is
configured to accept your custom labels.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 8bd2e6a0-52f9-4a2c-87cd-172a417d594a
📒 Files selected for processing (6)
.github/workflows/checks.yaml.github/workflows/helm-oci-package-ghcr.yaml.github/workflows/publish-helm.ymlMakefileMakefile.maker.yamlconfig/rbac/role.yaml
💤 Files with no reviewable changes (2)
- .github/workflows/publish-helm.yml
- config/rbac/role.yaml
✅ Files skipped from review due to trivial changes (1)
- .github/workflows/checks.yaml
🚧 Files skipped from review as they are similar to previous changes (1)
- Makefile.maker.yaml
Merging this branch will decrease overall coverage
Coverage by fileChanged unit test files
|
This PR removes the helmify step and removes kustomize as an option to
render the manager/rbacs/crd.
Helmify took a lot of work creating a helm-chart based on the
boilerplate generated by kubebuilder. But ultimatively, it imposes too
many constraints to the outcome of the helm-chart and makes it hard to
implement custom renditions (like using .AppVersion as a image tag).
Thus this PR is removing the kustomize files, leaving only the generated
CRDs in the config directory (which don't need any templating) and
symlinks it to the helm chart.
Summary by CodeRabbit
Release Notes
New Features
Refactor
Removed Features