Skip to content

Releases: kubernetes-sigs/kubebuilder

v3.14.2

27 Apr 08:26
d7b4feb
Compare
Choose a tag to compare

v3.14.2

changes since v3.14.1

✨ New Features

  • (go/v4): Upgrade controller-runtime dependency from v0.17.2 to v0.17.3 (#3882)
  • (go/v4): Upgrade golangci from 1.54 to 1.57 by (#3846)
  • (go/v4): (To address deprecation): Replace deadline in favor of timeout in golangci-lint configuration (#3865)
  • (kustomize/v2): Add CRD viewer and editor roles in rbac/kustomization.yaml (#3800)
  • (go/v4): Upgrade cert-manager version used from v1.5.3 to v1.14.4 in the e2e tests scaffolded (#3839)
  • (go/v4): Upgrade Prometheus version used in the tests from v0.68.0 to v0.72.0 in the e2e tests scaffolded (#3840)
  • (go/v4): Upgrade gcr.io/kubebuilder/kube-rbac-proxy image from v0.15.0 to v0.16.0 (#3833).

⚠️ IMPORTANT: Please note that kube-rbac-proxy is now deprecated and will be discontinued in a future release.

If you want to still using this project, it is recommended that you switch to the images directly provided by the project. For more details, please refer to the project’s image repository.

The Kubebuilder can no longer support the promotion and building of these images. All images previously built and promoted will no longer be available starting April 22, 2025. This change may impact your production workloads if they rely on these images. (gcr.io/kubebuilder/kube-rbac-proxy:<all>)

For more information, please review the proposal to Discontinue Kube RBAC Proxy in Default Kubebuilder Scaffolding.

🐛 Bug Fixes

  • (go/v4): Add comment to clarify that webhooks path in the marker values should not be changed (#3877)
  • (go/v4): Fix Invalid leader election ID generated when domain is empty (#3876)
  • (kustomize/v2, go/v4): Fix labels according to conventions. Follow-up of PR 3797 (#3857)
  • (go/v4,kustomize/v2): Fix roles names for projects with multi-group layout (#3845)
  • (go/v4,kustomize/v2): Fix the CRD kustomization path logic to ensure webhook patches are generated exclusively for resources that are configured with webhooks (#3838)
  • (go/v4,kustomize/v2): Fix resource path generation for resources without a specified group (#3837)
  • (kustomize/v2, go/v4): Fix labels according to conventions. Address change in missing files. It is a follow-up of the PR #3797 (#3857)

🎉 Thanks to all our contributors!

What's Changed (Full Changelog)

New Contributors

Full Changelog: v3.14.1...v3.14.2

v3.14.1

30 Mar 09:26
cc338d7
Compare
Choose a tag to compare

v3.14.1

changes since v3.14.0

✨ New Features

  • (go/v4): Upgrade controller-runtime from v0.17.0 to v0.17.2 (#3827)

🐛 Bug Fixes

  • (go/v4): Remove trailing whitespace from Readme which is scaffold for the project (#3813)
  • (go/v4): Fix compatibility issues encountered while setting up EnvTest binaries by using the controller-runtime branch releases (#3824).
  • (kustomize/v2, go/v4, deploy-image/v1-alpha): Fix labels according to conventions and conveys. app.kubernetes.io/name now have the ProjectName and the labels app.kubernetes.io/instance, app.kubernetes.io/component, app.kubernetes.io/created-by, app.kubernetes.io/part-of were removed (#3797)
  • (go/v4): Fix makefile target build-installer to discarding the previous content (#3766)
  • (go/v4): Fix scaffolding e2e template by adding missing errors checks (#3786)
  • (go/v4): Fix makefile target build-installer to discarding the previous content (#3766)
  • (go/v4): Fix rules to allow create new APIs by reverting the PR( #3742 ) (#3787)

🎉 Thanks to all our contributors!

What's Changed (Full Changelog)

  • 📖 docs updates for external types and submodule-layouts by @jakobmoellerdev in #3055
  • 🐛 (go/v4) Fix makefile target build-installer to discarding the previous content by @lukas016 in #3766
  • 📖 Clean up getting started docs by @stmcginnis in #3758
  • 📖 Update Contrbuting.MD by @camilamacedo86 in #3769
  • 📖 Fix #the reference link by @wastelife in #3771
  • 📖 Simplify if condition in cronjob tutorial by @lpugoy in #3765
  • 📖 Typo multi-version tutorial deployment.md by @tatehanawalt in #3770
  • 📖 Fix typo in cronjob-tutorial by @awalvie in #3773
  • 🌱 Bump sigs.k8s.io/kubebuilder/v3 from 3.13.0 to 3.14.0 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in #3774
  • 🌱 Bump golangci/golangci-lint-action from 3 to 4 by @dependabot in #3778
  • 📖 Add context to handler func by @vladfr in #3777
  • 🌱 Bump golang.org/x/tools from 0.17.0 to 0.18.0 by @dependabot in #3779
  • 🐛 Revert ":bug: Align CRD version validation with apiextensions" by @camilamacedo86 in #3787
  • 🐛 scaffolding e2e template err check by @domcyrus in #3786
  • 📖 Specify what is run and deployed by @letthefireflieslive in #3788
  • 📖 Add the Admission webhooks link in docs/book/src/reference/admisson-webhook.md by @renormalize in #3799
  • 🐛(kustomize/v2, go/v4, deploy-image/v1-alpha): Fix labels according to conventions and conveys. app.kubernetes.io/name now have the ProjectName and the labels app.kubernetes.io/instance, app.kubernetes.io/component, app.kubernetes.io/created-by, app.kubernetes.io/part-of were removed by @sarthaksarthak9 in #3797
  • 🌱 Bump github.com/onsi/gomega from 1.31.1 to 1.32.0 by @dependabot in #3820
  • 🐛 Fix compatibility issues encountered while setting up envtest by using the controller-runtime branch releases (unblock CI) by @camilamacedo86 in #3824
  • 📖 : (README) Fix slack channel access address by @uos-ljtian in #3818
  • 🐛 fix make build-installer command to remove CRD duplication by @mateusoliveira43 in #3814
  • 🐛 fix: Remove empty line at beginning of generated files by @mateusoliveira43 in #3815
  • 📖 Fix typo issue in the docs by @mcbenjemaa in #3803
  • 📖 Add missing basic-project-doc link by @semihbkgr in #3806
  • 🌱 Add prefix to bot PR title to respect community rule by @Kavinjsir in #3810
  • 🌱 Bump golang.org/x/tools from 0.18.0 to 0.19.0 by @dependabot in #3817
  • 🌱 Bump github.com/onsi/ginkgo/v2 from 2.15.0 to 2.17.1 by @dependabot in #3822
  • 🌱 Remove trailing whitespace in readme gen by @bzub in #3813
  • 🌱 Remove trailing spaces in the docs and add check as automate fix to the make generate by @camilamacedo86 in #3826
  • ✨ Upgrade controller-runtime from v0.17.0 to v0.17.2 by @camilamacedo86 in #3827

New Contributors

Full Changelog: v3.14.0...v3.14.1

v3.14.0

30 Jan 09:29
1105363
Compare
Choose a tag to compare

changes since v3.13.0

✨ New Features

  • (go/v4): Upgrade dependencies to Support k8s 1.29 ( #3749 )
    • Upgrade from k8s 1.28 to 1.29
    • Upgrade controller runtime from 0.16.13 to 0.17.0
    • Upgrade controller tools from 0.13.0 to 0.14.0
  • (kustomize/v2, go/v4): Upgrade kustomize from v5.2.1 to v5.3.0 ( #3751 )
  • (CLI, go/v4) - Add support to go 1.21 ( #3745 )
  • (go/v4): Add tests for the webhooks and controllers which are created so that the suite test is no longer ignored ( #3631 )
  • (go/v4): Add e2e tests scaffolded in default layout( #3670 )
  • (go/v4): Ensure versioning of tools and binaries installed via Makefile ( #3718 )
  • (CLI - Binary) - Start to build CLI binary for Linux s390x ( #3741 )
  • (go/v4): Add method to allow users to distribute the project ( #3626 )
  • Change Kind (CRD) version validation to use the same API extensions validation to be more permissive ( #3742 )

🐛 Bug Fixes

  • (go/v3, go/v4) Disable HTTP2 for webhook server and metrics to address CVE-2023-39325 HTTP/2 rapid reset can cause excessive work in net/HTTP ( #3734 )
  • (go/v4): Fix make help instruction in the README ( #3719 )
  • (go/v4): Fix comments and typo issues in the .gitignore ( #3717 )
  • (go/v4): Standardize 'AS' Keyword Capitalization in Dockerfile for Clarity ( #3727 )

🎉 Thanks to all our contributors!

What's Changed (Full Changelog)

New Contributors

Full Changelog: v3.13.0...v3.14.0

v3.13.0

02 Nov 20:43
c8a7cc5
Compare
Choose a tag to compare

changes since v3.12.0

✨ New Features

  • Upgraded controller-runtime from v0.16.0 to v0.16.3 ( #3597, #3625, #3665 )
  • Added golangci integration to the default scaffold ( #3600 )
  • Allowed customization of golangci-lint version in the Makefile ( #3642 )
  • Upgraded k8s version from v0.28.1 to v0.28.3 to address CVE-2023-44487 ( #3665 )
  • Upgraded kustomize version from v5.1.1 to v5.2.1 ( #3661 )
  • Upgraded gcr.io/kubebuilder/kube-rbac-proxy container image version from v0.14.1 to v0.15.0 ( #3665 )

🐛 Bug Fixes

  • Disabled log timestamp ( #3619 )
  • Fixed readme content and instructions ( #3628 )
  • Fixed yamllint warnings in the scaffolds done under config ( #3634 )
  • Fixed uncomment kustomize files config accordingly when webhooks are generated ( #3629 )
  • Fixed role and kustomize build when no CRDs are added to the project ( #3627 )
  • Stopped generating crd webhooks patches and injections for any CRD/API and projects without webhooks ( #3647 )
  • Removed the use of deprecated patchesStrategicMerge ( #3661 )

Thanks to all our contributors!

What's Changed

New Contributors

Full Changelog: v3.12.0...v3.13.0

v3.12.0

06 Sep 06:03
b48f95c
Compare
Choose a tag to compare

changes since v3.11.1

⚠️ Breaking Changes

  • Deprecation of the Declarative Plugin (declarative/v1) (#3395):

The Declarative plugin (declarative/v1) is an implementation derived from the kubebuilder-declarative-pattern project. As the project maintainers possess the most comprehensive knowledge about its changes and Kubebuilder allows the creation of custom plugins using its library, it has been decided that this plugin will be better maintained within the kubebuilder-declarative-pattern project itself, which falls under its domain of responsibility. This decision aims to improve the maintainability of both the plugin and Kubebuilder, ultimately providing an enhanced user experience. To follow up on this work, please refer to the issue #293.

  • (go/v4): Upgrade k8s 1.27.1 to 1.28.0 and controller-runtime from 0.15.0 to 0.16.0 (#3570)

Controller-runtime has breaking changes see the release notes of the version v0.16.0 . Following the changes required to be introduced in the main.go and in the webhook_suite_test.go:

✨ New Features

  • (kustomize/v2, go/v4) upgrade kustomize version from 5.0.1 to 5.1.1 (#3587)
  • (kustomize/v2, go/v4): upgrade controller-tools from 0.12.0 to 0.13.0 (#3561)
  • (CLI): Standardization of Logs using Library logrus ( replace of fmt.Print ) (#3571)
  • Alpha Command to re-scaffold project (kubebuilder alpha generate) improvements:
    • Add support to deployImage plugin (#3544)
    • Improve logs (#3556)
    • Add support to Grafana Plugin (#3503) (#3509)
    • Add support to Webhooks (#3497)
    • Add support to Create API fields (#3489)
    • Add support to multigroup (#3487)
  • (API): Export config struct to be available for external plugin (#3554)
  • (go/v4): Add .vscode to autogenerated .gitignore files (#3480)

🐛 Bug Fixes

  • (kustomize/v2,go/v4): fix kustomization yaml's webhooks patches file names for multgroup layouts (#3580)
  • (CLI) change deprecated warning to yellow (#3563)
  • (deployimage/v1-beta1): fix scaffold with multigroup and and add optional plugins to multigroup sample to validate changes (#3560)
  • (go/v4): fix makefile target to build images ensuring its single responsibility (#3353)
  • (go/v4): fix grammar in scaffolded makefiles (#3542)
  • (API): Ensure external plugin can scaffold files in new directories (#3519)
  • (CLI): Fix completion in deprecated projects (#3474)
  • (go/v4, deployImage): fix scaffold to allow run the tests directly. Currently, is only possible run via the makefile targets (#3365)
  • (CLI) Fix issue found to re-generate the scaffolds with the new alpha command (#3461)
  • (go/v4,kustomize/v2): Fix kustomize syntax during conversion to patches by (#3456)
  • (go/v4, deployImage): fix scaffold to allow run the tests directly. (#3365)
  • (go/v4): fix makefile target to build images without run the tests (#3353)
  • (go/v4): Start to check ENABLE_WEBHOOKS envvar into main.go to fix issue when webhooks are used (#3578)
  • (kustomize/v2,go/v4): fix kustomization yaml's webhooks patches file names for multgroup layouts (#3580)

🎉 Thanks to all our contributors!

New Contributors

Full Changelog

  • 🐛 Fix kustomize syntax during conversion to patches by @mjlshen in #3456
  • 🐛 Add .vscode to autogenerated .gitignore files by @programmer04 in #3480
  • 🌱 build(deps): bump sigs.k8s.io/kubebuilder/v3 from 3.10.0 to 3.11.0 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in #3477
  • 🐛 Fix issue found to re-generate the scaffolds with the new alpha command and adding e2e tests by @yyy1000 in #3461
  • ✨ Add multigroup flag in alpha generate subcommand by @yyy1000 in #3487
  • 🌱 build(deps): bump sigs.k8s.io/kubebuilder/v3 from 3.11.0 to 3.11.1 in /docs/book/src/simple-external-plugin-tutorial/testdata/sampleexternalplugin/v1 by @dependabot in #3485
  • 🌱 build(deps): bump golang.org/x/tools from 0.10.0 to 0.11.0 by @dependabot in #3493
  • 📖 Updates extending kubebuilder docs to use NewBundleWithOptions by @sklarsa in #3490
  • ✨ Add API fields in alpha generate subcommand by @yyy1000 in #3489
  • ✨ Add Webhooks in alpha generate subcommand by @yyy1000 in #3497
  • 📖 : Update README.md - Community Meetings by @camilamacedo86 in #3498
  • 🐛(go/v4, deployImage): fix scaffold to allow run the tests directly. Currently, is only possible run via the makefile targets by @camilamacedo86 in #3365
  • 🌱 Update security contacts by @camilamacedo86 in #3407
  • ✨ Add Grafana Plugin migration in alpha generate subcommand -- Step 1 by @yyy1000 in #3503
  • 📖 Fix typo in scaffold plugins docs by @micahyoung in #3504
  • 📖 Docs update quick-start.md use "kubectl -k apply" by @csantanapr in #3500
  • 🌱 build(deps): bump github.com/onsi/gomega from 1.27.8 to 1.27.10 by @dependabot in #3507
  • 📖 : apply kustomize dir with correct flags by @Kavinjsir in #3510
  • 🌱 Update destroy function by @Sajiyah-Salat in #3508
  • ✨ Add Grafana Plugin migration in alpha generate subcommand -- Step 2 by @yyy1000 in #3509
  • 📖 Add tutorial for external plugin by @Eileen-Yu in #3488
  • 🐛 fix(completion): Fix completion in deprecated projects by @BronzeDeer in #3474
  • 🌱 build(deps): bump golang.org/x/tools from 0.11.0 to 0.12.0 by @dependabot in #3527
  • 📖 chore(docs): change folder pkg to internal/controller in the migratio… by @Benjaminvdv in #3517
  • 🐛 Ensure external plugin can scaffold files in new directories by @Eileen-Yu in #3519
  • 🌱 Image name edge cases covered by @Sajiyah-Salat in #3514
  • 🌱 logs info updated by @Sajiyah-Salat in #3512
  • 🐛 fix doc preview by @camilamacedo86 in #3535
  • 🐛: sync kb binary from source code for docs by @Kavinjsir in #3520
  • 🐛 fix grammar in scaffolded makefiles by @typeid in #3542
  • 📖 fix escaped html in markdown code segments by @typeid in #3541
  • 🐛 (go/v4) fix makefile target to build images ensuring its single responsibility by @camilamacedo86 in #3353
  • ✨ Externalize config struct to be available for external plugin by @Eileen-Yu in #3554
  • 🌱 : (deployimage): fix e2e tests which are using go/v3 which is dep… by @camilamacedo86 in #3565
  • 🌱 ensure that we call go tidy, make manifests and all when we generate… by @camilamacedo86 in #3564
  • ✨ (Kustomize/v2, go/v4): upgrade controller-tools from 0.12.0 to 0.13.0 by @Kavinjsir in #3561
  • ✨ improve logs from alpha command generate by @camilamacedo86 in #3556
  • 🐛 (deployimage/v1-beta1): fix scaffold with multigroup and and add optional plugins to multigroup sample to validate changes by @camilamacedo86 in https://g...
Read more

v3.11.1

03 Jul 13:10
1dc8ed9
Compare
Choose a tag to compare

changes since v3.11.0

🐛 Bug Fixes

  • (go/v4, kutomize/v2): Fix kustomize syntax during conversion to patches by @mjlshen in #3456
  • Add .vscode to autogenerated .gitignore files by @programmer04 in #3480

New Contributors

Full Changelog: v3.11.0...v3.11.1

v3.11.0

20 Jun 19:19
3a3d1d9
Compare
Choose a tag to compare

changes since v3.10.0

⚠️ Breaking Changes

  • Deprecation of ComponentConfig. Note that Kubebuilder is no longer able to ensure that it is functioning as intended. For further information see: #3469 (#3442, #3467 )
  • (API) deprecate the old func to create a new BundlePlugin in favour of the new one, which uses as arg BundleOptions (#3360)
  • (go/v4): Upgrade controller-runtime and k8s dependencies to support k8s 1.27 (#3444). Be aware that controller-runtime version v0.15.0 has significant breaking changes which affects webhooks.

✨ New Features

  • (API): Make external plugin path configurable (#3437)
  • (deployImage/v1alpha) improve the controller tests scaffolded (#3364)
  • (go/v4): Allows kubectl to be configured in Makefile (#3430)
  • (go/v4): Updated Makefile to support go install kustomize (#3398)
  • (go/v4): Allows container tool to be configured in Makefile (#3371)
  • (go/v4): Upgrade binaries used for controller tests (ENVTEST_K8S_VERSION) from k8s version 1.26.1 to 1.27.1 (#3383)
  • (API and go/v4): Upgrade go version to 1.20 (#3355)
  • (go/v4): Upgrade image gcr.io/kubebuilder/kube-rbac-proxy from v0.13.1 to v0.14.1 (#3358)

🐛 Bug Fixes

  • (go/v4): Fixes headers scaffolded when license selected is of none type (#3391)
  • (go/v4): Fixes issue faced when no boilerplate file exist (#3378)
  • (go/v4, deployimage): Fixes the name of test functions (#3363)
  • (go/v4): Remove bintest dir from gitignore and dockerfile since this directory is not scaffolded (#3359)
  • (kustomize/v1, kustomize/v2): remove multi arch node affinity patch from auth proxy (#3311)
  • (kustomize/v2) Remove deprecated syntax usage by replacing patchesStrategicMerge with patches (#3374)

Thanks to all our contributors!

New Contributors

Full Changelog

Read more

v3.10.0

15 Apr 08:10
0fa5740
Compare
Choose a tag to compare

changes since v3.9.0

⚠️ Breaking Changes

  • (kustomize/v2-alpha, go/v4-alpha): Upgrade kustomize from 4.5.7 to 5.0.0 by @Eileen-Yu in #3199
  • (kustomize/v2) Stabilize plugin. kustomize/v2-alpha was replaced with kustomize/v2 by @camilamacedo86 in #3234
  • (go/v4-alpha) Stabilize plugin. go/v4-alpha was replaced with go/v4
  • (API) fix to allow bundle plugin to have deprecation message by @camilamacedo86 in #3276

What do you need to do?

  • If you created your project with go/v4-alpha plugin previously: You must update the PROJECT config to replace go.kubebuilder.io/v4-alpha with go.kubebuilder.io/v4. Because you have been using an alpha version stabilized on this release, we recommend you check the migration guide to verify if you need more changes in the layout of your project. (More info)

  • If you are consuming Kubebuilder as a dependency in your project and creating plugins using the Bundle Plugin(s): Please ensure that you will inform a deprecated message when it is deprecated or use an empty string when it is not. See that we must change the NewBundle(...args) implementation to address a bug fix to allow the Bundle Plugin(s) to have deprecation messages (#3276).

✨ New Features

🐛 Bug Fixes

  • (API - External Plugins): fix populate PluginRequest.Universe which is empty by @em-r in #3223
  • (API - External Plugins): Fix external plugin discovery on Linux by @em-r in #3247
  • (go/v4-alpha) stabilize go/v4 plugin. Plugin go/v4-alpha replaced with go/v4 by @camilamacedo86 in #3237
  • (go/v3, go/v4] Remove stale imports by @varshaprasad96 in #3270
  • deprecate message for go/v3 plugin by @camilamacedo86 in #3277

New Contributors

Full Changelog

compare changelog since v3.9.0: v3.9.0...v3.10.0

Read more

v3.9.1

08 Mar 21:25
cbccafa
Compare
Choose a tag to compare

changes since v3.9.0

🐛 Bug Fixes

  • (go/v3, go/v4) Remove stale imports by @varshaprasad96
  • (API) Clarify deprecate documentation for API methods which are served to work with CRD/WebHook API versions v1beta1 (#3261) by @varshaprasad96

🎉 Thanks to all our contributors!

v3.9.0

16 Jan 17:21
26f605e
Compare
Choose a tag to compare

changes since v3.8.0

⚠️ Breaking Changes

IMPORTANT: Suppose you scaffold your project using the plugin go/v4-alpha (you can check it by looking at the PROJECT file config). In that case, you must follow the steps described in the migration guide under the section Migrating to the new layout to update your project prior using this version.

✨ New Features

  • (go/v3, go/v4-alpha): Improve README scaffolded for the projects by @mdb ( #3122 )
  • (go/v2, go/v3, go/v4-alpha): Add comment into the PROJECT file config to clarify its purpose by @jason1028kr ( #3137 )
  • (go/v3, go/v4-alpha): Upgrade Kubernetes dependencies from 1.25 to 1.26 by @camilamacedo86 ( #3147 )
  • (go/v3, go/v4-alpha): Controller-Runtime from v0.13.1to v0.14.1 by @camilamacedo86 ( #3147 )
  • (go/v3, go/v4-alpha): ControllerToolsVersion from v0.10.0 to v0.11.1 by @camilamacedo86 ( #3147 )
  • (declarative/v1): Update the sigs.k8s.io/kubebuilder-declarative-pattern from e0605f0e1a40f97293cb3773f57de695c8bc76af to 18dbaf5fcd851e6adc3f2f8a8facb669a1420797 by @camilamacedo86 ( #3147 )

🎉 Thanks to all our contributors!

New Contributors