forked from kubernetes-sigs/kubebuilder
-
Notifications
You must be signed in to change notification settings - Fork 0
[pull] master from kubernetes-sigs:master #313
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
pull
wants to merge
3,068
commits into
kubestone:master
Choose a base branch
from
kubernetes-sigs:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
🐛 (helm/v2alpha): allow manager values to be customized properly
📖 Update Readme - Remove Warning Note
🌱 Add k8s 1.34 version set for tooling - prow tests
This fixes the 404 error when fetching kubebuilder-tools by using Kubernetes 1.32.0 which is available in setup-envtest (release-0.20). The previous version v1.33.0 was too new and the corresponding kubebuilder-tools were not yet available. Co-authored-by: camilamacedo86 <[email protected]>
Updated KIND_K8S_VERSION from v1.32.0 to v1.34.0 and setup-envtest from release-0.20 to release-0.22 to align with the k8s.io/api v0.34.1 version used in testdata/project-v4/go.mod. This ensures the e2e tests use the same Kubernetes version as the scaffolded projects, maintaining consistency across the codebase. Co-authored-by: camilamacedo86 <[email protected]>
🌱 Add Agents.MD with an alias for .github/.instructions.md to support AI tools
The multiversion tutorial webhooks.md was only showing the v1 webhook implementation but not the v2 webhook implementation. This caused confusion as the v2 webhook has different validation logic to handle the structured CronSchedule type instead of a simple string. Updated webhooks.md to show both: - v1 webhook: handles conversion and validates string-based schedule - v2 webhook: validates structured CronSchedule by building cron expression from fields Co-authored-by: camilamacedo86 <[email protected]>
Co-authored-by: camilamacedo86 <[email protected]>
Co-authored-by: camilamacedo86 <[email protected]>
…hook-versions-again 📖 (multiversion-tutorial): Show v2 webhook implementation alongside v1
…cal-error 🌱 Update test environment to Kubernetes 1.34 to match scaffolded projects
…-support ✨ (External Plugins API) Add PluginChain field to external plugin API
📖 add e2e test to validate webhook conversion between versions in the tutorials
fix lint issue for expected dupl interface implementation
…it is never used (#5168) (docs): Update CONTRIBUTING.md guidance to remove gost emoji since it is never used
Assisted-by: Cursor
🌱 Increase unit test coverage
lint fix Modify Tests Minor-1 Minor fix Minor fix 1 Minor fix 2 Minor fix 3 Minor fix 4 Fix - 4 Comments - 1 Use testContext func Fix UT after rebase Add Tests for change-dir
- Add configurable webhook.port (default: 9443) and metrics.port (default: 8443) in values.yaml - Add comprehensive unit tests for port configuration with default and custom values
🐛 (helm/v2-alpha): ensure that certmanager option is exposed always
…r from environments inadvertently (#5329) Interrupting BeforeSuite could cause cert-manager deletion if tests were inadvertently run against non-isolated clusters. Fixed by tracking what the test installed (not what existed) and setting cleanup flag before installation to handle interruptions safely. Note: E2e tests should ONLY run on isolated environments, but this protects users who may accidentally run them on real clusters. Also refactored for clarity so users only need to update once. Before: Interruption → deletes cert-manager After: Interruption → safe, no deletion PS.: Fixed the approach accordinly for Prometheus code used in the docs. (it does not impact end users scaffolds) Assisted-by: Cursor
Fix cmd version to keep value used by vendor
Follow-up to #5329 - restore informative logging for setup/teardown steps.
🐛 (go/v4): Re-add e2e cert-manager logs
…ors (#5333) Default scaffold now works without GitHub Models permissions, preventing 403 Forbidden errors for most users. AI summaries remain available as an opt-in feature. **Changes:** - Remove `--use-gh-models` from default workflow scaffold - Add `--use-gh-models` flag to `init` and `edit` commands - Track `useGHModels` preference in PROJECT file (like helm/v2-alpha) - Add runtime warning when `alpha update` runs without GH Models enabled - Update `alpha generate` to preserve user's GH Models preference - Update the documentation accordingly - Add support to reenarate the projects with this option Assisted-by: Cursor
Add test coverage for plugins Generated-by: CLAUDE
Increase coverage for the CLI/API
…5345) (machinery): Fix error unwrapping in updateFileModel for missing files Use errors.Is instead of os.IsNotExist to properly detect missing files with wrapped errors, fixing IgnoreFile action for inserters. Assisted-by: Cursor
(test): Fix coverage config and exclude template directories
Adds test coverage for cmd_helpers.go, init.go, webhook.go, and external/helpers.go focusing on testable utility functions and filters. Generated-by: CLAUDE
🌱 Add unit tests for CLI and external plugin helpers
📖 (doc) Streamline quick start plugins and next steps sections
…mmand (#5349) When running `kubebuilder alpha generate` on projects using the deprecated helm.kubebuilder.io/v1-alpha plugin, automatically replace it with the current helm.kubebuilder.io/v2-alpha plugin, similar to existing go/v3 to go/v4 migration. This ensures users with projects using the deprecated helm/v1-alpha plugin can seamlessly regenerate their projects with the newer helm/v2-alpha plugin without manual intervention.
…m code Users can now add validation/defaulting/conversion webhooks incrementally without --force flag. Custom implementations are preserved via smart code injection. Removed --force workarounds from docs and sample generation. Assisted-by: CLAUDE
🐛 (go/v4): Support incremental webhook additions without losing custom code
chore: move rashmigottipati and Kavinjsir to emeritus
…cert-manager templating (#5294) Adds standard Helm naming support (nameOverride/fullnameOverride) to the Helm v2-alpha plugin and implements dynamic resource name truncation to ensure Kubernetes 63-character compliance while maintaining cross-resource reference consistency. Key changes: 1. Add nameOverride/fullnameOverride to values.yaml following Helm best practices 2. Simplify _helpers.tpl to match official Helm chart starter templates 3. Implement dynamic truncation: maxLen = 62 - len(suffix) (replaces hardcoded 45-char limit) 4. Fix cert-manager resource templating (Issuer names, issuerRef, annotations) 5. Add generic regex-based name substitution for all resource types 6. Update app.kubernetes.io/name label to use chart.name template This ensures all generated Helm charts: - Support custom naming via standard Helm values - Respect Kubernetes 63-character name limits - Maintain cross-resource reference consistency (Service ↔ Certificate ↔ Webhook ↔ Issuer) - Work correctly with cert-manager (no more stuck certificates or failed issuance) - Follow Helm and Kubernetes best practices Assisted-by: CLAUDE
Update values.yaml generation to use ## for section headers and documentation blocks, following Helm chart best practices.
✨ (helm/v2-alpha): Improve generated values.yaml comment conventions (single # vs ##)
All resources now include helm.sh/chart and app.kubernetes.io/instance following Helm best practices.
Manual resources not matching the standard layout now go to templates/extras/ with proper templating applied. Assisted-by: Cursor
✨ (helm/v2-alpha): add custom resources to templates/extras
Co-authored-by: Robin LIORET <[email protected]>
…yaml Chart.yaml contains user-managed version metadata and should never be overwritten, even with --force. The --force flag now regenerates all other preserved files (values.yaml, _helpers.tpl, .helmignore, test-chart.yml) while respecting Chart.yaml. Added integration tests to verify force flag behavior and Chart.yaml preservation.
✨ (helm/v2-alpha): improve _helpers.tpl readability
📖 (helm/v2-alpha): Update plugin docs to match actual chart output
🐛 (helm/v2-alpha): Fix force option to overwriten all files less Chart.yaml
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )