ITADN
kubernetes-sigs/kubebuilder

版本发布 8

v4.10.1
? · 2025-11-16

### 🚀 How to Keep Your Scaffold Up to Date > _Automate updates with `kubebuilder edit --plugins="autoupdate.kubebuilder.io/v1-alpha"` or run them manually with [`kubebuilder alpha update`](https://kubebuilder.io/reference/commands/alpha_update). If your `PROJECT` file does **not** include `cliVersion`, you may need a one-time manual upgrade, and [`kubebuilder alpha generate`](https://kubebuilder.io/reference/commands/alpha_generate) can fully re-scaffold the project in one step. After that, updates work seamlessly._ ### 🐛 Bug fixes - **(go/v4;deploy-image/v1-alpha)**: Remove `omitempty` from nested struct JSON tags in API scaffolds. #5212 - **(go/v4)**: Fix flaky metrics e2e tests when webhooks are scaffolded. #5204 - **(go/v4)**: Fix Go module download failure caused by invalid filename and retract `v4.10.0`. (#5213, #5216) 🎉 **Thanks to all contributors!** ## What's Changed * 📖 (docs/UI): Book theme customizations by @vitorfloriano in https://github.com/kubernetes-sigs/kubebuilder/pull/5187 * 🌱 (fix): Cross platform tests flakes by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/5214 * 🐛 (go/v4;deploy-image/v1-alpha): Remove omitempty from nested struct JSON tags in API scaffolds by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/5212 * 🐛 (go/v4): Fix flaky metrics e2e tests when webhooks are scaffolded by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/5204 * 🐛 Fix Go module download failure caused by invalid filename by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/5213 * 🐛 fix(go.mod): Retract v4.10.0 by @vitorfloriano in https://github.com/kubernetes-sigs/kubebuilder/pull/5216 * 📖 (docs/helm): Add notes over template/crd directory by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/5218 * 🌱 Add comprehensive Go module validation with retract check by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/5217 **Full Changelog**: https://github.com/kubernetes-sigs/kubebuilder/compare/v4.10.0...v4.10.1

v4.7.1
? · 2025-07-24

## ✨ New Features - **(alpha update command):** Introduce `--force` flag to allow upgrades and create the commit even if conflicts are encountered. Also enables users to resolve conflicts before committing with the conflict markers. ([#4936](https://github.com/kubernetes-sigs/kubebuilder/pull/4936)) ## 🐛 Bug Fixes - **(alpha update command):** fix pre-require check when `--to-version` is informed ([#4937](https://github.com/kubernetes-sigs/kubebuilder/pull/4937)) - **(go/v4):** Skip webhook test injection if required files or markers are missing, avoiding unnecessary errors during scaffolding or updates by ensuring backwards compatibility with older project versions where e2e tests were not scaffolded due to missing markers. This fix also allows for flexibility in user customisations, as e2e tests are optional. ([#4950](https://github.com/kubernetes-sigs/kubebuilder/pull/4950)) - **(go/v4 e2e):** Clean up lingering CertManager `Lease` objects in `kube-system` namespace that are not removed by default ([#4949](https://github.com/kubernetes-sigs/kubebuilder/pull/4949)) **Thanks to all our contributors!** 🎉 ## What's Changed * 🐛 (CLI) fix alpha update command to version pre-require check by @mayuka-c in https://github.com/kubernetes-sigs/kubebuilder/pull/4937 * ✨ (alpha update command): add --force flag by @vitorfloriano in https://github.com/kubernetes-sigs/kubebuilder/pull/4936 * 🐛 (go/v4): gracefully skip webhook test injection if file or markers are missing by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4950 sigs/kubebuilder/pull/4959 * 🐛 (go/v4)(fix): (e2e) delete CertManager leftover leases in kube-system (not cleaned by default) by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4949 **Full Changelog**: [v4.7.0...v4.7.1](https://github.com/kubernetes-sigs/kubebuilder/compare/v4.7.0...v4.7.1)

v4.6.0预发布
? · 2025-05-24

**Changes since [v4.5.2](https://github.com/kubernetes-sigs/kubebuilder/releases/v4.5.2)** ## ⚠️ Breaking Changes * **(go-v4):** Upgrade controller-runtime from `v0.20.4` to `v0.21.0` and Kubernetes version from `1.32` to `1.33` ([#4813](https://github.com/kubernetes-sigs/kubebuilder/pull/4813)). For detailed changes, refer to the [controller-runtime v0.21.0 release notes](https://github.com/kubernetes-sigs/controller-runtime/releases/tag/v0.21.0). ## ✨ New Features * **(go-v4):** Enable `import-shadowing` linter ([#4700](https://github.com/kubernetes-sigs/kubebuilder/pull/4700)) * **(go-v4):** Add new Makefile target to create a cluster name for e2e tests ([#4673](https://github.com/kubernetes-sigs/kubebuilder/pull/4673)) * **(go-v4):** Upgrade Go version to `v1.24.0` ([#4585](https://github.com/kubernetes-sigs/kubebuilder/pull/4585)) * **(go-v4):** Update `golangci-lint` to `v2.0.2`and GitHub Action to `v8` ([#4752](https://github.com/kubernetes-sigs/kubebuilder/pull/4752),[#4801](https://github.com/kubernetes-sigs/kubebuilder/pull/4801)) * **(go-v4):** Upgrade controller-tools from `v0.17.2` to `v0.18.0` ([#4804](https://github.com/kubernetes-sigs/kubebuilder/pull/4804),[#4770](https://github.com/kubernetes-sigs/kubebuilder/pull/4770)) * **(API, CLI, go/v4):** Add `cliVersion` field to `PROJECT` file to track CLI binary version used in scaffolds ([#4621](https://github.com/kubernetes-sigs/kubebuilder/pull/4621), [#4821](https://github.com/kubernetes-sigs/kubebuilder/pull/4821)) ## 🐛 Bug Fixes * **(go-v4):** Wrap test command execution errors with `%w` for better error tracing ([#4694](https://github.com/kubernetes-sigs/kubebuilder/pull/4694)) * **(go-v4):** Improve `main.go` scaffolding to reduce `err` scope using `:=` ([#4585](https://github.com/kubernetes-sigs/kubebuilder/pull/4585)) * **(helm/v1-alpha):** Add control-plane labels to metrics service and ServiceMonitor templates ([#4777](https://github.com/kubernetes-sigs/kubebuilder/pull/4777)) * **(helm/v1-alpha):** Append project name to webhook service name to avoid name collisions ([#4808](https://github.com/kubernetes-sigs/kubebuilder/pull/4808)) * **(go-v4):** Fix staticcheck linter issues (ST1005, QF1008) in scaffolds and tutorials ([#4779](https://github.com/kubernetes-sigs/kubebuilder/pull/4779)) * **(go-v4):** Fix incorrect Webhook import aliasing in `cmd/main.go` ([#4781](https://github.com/kubernetes-sigs/kubebuilder/pull/4781)) * **(go-v4):** Revert unintended addition of explicit `docker.io` prefix in Dockerfile ([#4818](https://github.com/kubernetes-sigs/kubebuilder/pull/4818)) * **(go-v4):** Improve comment in `/config/rbac/kustomization.yaml` by rendering project name instead of using template var ([#4819](https://github.com/kubernetes-sigs/kubebuilder/pull/4819)) * **(go-v4):** Remove redundant/noisy `godebug` default lines in the `go.mod` file ([#4787](https://github.com/kubernetes-sigs/kubebuilder/pull/4787)) **Thanks to all our contributors!** 🎉 ## What's Changed * 📖 bump sigs.k8s.io/kubebuilder/v4 from 4.5.1 to 4.5.2 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4683 * 🌱 (chore): add gofumpt to golangci-lint configuration by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4672 * 🌱 (chore): unify import alias for network-policy by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4684 * 🌱 (chore): normalize error messages and wrap errors using %w by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4685 * 📖 Fix path for samples in the Getting Started tutorial by @fferrann in https://github.com/kubernetes-sigs/kubebuilder/pull/4695 * 🌱 (chore): normalize error messages and wrap errors using %w by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4686 * 🌱 (chore): wrap file and I/O errors with '%w' in 'pkg' by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4689 * 🌱 (chore): remove unnecessary blank lines across plugin configuration and options by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4690 * 📖 Improve error format in the design docs for API Versioning in Kubebuilder by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4693 * 🌱 (chore): avoid shadowing of 'config' and 'resource' in golang/v4 plugins by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4649 * 🌱 (chore): normalize error messages and wrap errors using %w by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4687 * 🌱 (chore): wrap errors with '%w' and normalize formatting in 'kustomize/v2' by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4688 * 🌱 (chore): wrap error with %w in test_context.go for improved diagnostics by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4692 * 🐛 (go/v4): wrap test command execution errors with %w in test utils by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4694 * 🌱 (chore): avoid shadowing of 'config', 'store', and 'resource' in cli/alpha/generate by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4697 * 🌱 (chore) add comment to clarify usage context of ReplaceRegexInFile by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4656 * 🌱 (chore): fix improper usage of errors.As in scaffold tests by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4696 * 🌱 (chore): improve readability of test case for alternative delimiters by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4698 * 🌱 (chore): enable shadow checks via import-shadowing linter by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4661 * 🌱 (chore): refactor unit tests to isolate mutable test data in CLI spec to improve maintainability by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4701 * 🌱 (chore): enable 'asciicheck' and 'bidichk' for improved code safety and clarity by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4699 * ✨ (go/v4): enable 'import-shadowing' linter by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4700 * 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach for pkg/cli by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4702 * 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach for pkg/config/store by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4703 * 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach in pkg/config by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4704 * 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach in pkg/machinery tests by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4705 * 🌱 (chore): refactor stage unit tests with Ginkgo conventions and simplify logic in stage_test.go by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4706 * 🌱 (chore): refactor unit tests to isolate mutable state with BeforeEach in resource-related tests by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4707 * 🌱 (chore): refactor shared setup logic in plugins into BeforeEach to isolate test state by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4708 * 🌱 (chore): enable 'whitespace' linter in golangci-lint config by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4691 * 🌱 (chore): refactor shared setup logic in plugin into BeforeEach to isolate test state by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4709 * 🌱 fix (ci): fix lint issue: shadow: declaration of pluginCfg shadows declaration by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4725 * 📖 Updated 404 page details in TODO.md and updated the book by @Kuzuri247 in https://github.com/kubernetes-sigs/kubebuilder/pull/4674 * 🐛 (go/v4) Update main.go scaffold to follow Go best practices by reducing the scope of err using short variable declarations (:=) by @koba1t in https://github.com/kubernetes-sigs/kubebuilder/pull/4627 * 📖 Updated migration pages by @Kuzuri247 in https://github.com/kubernetes-sigs/kubebuilder/pull/4676 * 🌱 Use dynamic controller-runtime version in doc generator to make easier update the version by @p-shah256 in https://github.com/kubernetes-sigs/kubebuilder/pull/4713 * 🌱 (chore): enable ginkgolinter forbid-spec-pollution to enforce isolated test specs by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4710 * 🌱 (chore): enable ginkgolinter forbid-focus-container by @nunnatsa in https://github.com/kubernetes-sigs/kubebuilder/pull/4714 * 📖 Fixed grammatical errors in designs doc by @Kuzuri247 in https://github.com/kubernetes-sigs/kubebuilder/pull/4716 * 🌱 (chore): replace errors.As() with MatchError() in error assertions by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4723 * 🌱 Fix golangci-lint wrong configurations by @nunnatsa in https://github.com/kubernetes-sigs/kubebuilder/pull/4726 * 🌱 (chore): simplify test variable declarations for CLI tests by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4731 * 🌱 (chore): replace '%v' with '%w' in deploy-image v1alpha1 plugin errors by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4732 * 🌱 (chore): wrap errors using '%w' and improve formatting in golang plugin by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4729 * 🌱 (chore): improve error wrapping for external plugin discovery and config loading by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4744 * 🌱 (chore): wrap plugin and util error returns for better context by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4745 * 🌱 (chore): check and return error from os.WriteFile when writing litout.json by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4746 * 🌱 (chore): wrap deploy-image plugin errors with contextual messages by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4748 * ✨ (CLI, go/v4): Upgrade Golang version to v1.24.0 by @dongjiang1989 in https://github.com/kubernetes-sigs/kubebuilder/pull/4585 * 🌱 (chore): add detailed error wrapping across Golang plugin commands by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4735 * 🌱 (chore): replace empty slice literals with idiomatic var decls by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4736 * 🌱 (chore): improve error wrapping for generate command execution by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4737 * 🌱 (chore): consistently wrap and enrich error messages across helm plugin by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4739 * 🌱 (chore): improve error context and wrapping in utility and test helpers by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4740 * 🌱 (chore): improve error context in common kustomize plugin scaffolds by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4741 * 🌱 (chore): add error context to golang scaffolder execution steps by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4742 * 🌱 (chore): wrap config parsing and validation errors with contextual messages by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4743 * 🌱 (chore): wrap plugin and util error returns for better context by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4749 * 🌱 (chore): remove unnecessary string() and []byte conversions by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4747 * 🌱 (chore): clean up and unify error messages in golang/v4 plugin by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4738 * 🌱 (chore): use 'errors.As' and wrap exec errors in repository.go by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4730 * 🌱 Bump github.com/onsi/gomega from 1.36.3 to 1.37.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4751 * 📖 : Improve sample external plugin by adding error handling for flag parsing failures. by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4728 * ✨ (API) add contextual error wrapping for external plugin helpers by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4754 * 🌱 (chore): consistently wrap and enrich error messages across test utils by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4755 * ✨ (API, CLI, go/v4) Add cliVersion field to the PROJECT file configuration to store the CLI binary version used to scaffold projects. by @vitorfloriano in https://github.com/kubernetes-sigs/kubebuilder/pull/4621 * 🌱 Add kubernetesVendorVersion for binary builds with LD_FLAGS by @vitorfloriano in https://github.com/kubernetes-sigs/kubebuilder/pull/4612 * 🌱 (chore): use pointer receiver for Validate and rename shadowed var by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4763 * 🌱 (ci/verify)use `env:` to set variable. Otherwise quoting issues. by @guettli in https://github.com/kubernetes-sigs/kubebuilder/pull/4764 * 📖 handle flag parsing errors in simple external plugin tutorial API scaffolder by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4765 * 📖 Update versions_compatibility_supportability.md to fix link in the warning note by @possani in https://github.com/kubernetes-sigs/kubebuilder/pull/4759 * 🌱 Bump github.com/onsi/ginkgo/v2 from 2.23.3 to 2.23.4 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4768 * ✨ (go/v4): Add new makefile target to create a cluster name to run the e2e tests by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4673 * ✨Update golangci-lint to v2.0.2 and adjust configuration by @dongjiang1989 in https://github.com/kubernetes-sigs/kubebuilder/pull/4752 * ✨ Upgrade controller-tools from v0.17.2 to v0.17.3 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4770 * 🌱 Bump golang.org/x/text from 0.23.0 to 0.24.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4769 * 🌱 fix staticcheck lint issues - ST1008 and ST1008 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4771 * 🌱 Bump golang.org/x/tools from 0.31.0 to 0.32.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4772 * 🌱 (fix/enhance): correct GNU sed detection method for remove-spaces makefile target by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4775 * 🐛 (Follow up of : #4752 - Upgrade GolangCI) - fix: address staticcheck linter issues (ST1005, QF1008) in scaffolds and tutorials by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4779 * 🐛Fix: Incorrect Webhook Import Aliasing in cmd/main.go Scaffold by @dongjiang1989 in https://github.com/kubernetes-sigs/kubebuilder/pull/4781 * 🌱 (chore): wrap and contextualize errors across Grafana plugin by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4753 * 🌱 (chore): Enable wrapcheck linter by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4721 * 🌱 (Follow up of #4752 )Remove 'install-mode: goinstall' from the GitHub Action. This was added temporarily to allow us to move forward. (removed this temporary addition before any release.) by @Kuzuri247 in https://github.com/kubernetes-sigs/kubebuilder/pull/4774 * 🐛 (helm/alpha-v1): Add control-plane labels to metrics service and ServiceMonitor templates by @sarthaksarthak9 in https://github.com/kubernetes-sigs/kubebuilder/pull/4777 * 🐛 Remove redundant/noisy godebug default= lines from go.mod. by @ldemailly in https://github.com/kubernetes-sigs/kubebuilder/pull/4787 * 🌱 (testdata): Upgrade version used in the samples under testdata by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4794 * 🌱 Removing calico - using default CNI from Kind by @irapandey in https://github.com/kubernetes-sigs/kubebuilder/pull/4791 * 🌱 Bump golang.org/x/text from 0.24.0 to 0.25.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4796 * 🌱 Bump golang.org/x/tools from 0.32.0 to 0.33.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4797 * ✨Update golangci-lint to v2.1.0 and lint-action to v8 by @ansh-devs in https://github.com/kubernetes-sigs/kubebuilder/pull/4801 * 🌱 Bump controller-tools to 0.18.0 by @Adembc in https://github.com/kubernetes-sigs/kubebuilder/pull/4804 * 🐛 (helm/v1-alpha): Append project name to webhook service name by @fhirscher in https://github.com/kubernetes-sigs/kubebuilder/pull/4808 * 📖 docs: fix make command and heading formatting in getting started guide by @Vaishnav88sk in https://github.com/kubernetes-sigs/kubebuilder/pull/4811 * ⚠️ Upgrade controller-runtime (v0.20.4 to v0.21.0) and k8s version ( 1.32 => 1.33 ) by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4813 * 🌱 Bump joelanford/go-apidiff from 0.8.2 to 0.8.3 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4815 * 🐛 (go/v4) fix: revert accidental addition of explicit docker.io registry in Dockerfile by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4818 * 🐛 (go/v4) fix: improve role comment clarity in `/config/rbac/kustomization.yaml` by replacing `{{ .ProjectName }}` with rendered project name by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4819 * 🐛 refactor: inline getKubebuilderVersion into cli.WithCliVersion setup by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4821 ## New Contributors * @fferrann made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4695 * @Kuzuri247 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4674 * @koba1t made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4627 * @p-shah256 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4713 * @nunnatsa made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4714 * @dongjiang1989 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4585 * @possani made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4759 * @ldemailly made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4787 * @irapandey made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4791 * @ansh-devs made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4801 * @fhirscher made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4808 * @Vaishnav88sk made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4811 **Full Changelog**: https://github.com/kubernetes-sigs/kubebuilder/compare/v4.5.2...v4.6.0

v4.5.2预发布
? · 2025-03-26

## ✨ New Features > **Note:** This release includes minor version upgrades for key dependencies. * **(go-v4):** Upgraded `controller-runtime` from `v0.20.2` to `v0.20.4` ([#4604](https://github.com/kubernetes-sigs/kubebuilder/pull/4604), [#4678](https://github.com/kubernetes-sigs/kubebuilder/pull/4678)) * **(go-v4):** Upgraded `kustomize` from `v5.5.0` to `v5.6.0` ([#4620](https://github.com/kubernetes-sigs/kubebuilder/pull/4620)) ## 🐛 Bug Fixes * **(CLI):** Fixed Kubebuilder installation using `go install` to ensure proper setup ([#4581](https://github.com/kubernetes-sigs/kubebuilder/pull/4581)) * **(CLI):** Allowed `kubebuilder alpha generate` to proceed even when legacy plugins (go/v2, go/v3) are unavailable ([#4572](https://github.com/kubernetes-sigs/kubebuilder/pull/4572)) * **(helm/v1-alpha):** Skipped empty directories during Helm chart generation to avoid invalid output ([#4586](https://github.com/kubernetes-sigs/kubebuilder/pull/4586)) * **(helm/v1-alpha):** Avoided scaffolding webhook manifests for projects that do not use webhooks ([#4584](https://github.com/kubernetes-sigs/kubebuilder/pull/4584)) * **(go-v4)**: Made Kind integration in the Makefile configurable, aligning with the standard used for other variables ([#4615](https://github.com/kubernetes-sigs/kubebuilder/pull/4615)) * **(go-v4):** Fixed indentation of import statements in generated test files ([#4623](https://github.com/kubernetes-sigs/kubebuilder/pull/4623)) * **(go-v4):** Fixed minor typo in e2e test suite comments ([#4662](https://github.com/kubernetes-sigs/kubebuilder/pull/4662)) * **(go-v4):** Prevented shadowing of the standard `log` package by aliasing it as `logf` ([#4646](https://github.com/kubernetes-sigs/kubebuilder/pull/4646)) * **(grafana/v1alpha):** Prevented shadowing of the `err` variable in generated Grafana plugin code ([#4653](https://github.com/kubernetes-sigs/kubebuilder/pull/4653)) **Thanks to all our contributors!** 🎉 ## What's Changed * 📖 : Bump sigs.k8s.io/kubebuilder/v4 from 4.5.0 to 4.5.1 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4579 * 🐛 Fix Kubebuilder Installation with go install by @migueleliasweb in https://github.com/kubernetes-sigs/kubebuilder/pull/4581 * 🌱 (ci): improve PR title validation for a better security by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4583 * 🐛 (helm/v1-alpha): Skip empty directories in chart generation by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4586 * 🌱 Upgrade Goreleaser + fix deprecation on release.yml by @migueleliasweb in https://github.com/kubernetes-sigs/kubebuilder/pull/4587 * 🌱 Add Makefile target to sync Kubernetes version by @akagami-harsh in https://github.com/kubernetes-sigs/kubebuilder/pull/4589 * 🌱 fix PR title check by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4596 * 🌱 Bump golang.org/x/text from 0.22.0 to 0.23.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4594 * 🌱 Bump golang.org/x/tools from 0.30.0 to 0.31.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4593 * 🌱Bump github.com/onsi/ginkgo/v2 from 2.22.2 to 2.23.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4595 * 📖 Add link to Watching Secondary Resources Owned by the Controller by @guettli in https://github.com/kubernetes-sigs/kubebuilder/pull/4590 * 📖 Update Single Group to Multi-Group Documentation to Add Webhooks Details 📖 by @GunaKKIBM in https://github.com/kubernetes-sigs/kubebuilder/pull/4601 * 📖 fix incorrect reference to "deploy-image-plugin" in docs. by @mo3et in https://github.com/kubernetes-sigs/kubebuilder/pull/4599 * 📖 Update README.md with minor changes by @chethanm99 in https://github.com/kubernetes-sigs/kubebuilder/pull/4603 * ✨ Upgrade controller-runtime from v0.20.2 to v0.20.3 by @vitorfloriano in https://github.com/kubernetes-sigs/kubebuilder/pull/4604 * 📖 Update code-generate-image-plugin.md and gvks.md by @chethanm99 in https://github.com/kubernetes-sigs/kubebuilder/pull/4607 * 📖 Update CONTRIBUTING-ROLES.md with minor changes by @chethanm99 in https://github.com/kubernetes-sigs/kubebuilder/pull/4605 * 📖 docs: fix incorrect json tag in API example. by @mo3et in https://github.com/kubernetes-sigs/kubebuilder/pull/4609 * 🌱 Bump github.com/spf13/afero from 1.12.0 to 1.14.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4616 * 🐛 Make the Kind integration in the Makefile configurable like the other variables. by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4615 * 🐛 Allow 'kubebuilder alpha generate' rescaffolds work with no longer supported/available plugins ( go/v3 and go/v2 ) by @sarthaksarthak9 in https://github.com/kubernetes-sigs/kubebuilder/pull/4572 * 🌱 Fix: ensure tha cmd/verdion.go is properly updated to return this value for go modules by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4619 * 🌱 Bump github.com/onsi/ginkgo/v2 from 2.23.0 to 2.23.1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4622 * ✨ (go/v4): Upgrade kustomize version from v5.5.0 to v5.6.0 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4620 * 🌱 Bump github.com/onsi/ginkgo/v2 from 2.23.1 to 2.23.2 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4626 * 📖 Remove outdated test examples by @fiunchinho in https://github.com/kubernetes-sigs/kubebuilder/pull/4624 * 🐛 (go/v4): fix indentation of imports in test files by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4623 * 🌱 Bump github.com/onsi/ginkgo/v2 from 2.23.2 to 2.23.3 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4628 * 🌱 Bump github.com/onsi/gomega from 1.36.2 to 1.36.3 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4629 * 🌱 fix: avoid variable shadowing by renaming loop variable 'plugin' by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4640 * 🌱 fix: resolve shadowed variable issue in literate.go by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4641 * 🌱 (chore): avoid variable shadowing by renaming local 'alpha' variable by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4642 * 🌱 (chore): rename local 'config' variable to avoid collision with imported package by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4639 * 🌱 (chore): rename local 'resource' variable to avoid shadowing import by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4645 * 🌱 fix(docs): correct typo in comments across multiple files by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4634 * 🌱 (chore): avoid variable shadowing by renaming local 'errors' variable by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4643 * 🐛 (go/v4): fix typo in e2e test suite comments by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4662 * 🌱 (chore): improve readability of test case for alternative delimiters by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4671 * 🌱 (chore): group const declarations into blocks for clarity by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4669 * 🌱 (chore): avoid shadowing of 'config', 'err', and patch error in helm and deploy-image scaffolds by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4660 * 🌱 (chore): use octal notation for file and directory modes by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4663 * 🌱 (chore): remove unnecessary trailing newlines and redundant blank lines by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4664 * 🌱 (chore): simplify test variable declarations for CLI tests by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4665 * 🌱 (chore): simplify variable declarations by adding var blocks by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4666 * 🌱 (chore): simplify variable declarations by removing unnecessary var blocks by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4667 * 🌱 (chore): fix formatting for multi-line function signatures by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4668 * 🌱 (chore): avoid shadowing of 'err' in CLI options, YAML store, and external plugin helpers by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4658 * 🌱 (chore): avoid shadowing of 'err' and related variables in E2E and external plugin tests by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4659 * 🌱 (chore): avoid shadowing of 'fmt' in regexError helper by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4648 * 🌱 (chore): avoid shadowing of 'config', 'resource', and 'err' in kustomize/v2 scaffolds by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4651 * 🌱 (chore): avoid shadowing of 'pluginConfig' in config v3 implementation and tests by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4652 * 🌱 (chore): avoid shadowing of 'err' in version parsing for plugin and config packages by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4657 * 🌱 (chore): avoid 'fs' shadowing and rename 'isPluginExectuable' to 'isPluginExecutable' by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4647 * 🌱 (chore): clean up var declarations in grafana scaffolder and cronjob doc generator by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4670 * ✨ Upgrade controller-runtime v0.20.3 to v0.20.4 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4678 * 🐛 (helm/v1-alpha): not scaffold webhooks conditionals manifests for projects without webhooks by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4584 * 🐛 (grafana/v1alpha) avoid shadowing of 'err' in grafana plugin code generating by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4653 * 🐛 (go/v4) fix: avoid shadowing 'log' package by aliasing import as 'logf' by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4646 * 🌱 (chore): avoid shadowing of 'resource' and 'err' in machinery scaffold by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4655 * 🌱 (chore): avoid shadowing of 'err' in plugin util and test utilities by @kersten in https://github.com/kubernetes-sigs/kubebuilder/pull/4654 ## New Contributors * @GunaKKIBM made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4601 * @mo3et made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4599 * @chethanm99 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4603 * @vitorfloriano made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4604 * @kersten made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4615 * @fiunchinho made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4624 **Full Changelog**: https://github.com/kubernetes-sigs/kubebuilder/compare/v4.5.1...v4.5.2

v4.5.1
? · 2025-02-21

**changes since [v4.5.0](https://github.com/kubernetes-sigs/kubebuilder/releases/v4.5.1)** ## ✨ New Features > **Note:** This release includes only minor version updates. * **(go-v4):** Upgraded `controller-runtime` from `v0.20.0` to `v0.20.2` ([#4528](https://github.com/kubernetes-sigs/kubebuilder/pull/4528), [#4570](https://github.com/kubernetes-sigs/kubebuilder/pull/4570)) * **(go-v4):** Upgraded `controller-gen` from `v0.17.1` to `v0.17.2` ([#4553](https://github.com/kubernetes-sigs/kubebuilder/pull/4553)) ## 🐛 Bug Fixes * **(go-v4):** Aligned webhook suite tests with controller suite tests ([#4449](https://github.com/kubernetes-sigs/kubebuilder/pull/4449)) * **(go-v4):** Fixed project initialization in directories containing other files. Now, initialization is only prevented for directories with explicitly unwanted files ([#4510](https://github.com/kubernetes-sigs/kubebuilder/pull/4510)) * **(go-v4, kustomize/v2, helm/v1-alpha):** Fixed Prometheus integration by adding the `serverName` field to `ServiceMonitor`, ensuring proper certificate validation with the metrics server ([#4536](https://github.com/kubernetes-sigs/kubebuilder/pull/4536), [#4558](https://github.com/kubernetes-sigs/kubebuilder/pull/4558)) * **(CLI):** Fixed `kubebuilder alpha generate` by using `--repo` information tracked in the `PROJECT` file. Fix generation of projects outside of `GOPATH` ([#4559](https://github.com/kubernetes-sigs/kubebuilder/pull/4559)) * **(go-v4, deploy-image/v1-alpha):** Fixed handling of missing boilerplate files by raising a warning instead of failing. Previously, the process would terminate with an error, but it now issues a warning and continues execution ([#4518](https://github.com/kubernetes-sigs/kubebuilder/pull/4518)). ## What's Changed * :bug: Make kubebuilder go install-able by @migueleliasweb in https://github.com/kubernetes-sigs/kubebuilder/pull/4481 * :bug: (go/v4): Align webhook suite test with controller's suite test by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4449 * 🌱 : Fix Kubernetes version in the goreleaser by upgrading it from 1.31.0 to 1.32.0 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4517 * :book: Bump sigs.k8s.io/kubebuilder/v4 from 4.4.0 to 4.5.0 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4519 * 🌱 test: add to commmon.sh the latest k8s release 1.32 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4521 * 🐛 fix: disallow files containing unwanted files when initializing a project by @afzal442 in https://github.com/kubernetes-sigs/kubebuilder/pull/4510 * ✨ Upgrade controller-runtime from v0.20.0 to v0.20.1 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4528 * 📖 doc: update the Artifacts with the latest changes on the EnvTest Makefile target configurations by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4520 * :book: bump github.com/spf13/pflag from 1.0.5 to 1.0.6 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4531 * :seedling: bump github.com/spf13/pflag from 1.0.5 to 1.0.6 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4532 * 📖 fix: correct minor typos in documentation by @SaphMB in https://github.com/kubernetes-sigs/kubebuilder/pull/4534 * :bug: (go/v4): e2e test: Removed Prometheus dependency by @anshuman-agarwala in https://github.com/kubernetes-sigs/kubebuilder/pull/4529 * 🌱 : Add YAML Linting to CI Workflow for Scaffolded Charts by @sarthaksarthak9 in https://github.com/kubernetes-sigs/kubebuilder/pull/4512 * :book: Remove simplistic advice about multiple controllers reconciling same CR by @alvaroaleman in https://github.com/kubernetes-sigs/kubebuilder/pull/4537 * 🌱 ci: fix testdata - issues caused by some merge conflict with go mod by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4538 * 🌱 Revert "Merge pull request #4512 from sarthaksarthak9/lint" by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4539 * :seedling: bump golang.org/x/text from 0.21.0 to 0.22.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4542 * 📖 Update documentation for non-owned resources by @mwdomino in https://github.com/kubernetes-sigs/kubebuilder/pull/4541 * ✨ handle missing boilerplate file gracefully during scaffolding by @sarthaksarthak9 in https://github.com/kubernetes-sigs/kubebuilder/pull/4518 * :book: Fix grammar in lets -> let's. by @guettli in https://github.com/kubernetes-sigs/kubebuilder/pull/4543 * :bug: (kustomize/v2): fix ServiceMonitor with TLS kustomize scaffolding by @abhishekdwivedi3060 in https://github.com/kubernetes-sigs/kubebuilder/pull/4536 * 🌱 Update controller-runtime version used in the common.sh tests by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4550 * 📖 Update Roadmap 2025 with latest status by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4551 * 🌱 : Improve samples linting & fix samples lint issues by @wazery in https://github.com/kubernetes-sigs/kubebuilder/pull/4548 * 🌱 Revert (kustomize/v2): fix ServiceMonitor with TLS kustomize scaffolding by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4556 * :seedling: Bump golang.org/x/tools from 0.29.0 to 0.30.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4557 * ✨ Upgrade controller-gen from v0.17.1 to v0.17.2 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4553 * 🐛 (go/v4,ksutomize/v2,helm/v1-alpha): Fix prometheus integration with TLS check by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4558 * 🐛 Fix kubebuild alpha generate when not in GOPATH by @freddyesteban in https://github.com/kubernetes-sigs/kubebuilder/pull/4559 * 🌱 fix testdata generation by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4569 * :seedling: Bump github.com/spf13/cobra from 1.8.1 to 1.9.1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4568 * ✨ Upgrade controller-runtime from v0.20.1 to v0.20.2 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4570 * 🌱 Added e2e tests for alpha generate command for scaffolded data by @manalilatkar in https://github.com/kubernetes-sigs/kubebuilder/pull/4554 * :bug: Revert "Make kubebuilder go install-able" by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4576 ## New Contributors * @migueleliasweb made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4481 * @afzal442 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4510 * @SaphMB made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4534 * @anshuman-agarwala made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4529 * @alvaroaleman made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4537 * @mwdomino made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4541 * @abhishekdwivedi3060 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4536 * @wazery made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4548 * @freddyesteban made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4559 * @manalilatkar made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4554 **Full Changelog**: https://github.com/kubernetes-sigs/kubebuilder/compare/v4.5.0...v4.5.1

v4.5.1预发布
? · 2025-02-21

**changes since [v4.5.0](https://github.com/kubernetes-sigs/kubebuilder/releases/v4.5.1)** ## ✨ New Features > **Note:** Only minor version updates and bug fixes were applied to this release. * **(go-v4):** Upgrade controller-runtime from `v0.20.0` to `v0.20.2` ([#4528](https://github.com/kubernetes-sigs/kubebuilder/pull/4528), [#4570](https://github.com/kubernetes-sigs/kubebuilder/pull/4570)) * **(go-v4):** Upgrade controller-gen from `v0.17.1` to `v0.17.2` ([#4553](https://github.com/kubernetes-sigs/kubebuilder/pull/4553)) ## 🐛 Bug Fixes * **(CLI):** Make kubebuilder go install-able ([#4481](https://github.com/kubernetes-sigs/kubebuilder/pull/4481)) * **(go-v4):** Align webhook suite test with controller's suite test ([#4449](https://github.com/kubernetes-sigs/kubebuilder/pull/4449)) * **(go-v4):** Disallow files containing unwanted files when initializing a project ([#4510](https://github.com/kubernetes-sigs/kubebuilder/pull/4510)) * **(kustomize/v2):** Fix ServiceMonitor with TLS kustomize scaffolding ([#4536](https://github.com/kubernetes-sigs/kubebuilder/pull/4536)) * **(go-v4, kustomize/v2, helm/v1-alpha):** Fix Prometheus integration with TLS check ([#4558](https://github.com/kubernetes-sigs/kubebuilder/pull/4558)) * **(CLI):** Fix `kubebuilder alpha generate` by using `--repo` information tracked in the PORJECT file. This fix should allow regenerated projects outside of GOPATH ([#4559](https://github.com/kubernetes-sigs/kubebuilder/pull/4559)) * **(go-v4, deploy-image/v1-alpha):** Fix error by warning instead of fall to properly handle missing boilerplate file gracefully ([#4518](https://github.com/kubernetes-sigs/kubebuilder/pull/4518)) ## What's Changed * :bug: Make kubebuilder go install-able by @migueleliasweb in https://github.com/kubernetes-sigs/kubebuilder/pull/4481 * :bug: (go/v4): Align webhook suite test with controller's suite test by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4449 * 🌱 : Fix Kubernetes version in the goreleaser by upgrading it from 1.31.0 to 1.32.0 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4517 * :book: Bump sigs.k8s.io/kubebuilder/v4 from 4.4.0 to 4.5.0 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4519 * 🌱 test: add to commmon.sh the latest k8s release 1.32 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4521 * 🐛 fix: disallow files containing unwanted files when initializing a project by @afzal442 in https://github.com/kubernetes-sigs/kubebuilder/pull/4510 * ✨ Upgrade controller-runtime from v0.20.0 to v0.20.1 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4528 * 📖 doc: update the Artifacts with the latest changes on the EnvTest Makefile target configurations by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4520 * :book: bump github.com/spf13/pflag from 1.0.5 to 1.0.6 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4531 * :seedling: bump github.com/spf13/pflag from 1.0.5 to 1.0.6 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4532 * 📖 fix: correct minor typos in documentation by @SaphMB in https://github.com/kubernetes-sigs/kubebuilder/pull/4534 * :bug: (go/v4): e2e test: Removed Prometheus dependency by @anshuman-agarwala in https://github.com/kubernetes-sigs/kubebuilder/pull/4529 * 🌱 : Add YAML Linting to CI Workflow for Scaffolded Charts by @sarthaksarthak9 in https://github.com/kubernetes-sigs/kubebuilder/pull/4512 * :book: Remove simplistic advice about multiple controllers reconciling same CR by @alvaroaleman in https://github.com/kubernetes-sigs/kubebuilder/pull/4537 * 🌱 ci: fix testdata - issues caused by some merge conflict with go mod by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4538 * 🌱 Revert "Merge pull request #4512 from sarthaksarthak9/lint" by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4539 * :seedling: bump golang.org/x/text from 0.21.0 to 0.22.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4542 * 📖 Update documentation for non-owned resources by @mwdomino in https://github.com/kubernetes-sigs/kubebuilder/pull/4541 * ✨ handle missing boilerplate file gracefully during scaffolding by @sarthaksarthak9 in https://github.com/kubernetes-sigs/kubebuilder/pull/4518 * :book: Fix grammar in lets -> let's. by @guettli in https://github.com/kubernetes-sigs/kubebuilder/pull/4543 * :bug: (kustomize/v2): fix ServiceMonitor with TLS kustomize scaffolding by @abhishekdwivedi3060 in https://github.com/kubernetes-sigs/kubebuilder/pull/4536 * 🌱 Update controller-runtime version used in the common.sh tests by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4550 * 📖 Update Roadmap 2025 with latest status by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4551 * 🌱 : Improve samples linting & fix samples lint issues by @wazery in https://github.com/kubernetes-sigs/kubebuilder/pull/4548 * 🌱 Revert (kustomize/v2): fix ServiceMonitor with TLS kustomize scaffolding by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4556 * :seedling: Bump golang.org/x/tools from 0.29.0 to 0.30.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4557 * ✨ Upgrade controller-gen from v0.17.1 to v0.17.2 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4553 * 🐛 (go/v4,ksutomize/v2,helm/v1-alpha): Fix prometheus integration with TLS check by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4558 * 🐛 Fix kubebuild alpha generate when not in GOPATH by @freddyesteban in https://github.com/kubernetes-sigs/kubebuilder/pull/4559 * 🌱 fix testdata generation by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4569 * :seedling: Bump github.com/spf13/cobra from 1.8.1 to 1.9.1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4568 * ✨ Upgrade controller-runtime from v0.20.1 to v0.20.2 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4570 * 🌱 Added e2e tests for alpha generate command for scaffolded data by @manalilatkar in https://github.com/kubernetes-sigs/kubebuilder/pull/4554 ## New Contributors * @migueleliasweb made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4481 * @afzal442 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4510 * @SaphMB made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4534 * @anshuman-agarwala made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4529 * @alvaroaleman made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4537 * @mwdomino made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4541 * @abhishekdwivedi3060 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4536 * @wazery made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4548 * @freddyesteban made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4559 * @manalilatkar made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4554 **Full Changelog**: https://github.com/kubernetes-sigs/kubebuilder/compare/v4.5.0...v4.5.1

v4.5.0预发布
? · 2025-01-21

**changes since [v4.4.0](https://github.com/kubernetes-sigs/kubebuilder/releases/v4.4.0)** ## ⚠️ Breaking Changes * **(go-v4):** Upgrade controller-runtime from `v0.19.4` to `v0.20.0` and add support for Kubernetes 1.32 ([#4492](https://github.com/kubernetes-sigs/kubebuilder/pull/4492)). See the [controller-runtime release notes](https://github.com/kubernetes-sigs/controller-runtime/releases/tag/v0.20.0) to learn more about the breaking changes introduced. **(Projects using webhooks):** Controller-runtime removed the deprecated `webhook.Validator` and `webhook.Defaulter` interfaces. Additionally, webhooks should no longer reside under the `api` directory. Kubebuilder projects have not scaffolded webhooks in this directory or used the deprecated interfaces since [v4.3.0](https://github.com/kubernetes-sigs/kubebuilder/releases/tag/v4.3.0). If you are using these interfaces or the legacy `apis` directory for webhooks, please refer to the [v4.3.0 release notes](https://github.com/kubernetes-sigs/kubebuilder/releases/tag/v4.3.0), which provide guidance on updating your projects to align with the current standards. To assist with migration or reduce the burden on users, Kubebuilder has introduced a flag option to allow scaffolding webhooks using the new interfaces in the legacy path. For now, you can scaffold webhooks in the legacy path (under `api`) by using the command ` kubebuilder create webhook [OPTIONS] --legacy=true`. For reference, you can look at the [CronJob Tutorial sample webhooks implementation](https://github.com/kubernetes-sigs/kubebuilder/tree/v4.5.0/docs/book/src/cronjob-tutorial/testdata/project/internal/webhook/v1). ## ✨ New Features * **(go-v4):** Upgrade controller-gen from `v0.17.0` to `v0.17.1` ([#4493](https://github.com/kubernetes-sigs/kubebuilder/pull/4493)) * **(go-v4):** Upgrade GolangCI Lint from `v1.62.2` to `v1.63.4` ([#4494](https://github.com/kubernetes-sigs/kubebuilder/pull/4494)) * **(go-v4):** e2e tests: upgrade cert-manager version used from `v1.16.0` to `v1.16.3` ([#4497](https://github.com/kubernetes-sigs/kubebuilder/pull/4497)) * **(go-v4):** e2e tests: follow cert-manager org name changes ([#4505](https://github.com/kubernetes-sigs/kubebuilder/pull/4505)) ## 🐛 Bug Fixes * **(CLI)** Ensure minimal golang version `1.23.0` ([#4491](https://github.com/kubernetes-sigs/kubebuilder/pull/4491)) * **(helm/alpha-v1):** Fix YAML lint in the ServiceMonitor file ([#4502](https://github.com/kubernetes-sigs/kubebuilder/pull/4502)) * **(alpha generate command):** Fix scenario where the output-dir path is not informed; default to the current directory ([#4500](https://github.com/kubernetes-sigs/kubebuilder/pull/4500)) * **(alpha generate command):** Allow re-creating projects with webhooks for external-apis ([#4501](https://github.com/kubernetes-sigs/kubebuilder/pull/4501)) * **(go-v4):** Use explicit `docker.io` prefix for Docker Hub images ([#4513](https://github.com/kubernetes-sigs/kubebuilder/pull/4513)) ## What's Changed * 📖 Add helm-plugin to the summary of available plugins by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4485 * 🐛 Update golang version to 1.23.0 in init validation logic by @dmvolod in https://github.com/kubernetes-sigs/kubebuilder/pull/4491 * :book: Bump sigs.k8s.io/kubebuilder/v4 from 4.3.1 to 4.4.0 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4488 * ⚠️ Upgrade controller-runtime from v0.19.4 to v0.20.0 and k8s deps from 1.31 to 1.32 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4492 * ✨ Upgrade controller-gen from v0.17.0 to v0.17.1 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4493 * ✨ Upgrade GolangCI Lint from v1.62.2 to v1.63.4 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4494 * ✨ e2e tests: upgrade cert-manager version used from `v1.16.0` to `v1.16.3` by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4497 * 🐛 (helm/alpha-v1): fix yaml lint in the ServiceMonitor file by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4502 * 🌱 CLI: Remove unused doc.go by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4504 * 🐛 fix: kubebuilder alpha generate command to allow re-create projects with webhooks for external-apis by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4501 * ✨ (go/v4): Follow cert-manager org name changes by @zchee in https://github.com/kubernetes-sigs/kubebuilder/pull/4505 * 🌱 (ci): Add GH action to validate generated helm charts for tutorials by @akagami-harsh in https://github.com/kubernetes-sigs/kubebuilder/pull/4472 * 🌱 fix: alpha generate command. If the output-dir path is not informed than it should be the current directory by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4500 * 🐛 Use explicit docker.io prefix for Docker Hub images by @pl4nty in https://github.com/kubernetes-sigs/kubebuilder/pull/4513 ## New Contributors * @zchee made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4505 * @akagami-harsh made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4472 * @pl4nty made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4513 **Full Changelog**: https://github.com/kubernetes-sigs/kubebuilder/compare/v4.4.0...v4.5.0

v4.4.0预发布
? · 2025-01-12

**changes since [v4.3.1](https://github.com/kubernetes-sigs/kubebuilder/releases/v4.3.1)** ## ✨ New Features - **(go/v4):** Upgrade golangci-lint from `v1.61.0` to `v1.62.2` ([#4448](https://github.com/kubernetes-sigs/kubebuilder/pull/4448)) - **(go/v4):** Add support for go `1.23` ([#4446](https://github.com/kubernetes-sigs/kubebuilder/pull/4446)) - **(go/v4):** Upgraded `controller-gen` from `v0.16.4` to `v0.17.0`. ([#4254](https://github.com/kubernetes-sigs/kubebuilder/pull/4254), [#4457](https://github.com/kubernetes-sigs/kubebuilder/pull/4457)) - **(go/v4):** Upgrade controller-runtime `v0.19.1` to `v0.19.4` ([#4482](https://github.com/kubernetes-sigs/kubebuilder/pull/4482)) - **(kustomize/v2)**: Kubebuilder scaffolds rules under `config/rbac` to help cluster admins manage the permissions for their solutions. The comments and explanations added to these scaffolds have been improved. Furthermore, it now includes admin-specific rules to make it easier for cluster admins to work with features like aggregation (e.g., `rbac.authorization.k8s.io/aggregate-to-admin`). [More info](https://kubernetes.io/docs/reference/access-authn-authz/rbac/#user-facing-roles). ([#4299](https://github.com/kubernetes-sigs/kubebuilder/pull/4299)) - **(go/v4)**: Added configurations for securing Metrics Server and Prometheus integration using TLS and certificates managed by CertManager, enabling users to align their solutions with best practices, enhance security, and achieve production readiness. ([#4243](https://github.com/kubernetes-sigs/kubebuilder/pull/4243), [#4312](https://github.com/kubernetes-sigs/kubebuilder/pull/4312), [#4400](https://github.com/kubernetes-sigs/kubebuilder/pull/4400)) - **(go/v4)**: Added webhook [CertWatcher](https://pkg.go.dev/sigs.k8s.io/controller-runtime/pkg/certwatcher) and flags for custom certificate configuration [#4429](https://github.com/kubernetes-sigs/kubebuilder/pull/4429)) - **(go/v4)**: Ensures that the manager container adheres to [Restricted Pod Security Standards](https://kubernetes.io/docs/concepts/security/pod-security-standards/) and can operate in namespaces labelled for restricted policies, following best practices. ([#4251](https://github.com/kubernetes-sigs/kubebuilder/pull/4251)). - **(go/v4)**: Ensure that e2e test scaffolds will validate that the enforcement is prepared to ensure that all can run as restricted. See that the curl pod to use the metrics was updated and changed ([#4435](https://github.com/kubernetes-sigs/kubebuilder/pull/4435)) - **(go/v4):** Improved developer experience and maintainability by updating actions and the Makefile to utilize `go.mod` for Go version management and automating ENVTEST versioning by retrieving the version directly from `go.mod`, based on the `controller-runtime` dependency in use. ([#4385](https://github.com/kubernetes-sigs/kubebuilder/pull/4385)) ([#4401](https://github.com/kubernetes-sigs/kubebuilder/pull/4401)) - **(helm/v1-alpha):** Introduced the new `helm.kubebuilder.io/v1-alpha` plugin to enable users to distribute solutions using Helm Charts. Example scaffolds are available under [testdata/project-v4-with-plugins/dist/chart](https://github.com/kubernetes-sigs/kubebuilder/tree/master/testdata/project-v4-with-plugins/dist/chart). For further information see its [documentation](link). ([#4227](https://github.com/kubernetes-sigs/kubebuilder/pull/4227), [#4315](https://github.com/kubernetes-sigs/kubebuilder/pull/4315), [#4350](https://github.com/kubernetes-sigs/kubebuilder/pull/4350), [#4351](https://github.com/kubernetes-sigs/kubebuilder/pull/4351), [#4356](https://github.com/kubernetes-sigs/kubebuilder/pull/4356), [#4357](https://github.com/kubernetes-sigs/kubebuilder/pull/4357), [#4371](https://github.com/kubernetes-sigs/kubebuilder/pull/4371), [#4377](https://github.com/kubernetes-sigs/kubebuilder/pull/4377), [#4383](https://github.com/kubernetes-sigs/kubebuilder/pull/4383), [#4380](https://github.com/kubernetes-sigs/kubebuilder/pull/4380), [#4373](https://github.com/kubernetes-sigs/kubebuilder/pull/4373), [#4386](https://github.com/kubernetes-sigs/kubebuilder/pull/4386), [#4375](https://github.com/kubernetes-sigs/kubebuilder/pull/4375), [#4388](https://github.com/kubernetes-sigs/kubebuilder/pull/4388), [#4406](https://github.com/kubernetes-sigs/kubebuilder/pull/4406), [#4399](https://github.com/kubernetes-sigs/kubebuilder/pull/4399), [#4419](https://github.com/kubernetes-sigs/kubebuilder/pull/4419),[#4451](https://github.com/kubernetes-sigs/kubebuilder/pull/4451)). _**IMPORTANT:** The `helm.kubebuilder.io/v1-alpha` is an **experimental initial version**._ - **(go/v4,kustomize/v2):** Add `app.kubernetes.io/name` label to allow more precise configurations ([#4437](https://github.com/kubernetes-sigs/kubebuilder/pull/4437)) - **(go/v4):** Standardize the webhook and controller test suites ([#4447](https://github.com/kubernetes-sigs/kubebuilder/pull/4447)) - **(go/v4):** Add new makefile target to check and validate the linter config ([#4462](https://github.com/kubernetes-sigs/kubebuilder/pull/4462)) - **(go/v4):** Added Hub and Spoke support for conversion webhooks. Developers can now scaffold webhooks for resource conversion more easily. ([#4254](https://github.com/kubernetes-sigs/kubebuilder/pull/4254)) **Example:** ```bash # Create API to test conversion from v1 to v2 $ kubebuilder create api --group crew --version v1 --kind FirstMate --controller=true --resource=true --make=false $ kubebuilder create api --group crew --version v2 --kind FirstMate --controller=false --resource=true --make=false $ kubebuilder create webhook --group crew --version v1 --kind FirstMate --conversion --make=false --spoke v2 ``` ## 🐛 Bug Fixes - **(go/v4):** Fixed an issue where GitHub Actions workflows were overwritten by commands, ensuring users can now customize workflows freely without their changes being overridden. ([#4379](https://github.com/kubernetes-sigs/kubebuilder/pull/4379)) - **(go/v4):** Resolved linting issues in generated scaffolds. ([#4384](https://github.com/kubernetes-sigs/kubebuilder/pull/4384)) - **(kustomize/v2, go/v4):** Fixed CA injection for conversion webhooks. Previously, the CA injection patch was not accurate; The injection should occur only for CRDs, which are conversion types and not for all CRDs when a webhook with `--conversion` option is scaffolded. The issue goes back to release `3.5.0` (_where to replace vars for replacements was done and the `kustomize/v2-alpha` plugin was introduced_). It was not previously found, likely because conversion webhook features were incomplete, which is addressed in this release. Now, users can use the tool to generate the conversion webhooks properly ([#4254](https://github.com/kubernetes-sigs/kubebuilder/pull/4254)). ([#4282](https://github.com/kubernetes-sigs/kubebuilder/pull/4282)) - **(go/v4):** Ensure that schemas are added before starting EnvTest-based suite tests for webhooks and controllers ([#4466](https://github.com/kubernetes-sigs/kubebuilder/pull/4466)) - **(go/v4):** e2e-tests: cleanup by removing calls to call make generate and manifests ([#4471](https://github.com/kubernetes-sigs/kubebuilder/pull/4471)) ## What's Changed * ✨ Adds a patch to configure ServiceMonitor to ensure TLS verification using cert-manager certificates by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4243 * ✨ Include admin ClusterRole and add it to the scaffold by @damsien in https://github.com/kubernetes-sigs/kubebuilder/pull/4299 * ✨ (go/v4): Enable `seccompProfile.type: RuntimeDefault` by default in scaffolded projects by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4251 * ✨ Add helm plugin to distribute projects by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4227 * 📖 Proposal: New Plugin to allow project distribution via helm charts by @dashanji in https://github.com/kubernetes-sigs/kubebuilder/pull/3632 * ✨ Follow-up to PR #4243: Limit permissions to access the metrics-server-cert secret by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4312 * 📖 doc: update roadmap for 2024 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4313 * ✨ (helm/v1-alpha): add missed info to chart values by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4315 * 📖 Update README.md - Fix typo by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4318 * 📖 Bump sigs.k8s.io/kubebuilder/v4 from 4.3.0 to 4.3.1 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4322 * 📖: Fix typo in CONTRIBUTING-ROLES.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4324 * :book: Fix readme wrong url your-own-plugin by @damsien in https://github.com/kubernetes-sigs/kubebuilder/pull/4325 * 📖 doc: add .github/SECURITY.md with further information by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4253 * 📖: update testdata reference by @emmanuel-ferdman in https://github.com/kubernetes-sigs/kubebuilder/pull/4328 * 📖 : Fix typo in contributing roles by @damsien in https://github.com/kubernetes-sigs/kubebuilder/pull/4329 * 🌱 : Fix `make remove-spaces` for GNU system by @damsien in https://github.com/kubernetes-sigs/kubebuilder/pull/4330 * 🌱 : Revert Fix `make remove-spaces` for GNU system" by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4331 * ✨ Upgrade controller-gen from v0.16.4 to v0.16.5 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4332 * 📖 Fix incorrect link address by @LJTian in https://github.com/kubernetes-sigs/kubebuilder/pull/4333 * 📖 Docs: removed typeDegradedMemcached and comment by @vtrenton in https://github.com/kubernetes-sigs/kubebuilder/pull/4335 * 📖 small fixes to extending_cli_features_and_plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4336 * 📖 Fix broken reference to project-file instead of project-file-config by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4337 * 📖 small fixes to extending_cli_features_and_plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4343 * 📖 fix : typo in README.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4349 * 📖 Fix: typo in external-plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4345 * 📖 small fixes to extending_cli_features_and_plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4338 * 📖 Fix: typo in external-plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4347 * 🐛 fix: (helm/v1-alpha): Remove extra space before the labels section by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4350 * 🐛 fix: (helm/alpha-v1): Fix rendered value for app.kubernetes.io/name by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4351 * 📖 Fix: missing url to plugin-utils in extending_cli_features_and_plug… by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4340 * 📖 Fix: broken urls in testing-plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4348 * 📖 update metrics documentation to bring more clarity by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4358 * 🌱 fix: run make generate to fix ci by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4353 * 📖 follow up of update metrics documentation to bring more clarity #4358 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4359 * 📖 add notice to make bring awareness to the need to move away and no longer use old images provide via the registry by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4363 * 📖 Readme: Make more clear notice about kube-rbac-proxy by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4364 * 📖 Update README.md - Fix layout from notice by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4365 * 📖 nit - remove spaces by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4366 * 🌱 Bump github.com/onsi/ginkgo/v2 from 2.21.0 to 2.22.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4367 * 🌱 fix file.Template to machinery.Template in the comments by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4339 * 🐛 fix: (helm/v1alpha1): add missing replicas field to the Deployment generated by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4356 * 🐛 fix: (helm/v1alpha1) add missing name prefix and namespace to leader-election-role and leader-election-rolebinding by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4357 * 🐛 fix: (helm/v1alpha1): env config should not be dependent on DeployImages by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4371 * 📖 Update discontinue_usage_of_kube_rbac_proxy.md - Typos/grammar fixes and use the right link for the new location of the images by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4374 * :seedling: Make `make remove-spaces` compatible with GNU and MAC OS X system by @damsien in https://github.com/kubernetes-sigs/kubebuilder/pull/4354 * 📖 Fix broken plugin URL in getting-started.md by @pengqun in https://github.com/kubernetes-sigs/kubebuilder/pull/4372 * 🐛 (helm/v1alpha): fix the default value of the force flag by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4375 * 📖 Fix: broken url in extending_cli_features_and_plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4341 * 📖 Fix: broken url in go-v4-plugin.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4352 * 📖 Fix: broken URL in external-plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4346 * ✨ (helm/v1alpha1): add GitHub action to make it easier to validate the chart generates by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4377 * 🐛 fix: ensure that GitHub actions are not overwritten by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4379 * 📖 Fix: broken url in extending_cli_features_and_plugins.md by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4344 * 📖 remove duplicated entry [plugin-subc], [plugin-sub-command] is the one being used by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4342 * 🐛 : (go/v4) fixes based on golangci-lint run -v by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4384 * 📖 Update roadmap_2024.md - Latest Status - Nov 2024 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4334 * 🐛 fix: (helm/v1alpha1): install the Prometheus-operator CRDs before installing a chart which configures a ServiceMonitor by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4383 * ✨ feat: (helm/v1alpha1): Allow ServiceAccount annotations to be configurable by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4380 * ✨ feat: (helm/v1alpha1): Allow extra pod labels to be configured by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4373 * ✨ (helm/v1alpha1): Add a step to render the chart in the GitHub Action by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4386 * ✨ (go/v4): Update actions to use go.mod for Go version management by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4385 * 🐛 fix: (helm/v1alpha1): Add missing prefixes in various k8s resources by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4388 * :seedling: remove everettraven from reviewers by @everettraven in https://github.com/kubernetes-sigs/kubebuilder/pull/4389 * :seedling: Bump github.com/onsi/gomega from 1.35.1 to 1.36.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4392 * :seedling: fix: centralize plugin key declaration by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4390 * :sparkles: (go/v4): Add Hub and Spoke for conversion webhooks by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4254 * 🐛 fix: (helm/v1alpha1): Use the ServiceAccount name defined in the values.yaml by @wjiec in https://github.com/kubernetes-sigs/kubebuilder/pull/4406 * ✨ feat: Automate ENVTEST version from go.mod by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4401 * ✨ (deployimage/v1alpha1): Improve error handling and pointer usage for value setting in controller by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4399 * :seedling: Bump golang.org/x/tools from 0.27.0 to 0.28.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4409 * :book: doc: validating and parsing CRD fields by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4396 * 📖 Update getting-started.md by @dsolerh in https://github.com/kubernetes-sigs/kubebuilder/pull/4413 * :sparkles: (go/v4): add support to inject conversion webhook for the marker +kubebuilder:scaffold:e2e-webhooks-checks by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4407 * 📖 [ISSUE-4414] Fix typo in getting-started.md by @jameskim0987 in https://github.com/kubernetes-sigs/kubebuilder/pull/4415 * 🐛 (kustomize/v2, go/v4): Fix ca injection for conversion webhooks by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4282 * 📖 [ISSUE-4417] Fix minor hyperlink formatting in `emptymain.go` by @jameskim0987 in https://github.com/kubernetes-sigs/kubebuilder/pull/4418 * 🐛 fix: (helm/v1alpha1): remove redundant condition in if clause by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4419 * :seedling: Bump github.com/onsi/gomega from 1.36.0 to 1.36.1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4421 * 🌱Build the kubebuilder binary before and use it to regenerate the helm chart by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4420 * ✨ feat: add webhook CertWatcher and flags for custom certificate configuration by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4429 * ✨ (go/v4): feat/fix: enhance cert-manager integration for metrics endpoints (follow-up to PR #4243) by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4400 * 🌱 : Ensure that golangci-lint CI version is passed for the templates by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4432 * 📖 Fix: move v2vsv3.md to the legacy folder and update references by @monteiro-renato in https://github.com/kubernetes-sigs/kubebuilder/pull/4431 * ✨ feat: enforce restricted Pod Security Context Compliance in testing by @lunarwhite in https://github.com/kubernetes-sigs/kubebuilder/pull/4435 * 🌱 Bump github.com/onsi/ginkgo/v2 from 2.22.0 to 2.22.1 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4436 * 🌱 add better description to MarshalYAML and UnmarshalYAML methods by @fengshunli in https://github.com/kubernetes-sigs/kubebuilder/pull/4438 * ✨ (kustomize/v2) feat: add app.kubernetes.io/name label to allow more precise configurations by @wjiec in https://github.com/kubernetes-sigs/kubebuilder/pull/4437 * 🌱 Bump github.com/onsi/gomega from 1.36.1 to 1.36.2 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4440 * 📖improve tutorial test docs by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4443 * 🌱improve Ginkgo/Gomega test style by @Sijoma in https://github.com/kubernetes-sigs/kubebuilder/pull/4426 * 🌱 (ci): Improve GitHub Action to linter samples under testdata by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4444 * ✨ (go/v4): Standardize the webhook and controller test suites by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4447 * ✨ Upgrade golangci-lint from v1.61.0 to v1.62.2 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4448 * 📖 (doc): Add "Kubebuilder Project Roadmap 2025" by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4316 * ✨ Upgrade scaffolds to use go 1.23 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4446 * 🌱 e2e - ensure that error from command is checked by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4452 * :seedling: Bump github.com/onsi/ginkgo/v2 from 2.22.1 to 2.22.2 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4455 * :seedling: fix: use Go version from go.mod file in CI by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4454 * 🌱 e2e tests improve assertions by simplify style of checks by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4456 * ✨ Upgrade controller-gen from v0.16.5 to v0.17.0 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4457 * 🌱 Add lint-config target to validate config and fix issues faced by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4458 * 🌱 Enable lint check empty-block and fix issues by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4459 * 🌱 Enable var-naming lint and fix issues for Kubebuilder CLI by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4460 * 🌱 Enable if-return linter check and fix issues for Kubebuilder CLI by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4461 * ✨ (go/v4): Add new makefile target to check and validate the linter config by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4462 * 🌱 Enable the lint to check exported methods and fix issues by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4463 * 🐛 (go/v4) Ensure that schemas are added before starting EnvTest-based suite tests for webhooks and controllers by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4466 * 🌱 Enable govet settings and fix the issue found by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4465 * 🌱 simplify E2E Book Samples job by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4469 * 🌱 fix: remaining Go upgrades by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4470 * 🌱 fix: remove unused nolint comments by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4468 * 🌱 Bump golang.org/x/tools from 0.28.0 to 0.29.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4473 * 🐛 e2e-tests: cleanup by removing calls to call make generate and manifests by @mateusoliveira43 in https://github.com/kubernetes-sigs/kubebuilder/pull/4471 * 🌱 Bump github.com/spf13/afero from 1.11.0 to 1.12.0 by @dependabot in https://github.com/kubernetes-sigs/kubebuilder/pull/4480 * ✨ Upgrade controller-runtime v0.19.1 to v0.19.4 by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4482 * 🐛 (helm/v1alpha1) - fix webhooks generation by removing data from helm chart values by @camilamacedo86 in https://github.com/kubernetes-sigs/kubebuilder/pull/4451 ## New Contributors * @emmanuel-ferdman made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4328 * @LJTian made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4333 * @pengqun made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4372 * @wjiec made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4406 * @dsolerh made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4413 * @jameskim0987 made their first contribution in https://github.com/kubernetes-sigs/kubebuilder/pull/4415 **Full Changelog**: https://github.com/kubernetes-sigs/kubebuilder/compare/v4.3.1...master