Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

✨ pkg/crd: support validating internal list items on list types #898

Merged
merged 1 commit into from
Apr 3, 2024

Conversation

AlexanderYastrebov
Copy link
Contributor

For #342

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Mar 27, 2024
@k8s-ci-robot
Copy link
Contributor

Hi @AlexanderYastrebov. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@k8s-ci-robot k8s-ci-robot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Mar 27, 2024
@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Mar 27, 2024
@AlexanderYastrebov AlexanderYastrebov changed the title pkg/crd: support validating internal list items on list types ✨ pkg/crd: support validating internal list items on list types Mar 27, 2024
@AlexanderYastrebov

This comment was marked as outdated.

// This tests string slice item validation.
// +kubebuilder:validation:ItemMinLength=1
// +kubebuilder:validation:ItemMaxLength=255
// +kubebuilder:validation:ItemPattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?([.][a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it be possible to do something like this:

Suggested change
// +kubebuilder:validation:ItemPattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?([.][a-z0-9]([-a-z0-9]*[a-z0-9])?)*$
// +kubebuilder:validation:items:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?([.][a-z0-9]([-a-z0-9]*[a-z0-9])?)*$

and then internally re-use the existing validations rather than duplicating all of them?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, I've created #899

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AlexanderYastrebov can you please update your existing PR rather than creating a new one for every change? Otherwise the whole discussion is spread up among a ton of PR and hard to follow-up on later on.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I closed this and previous as they use different approaches.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AlexanderYastrebov that doesn't matter, please update the existing PR so there is one place that has the history of the discussion

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can not reopen this closed PR fro some reason, I'll take a note for the next time I contribute.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, I think I managed to reopen it.

// The XIntOrString marker is a requirement for having a pattern on this type.
// +kubebuilder:validation:items:XIntOrString
// +kubebuilder:validation:items:Pattern="^((100|[0-9]{1,2})%|[0-9]+)$"
IntOrStringArrayWithAPattern []*intstr.IntOrString `json:"intOrStringArrayWithAPattern,omitempty"`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you also add some testcases for validations on slices that validate the slice as a whole instead of items, please? I will try to review this over the weekend

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added kubebuilder:validation:MinItems to Hosts to test the mix and also added StringPair test.

@JoelSpeed
Copy link
Contributor

Seems a lot cleaner than the original approach, and much less ambiguous as well, thanks for taking on board the UX feedback

@alvaroaleman
Copy link
Member

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Mar 30, 2024
Copy link
Member

@alvaroaleman alvaroaleman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good me, thanks for making this happen!
/hold
So @vincepri and @sbueringer get a chance to have a look

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Mar 30, 2024
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: AlexanderYastrebov, alvaroaleman

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 30, 2024
@sbueringer
Copy link
Member

Thank you very much!

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Apr 3, 2024
@k8s-ci-robot
Copy link
Contributor

LGTM label has been added.

Git tree hash: 2675a16639d6ba6de5ad5535a6fe8134a147caad

@alvaroaleman
Copy link
Member

/hold cancel

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Apr 3, 2024
@k8s-ci-robot k8s-ci-robot merged commit 6bbabbc into kubernetes-sigs:master Apr 3, 2024
3 checks passed
@AlexanderYastrebov AlexanderYastrebov deleted the fix-342-2 branch April 3, 2024 15:01
@AlexanderYastrebov
Copy link
Contributor Author

@alvaroaleman @sbueringer Thank you 🙏

renovate bot referenced this pull request in aenix-io/etcd-operator Apr 22, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change | Age | Adoption | Passing |
Confidence |
|---|---|---|---|---|---|---|---|
| [actions/checkout](https://togithub.com/actions/checkout) | action |
patch | `v4.1.1` -> `v4.1.3` |
[![age](https://developer.mend.io/api/mc/badges/age/github-tags/actions%2fcheckout/v4.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/actions%2fcheckout/v4.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/actions%2fcheckout/v4.1.1/v4.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/actions%2fcheckout/v4.1.1/v4.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [github.com/google/uuid](https://togithub.com/google/uuid) | require |
minor | `v1.3.1` -> `v1.6.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fgoogle%2fuuid/v1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fgoogle%2fuuid/v1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fgoogle%2fuuid/v1.3.1/v1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fgoogle%2fuuid/v1.3.1/v1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [hugo-extended](https://togithub.com/jakejarvis/hugo-extended) |
devDependencies | patch | [`0.125.1` ->
`0.125.2`](https://renovatebot.com/diffs/npm/hugo-extended/0.125.1/0.125.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/hugo-extended/0.125.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/hugo-extended/0.125.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/hugo-extended/0.125.1/0.125.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/hugo-extended/0.125.1/0.125.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [k8s.io/client-go](https://togithub.com/kubernetes/client-go) |
require | minor | `v0.29.3` -> `v0.30.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/k8s.io%2fclient-go/v0.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/k8s.io%2fclient-go/v0.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/k8s.io%2fclient-go/v0.29.3/v0.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/k8s.io%2fclient-go/v0.29.3/v0.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[kubernetes-sigs/controller-tools](https://togithub.com/kubernetes-sigs/controller-tools)
| | minor | `v0.14.0` -> `v0.15.0` |
[![age](https://developer.mend.io/api/mc/badges/age/github-tags/kubernetes-sigs%2fcontroller-tools/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/kubernetes-sigs%2fcontroller-tools/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/kubernetes-sigs%2fcontroller-tools/v0.14.0/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/kubernetes-sigs%2fcontroller-tools/v0.14.0/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>actions/checkout (actions/checkout)</summary>

###
[`v4.1.3`](https://togithub.com/actions/checkout/releases/tag/v4.1.3)

[Compare
Source](https://togithub.com/actions/checkout/compare/v4.1.2...v4.1.3)

#### What's Changed

- Update `actions/checkout` version in `update-main-version.yml` by
[@&#8203;jww3](https://togithub.com/jww3) in
[https://github.com/actions/checkout/pull/1650](https://togithub.com/actions/checkout/pull/1650)
- Check git version before attempting to disable `sparse-checkout` by
[@&#8203;jww3](https://togithub.com/jww3) in
[https://github.com/actions/checkout/pull/1656](https://togithub.com/actions/checkout/pull/1656)
- Add SSH user parameter by
[@&#8203;cory-miller](https://togithub.com/cory-miller) in
[https://github.com/actions/checkout/pull/1685](https://togithub.com/actions/checkout/pull/1685)

**Full Changelog**:
actions/checkout@v4.1.2...v4.1.3

###
[`v4.1.2`](https://togithub.com/actions/checkout/blob/HEAD/CHANGELOG.md#v412)

[Compare
Source](https://togithub.com/actions/checkout/compare/v4.1.1...v4.1.2)

- Fix: Disable sparse checkout whenever `sparse-checkout` option is not
present [@&#8203;dscho](https://togithub.com/dscho) in
[https://github.com/actions/checkout/pull/1598](https://togithub.com/actions/checkout/pull/1598)

</details>

<details>
<summary>google/uuid (github.com/google/uuid)</summary>

### [`v1.6.0`](https://togithub.com/google/uuid/releases/tag/v1.6.0)

[Compare
Source](https://togithub.com/google/uuid/compare/v1.5.0...v1.6.0)

##### Features

- add Max UUID constant
([#&#8203;149](https://togithub.com/google/uuid/issues/149))
([c58770e](https://togithub.com/google/uuid/commit/c58770eb495f55fe2ced6284f93c5158a62e53e3))

##### Bug Fixes

- fix typo in version 7 uuid documentation
([#&#8203;153](https://togithub.com/google/uuid/issues/153))
([016b199](https://togithub.com/google/uuid/commit/016b199544692f745ffc8867b914129ecb47ef06))
- Monotonicity in UUIDv7
([#&#8203;150](https://togithub.com/google/uuid/issues/150))
([a2b2b32](https://togithub.com/google/uuid/commit/a2b2b32373ff0b1a312b7fdf6d38a977099698a6))

### [`v1.5.0`](https://togithub.com/google/uuid/releases/tag/v1.5.0)

[Compare
Source](https://togithub.com/google/uuid/compare/v1.4.0...v1.5.0)

##### Features

- Validate UUID without creating new UUID
([#&#8203;141](https://togithub.com/google/uuid/issues/141))
([9ee7366](https://togithub.com/google/uuid/commit/9ee7366e66c9ad96bab89139418a713dc584ae29))

### [`v1.4.0`](https://togithub.com/google/uuid/releases/tag/v1.4.0)

[Compare
Source](https://togithub.com/google/uuid/compare/v1.3.1...v1.4.0)

##### Features

- UUIDs slice type with Strings() convenience method
([#&#8203;133](https://togithub.com/google/uuid/issues/133))
([cd5fbbd](https://togithub.com/google/uuid/commit/cd5fbbdd02f3e3467ac18940e07e062be1f864b4))

##### Fixes

- Clarify that Parse's job is to parse but not necessarily validate
strings. (Documents current behavior)

</details>

<details>
<summary>jakejarvis/hugo-extended (hugo-extended)</summary>

###
[`v0.125.2`](https://togithub.com/jakejarvis/hugo-extended/compare/v0.125.1...v0.125.2)

[Compare
Source](https://togithub.com/jakejarvis/hugo-extended/compare/v0.125.1...v0.125.2)

</details>

<details>
<summary>kubernetes/client-go (k8s.io/client-go)</summary>

###
[`v0.30.0`](https://togithub.com/kubernetes/client-go/compare/v0.29.4...v0.30.0)

[Compare
Source](https://togithub.com/kubernetes/client-go/compare/v0.29.4...v0.30.0)

###
[`v0.29.4`](https://togithub.com/kubernetes/client-go/compare/v0.29.3...v0.29.4)

[Compare
Source](https://togithub.com/kubernetes/client-go/compare/v0.29.3...v0.29.4)

</details>

<details>
<summary>kubernetes-sigs/controller-tools
(kubernetes-sigs/controller-tools)</summary>

###
[`v0.15.0`](https://togithub.com/kubernetes-sigs/controller-tools/releases/tag/v0.15.0)

[Compare
Source](https://togithub.com/kubernetes-sigs/controller-tools/compare/v0.14.0...v0.15.0)

#### What's Changed

- ✨ Markers can now indicate their priority when applying by
[@&#8203;dprotaso](https://togithub.com/dprotaso) in
[https://github.com/kubernetes-sigs/controller-tools/pull/706](https://togithub.com/kubernetes-sigs/controller-tools/pull/706)
- ✨ crd: support validating internal list items on list types
by [@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov)
in
[https://github.com/kubernetes-sigs/controller-tools/pull/898](https://togithub.com/kubernetes-sigs/controller-tools/pull/898)
- ✨ crd: allow specifying spec.preserveUnknownFields by
[@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov) in
[https://github.com/kubernetes-sigs/controller-tools/pull/912](https://togithub.com/kubernetes-sigs/controller-tools/pull/912)
- ✨ crd: add messageExpression support to XValidation marker by
[@&#8203;pmalek](https://togithub.com/pmalek) in
[https://github.com/kubernetes-sigs/controller-tools/pull/927](https://togithub.com/kubernetes-sigs/controller-tools/pull/927)
- ✨ Fix deprecations by [@&#8203;zchee](https://togithub.com/zchee) in
[https://github.com/kubernetes-sigs/controller-tools/pull/882](https://togithub.com/kubernetes-sigs/controller-tools/pull/882)
- 🌱 Update golangci-lint, Makefile, Actions by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/902](https://togithub.com/kubernetes-sigs/controller-tools/pull/902)

#### envtest

- ✨ Build and publish Kubernetes envtest tools as packages by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/906](https://togithub.com/kubernetes-sigs/controller-tools/pull/906)
- ✨ Add github action to package envtest binaries in releases by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/908](https://togithub.com/kubernetes-sigs/controller-tools/pull/908)
- 🌱 Adjust branches for github actions by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/918](https://togithub.com/kubernetes-sigs/controller-tools/pull/918)
- 🌱 Automatically release, fixup selfLink in camelCase by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/921](https://togithub.com/kubernetes-sigs/controller-tools/pull/921)
- ✨ Release envtest v1.28.0 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/919](https://togithub.com/kubernetes-sigs/controller-tools/pull/919)
- 🌱 Promotion of envtest release for Kubernetes v1.28.0 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/920](https://togithub.com/kubernetes-sigs/controller-tools/pull/920)
- ✨ Release envtest-v1.29.4 by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/922](https://togithub.com/kubernetes-sigs/controller-tools/pull/922)
- 🌱 Promotion of envtest release for Kubernetes v1.29.4 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/923](https://togithub.com/kubernetes-sigs/controller-tools/pull/923)
- ✨ Release envtest v1.30.0 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/924](https://togithub.com/kubernetes-sigs/controller-tools/pull/924)
- 🌱 Promotion of envtest release for Kubernetes v1.30.0 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/925](https://togithub.com/kubernetes-sigs/controller-tools/pull/925)

#### Dependency bumps

- 🌱 Bump go version from 1.20 to 1.21 by
[@&#8203;SuperSandro2000](https://togithub.com/SuperSandro2000) in
[https://github.com/kubernetes-sigs/controller-tools/pull/881](https://togithub.com/kubernetes-sigs/controller-tools/pull/881)
- ⚠️Bump k/k to v1.30.0-rc.1 & Go to 1.22 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/901](https://togithub.com/kubernetes-sigs/controller-tools/pull/901)
- ⚠ Bump to k8s.io/\* v1.30 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/926](https://togithub.com/kubernetes-sigs/controller-tools/pull/926)
- 🌱 Bump golang.org/x/tools from 0.16.1 to 0.17.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/874](https://togithub.com/kubernetes-sigs/controller-tools/pull/874)
- 🌱 Bump github.com/onsi/gomega from 1.30.0 to 1.31.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/876](https://togithub.com/kubernetes-sigs/controller-tools/pull/876)
- 🌱 Bump golang.org/x/tools from 0.17.0 to 0.18.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/885](https://togithub.com/kubernetes-sigs/controller-tools/pull/885)
- 🌱 Bump golang.org/x/tools from 0.18.0 to 0.19.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/891](https://togithub.com/kubernetes-sigs/controller-tools/pull/891)
- 🌱 Bump github.com/onsi/gomega from 1.31.1 to 1.32.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/895](https://togithub.com/kubernetes-sigs/controller-tools/pull/895)
- 🌱 Bump golang.org/x/tools from 0.19.0 to 0.20.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/904](https://togithub.com/kubernetes-sigs/controller-tools/pull/904)
- 🌱 Bump docker/setup-buildx-action from 3.2.0 to 3.3.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/915](https://togithub.com/kubernetes-sigs/controller-tools/pull/915)
- 🌱 Bump tj-actions/changed-files from 44.0.0 to 44.0.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/916](https://togithub.com/kubernetes-sigs/controller-tools/pull/916)
- 🌱 Bump tj-actions/changed-files from 44.0.1 to 44.3.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/929](https://togithub.com/kubernetes-sigs/controller-tools/pull/929)
- 🌱 Bump github.com/onsi/gomega from 1.32.0 to 1.33.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/931](https://togithub.com/kubernetes-sigs/controller-tools/pull/931)
- 🌱 Bump actions/checkout from 4.1.2 to 4.1.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/930](https://togithub.com/kubernetes-sigs/controller-tools/pull/930)

#### New Contributors

- [@&#8203;dprotaso](https://togithub.com/dprotaso) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/706](https://togithub.com/kubernetes-sigs/controller-tools/pull/706)
- [@&#8203;SuperSandro2000](https://togithub.com/SuperSandro2000) made
their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/881](https://togithub.com/kubernetes-sigs/controller-tools/pull/881)
- [@&#8203;zchee](https://togithub.com/zchee) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/882](https://togithub.com/kubernetes-sigs/controller-tools/pull/882)
- [@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov)
made their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/898](https://togithub.com/kubernetes-sigs/controller-tools/pull/898)
- [@&#8203;github-actions](https://togithub.com/github-actions) made
their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/920](https://togithub.com/kubernetes-sigs/controller-tools/pull/920)
- [@&#8203;pmalek](https://togithub.com/pmalek) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/927](https://togithub.com/kubernetes-sigs/controller-tools/pull/927)

**Full Changelog**:
kubernetes-sigs/controller-tools@v0.14.0...v0.15.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "* * * * 6" (UTC), Automerge - At any
time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/aenix-io/etcd-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMDEuNCIsInVwZGF0ZWRJblZlciI6IjM3LjMxMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJvay10by10ZXN0Il19-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hidden Marten <[email protected]>
hiddenmarten referenced this pull request in aenix-io/etcd-operator Apr 27, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change | Age | Adoption | Passing |
Confidence |
|---|---|---|---|---|---|---|---|
| [actions/checkout](https://togithub.com/actions/checkout) | action |
patch | `v4.1.3` -> `v4.1.4` |
[![age](https://developer.mend.io/api/mc/badges/age/github-tags/actions%2fcheckout/v4.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/actions%2fcheckout/v4.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/actions%2fcheckout/v4.1.3/v4.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/actions%2fcheckout/v4.1.3/v4.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [jetstack/cert-manager](https://togithub.com/jetstack/cert-manager) |
| patch | `v1.14.4` -> `v1.14.5` |
[![age](https://developer.mend.io/api/mc/badges/age/github-tags/jetstack%2fcert-manager/v1.14.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/jetstack%2fcert-manager/v1.14.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/jetstack%2fcert-manager/v1.14.4/v1.14.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/jetstack%2fcert-manager/v1.14.4/v1.14.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [k8s.io/client-go](https://togithub.com/kubernetes/client-go) |
require | minor | `v0.29.3` -> `v0.30.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/k8s.io%2fclient-go/v0.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/k8s.io%2fclient-go/v0.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/k8s.io%2fclient-go/v0.29.3/v0.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/k8s.io%2fclient-go/v0.29.3/v0.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[kubernetes-sigs/controller-tools](https://togithub.com/kubernetes-sigs/controller-tools)
| | minor | `v0.14.0` -> `v0.15.0` |
[![age](https://developer.mend.io/api/mc/badges/age/github-tags/kubernetes-sigs%2fcontroller-tools/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/kubernetes-sigs%2fcontroller-tools/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/kubernetes-sigs%2fcontroller-tools/v0.14.0/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/kubernetes-sigs%2fcontroller-tools/v0.14.0/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[sigs.k8s.io/controller-runtime](https://togithub.com/kubernetes-sigs/controller-runtime)
| require | minor | `v0.17.3` -> `v0.18.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/sigs.k8s.io%2fcontroller-runtime/v0.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/sigs.k8s.io%2fcontroller-runtime/v0.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/sigs.k8s.io%2fcontroller-runtime/v0.17.3/v0.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/sigs.k8s.io%2fcontroller-runtime/v0.17.3/v0.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>actions/checkout (actions/checkout)</summary>

###
[`v4.1.4`](https://togithub.com/actions/checkout/blob/HEAD/CHANGELOG.md#v414)

[Compare
Source](https://togithub.com/actions/checkout/compare/v4.1.3...v4.1.4)

- Disable `extensions.worktreeConfig` when disabling `sparse-checkout`
by [@&#8203;jww3](https://togithub.com/jww3) in
[https://github.com/actions/checkout/pull/1692](https://togithub.com/actions/checkout/pull/1692)
- Add dependabot config by
[@&#8203;cory-miller](https://togithub.com/cory-miller) in
[https://github.com/actions/checkout/pull/1688](https://togithub.com/actions/checkout/pull/1688)
- Bump the minor-actions-dependencies group with 2 updates by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/actions/checkout/pull/1693](https://togithub.com/actions/checkout/pull/1693)
- Bump word-wrap from 1.2.3 to 1.2.5 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/actions/checkout/pull/1643](https://togithub.com/actions/checkout/pull/1643)

</details>

<details>
<summary>jetstack/cert-manager (jetstack/cert-manager)</summary>

###
[`v1.14.5`](https://togithub.com/cert-manager/cert-manager/releases/tag/v1.14.5)

[Compare
Source](https://togithub.com/jetstack/cert-manager/compare/v1.14.4...v1.14.5)

cert-manager is the easiest way to automatically manage certificates in
Kubernetes and OpenShift clusters.

`v1.14.5` fixes a bug in the DigitalOcean DNS-01 provider which could
cause incorrect DNS records to be deleted when using a domain with a
CNAME. Special thanks to
[@&#8203;BobyMCbobs](https://togithub.com/BobyMCbobs) for reporting this
issue and testing the fix!

It also patches CVE-2023-45288.

#### Known Issues

- ACME Issuer (Let's Encrypt): wrong certificate chain may be used if
`preferredChain` is configured: see [1.14 release
notes](./release-notes-1.14.md#known-issues) for more information.

#### Changes

##### Bug or Regression

- DigitalOcean: Ensure that only TXT records are considered for deletion
when cleaning up after an ACME challenge
([#&#8203;6893](https://togithub.com/jetstack/cert-manager/issues/6893)
, [@&#8203;SgtCoDFish](https://togithub.com/SgtCoDFish))
- Bump golang.org/x/net to address
[CVE-2023-45288](https://nvd.nist.gov/vuln/detail/CVE-2023-45288)
([#&#8203;6931](https://togithub.com/jetstack/cert-manager/issues/6931)
, [@&#8203;SgtCoDFish](https://togithub.com/SgtCoDFish))

</details>

<details>
<summary>kubernetes/client-go (k8s.io/client-go)</summary>

###
[`v0.30.0`](https://togithub.com/kubernetes/client-go/compare/v0.29.4...v0.30.0)

[Compare
Source](https://togithub.com/kubernetes/client-go/compare/v0.29.4...v0.30.0)

###
[`v0.29.4`](https://togithub.com/kubernetes/client-go/compare/v0.29.3...v0.29.4)

[Compare
Source](https://togithub.com/kubernetes/client-go/compare/v0.29.3...v0.29.4)

</details>

<details>
<summary>kubernetes-sigs/controller-tools
(kubernetes-sigs/controller-tools)</summary>

###
[`v0.15.0`](https://togithub.com/kubernetes-sigs/controller-tools/releases/tag/v0.15.0)

[Compare
Source](https://togithub.com/kubernetes-sigs/controller-tools/compare/v0.14.0...v0.15.0)

#### What's Changed

- ✨ Markers can now indicate their priority when applying by
[@&#8203;dprotaso](https://togithub.com/dprotaso) in
[https://github.com/kubernetes-sigs/controller-tools/pull/706](https://togithub.com/kubernetes-sigs/controller-tools/pull/706)
- ✨ crd: support validating internal list items on list types
by [@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov)
in
[https://github.com/kubernetes-sigs/controller-tools/pull/898](https://togithub.com/kubernetes-sigs/controller-tools/pull/898)
- ✨ crd: allow specifying spec.preserveUnknownFields by
[@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov) in
[https://github.com/kubernetes-sigs/controller-tools/pull/912](https://togithub.com/kubernetes-sigs/controller-tools/pull/912)
- ✨ crd: add messageExpression support to XValidation marker by
[@&#8203;pmalek](https://togithub.com/pmalek) in
[https://github.com/kubernetes-sigs/controller-tools/pull/927](https://togithub.com/kubernetes-sigs/controller-tools/pull/927)
- ✨ Fix deprecations by [@&#8203;zchee](https://togithub.com/zchee) in
[https://github.com/kubernetes-sigs/controller-tools/pull/882](https://togithub.com/kubernetes-sigs/controller-tools/pull/882)
- 🌱 Update golangci-lint, Makefile, Actions by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/902](https://togithub.com/kubernetes-sigs/controller-tools/pull/902)

#### envtest

- ✨ Build and publish Kubernetes envtest tools as packages by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/906](https://togithub.com/kubernetes-sigs/controller-tools/pull/906)
- ✨ Add github action to package envtest binaries in releases by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/908](https://togithub.com/kubernetes-sigs/controller-tools/pull/908)
- 🌱 Adjust branches for github actions by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/918](https://togithub.com/kubernetes-sigs/controller-tools/pull/918)
- 🌱 Automatically release, fixup selfLink in camelCase by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/921](https://togithub.com/kubernetes-sigs/controller-tools/pull/921)
- ✨ Release envtest v1.28.0 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/919](https://togithub.com/kubernetes-sigs/controller-tools/pull/919)
- 🌱 Promotion of envtest release for Kubernetes v1.28.0 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/920](https://togithub.com/kubernetes-sigs/controller-tools/pull/920)
- ✨ Release envtest-v1.29.4 by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/922](https://togithub.com/kubernetes-sigs/controller-tools/pull/922)
- 🌱 Promotion of envtest release for Kubernetes v1.29.4 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/923](https://togithub.com/kubernetes-sigs/controller-tools/pull/923)
- ✨ Release envtest v1.30.0 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/924](https://togithub.com/kubernetes-sigs/controller-tools/pull/924)
- 🌱 Promotion of envtest release for Kubernetes v1.30.0 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/925](https://togithub.com/kubernetes-sigs/controller-tools/pull/925)

#### Dependency bumps

- 🌱 Bump go version from 1.20 to 1.21 by
[@&#8203;SuperSandro2000](https://togithub.com/SuperSandro2000) in
[https://github.com/kubernetes-sigs/controller-tools/pull/881](https://togithub.com/kubernetes-sigs/controller-tools/pull/881)
- ⚠️Bump k/k to v1.30.0-rc.1 & Go to 1.22 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/901](https://togithub.com/kubernetes-sigs/controller-tools/pull/901)
- ⚠ Bump to k8s.io/\* v1.30 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/926](https://togithub.com/kubernetes-sigs/controller-tools/pull/926)
- 🌱 Bump golang.org/x/tools from 0.16.1 to 0.17.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/874](https://togithub.com/kubernetes-sigs/controller-tools/pull/874)
- 🌱 Bump github.com/onsi/gomega from 1.30.0 to 1.31.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/876](https://togithub.com/kubernetes-sigs/controller-tools/pull/876)
- 🌱 Bump golang.org/x/tools from 0.17.0 to 0.18.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/885](https://togithub.com/kubernetes-sigs/controller-tools/pull/885)
- 🌱 Bump golang.org/x/tools from 0.18.0 to 0.19.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/891](https://togithub.com/kubernetes-sigs/controller-tools/pull/891)
- 🌱 Bump github.com/onsi/gomega from 1.31.1 to 1.32.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/895](https://togithub.com/kubernetes-sigs/controller-tools/pull/895)
- 🌱 Bump golang.org/x/tools from 0.19.0 to 0.20.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/904](https://togithub.com/kubernetes-sigs/controller-tools/pull/904)
- 🌱 Bump docker/setup-buildx-action from 3.2.0 to 3.3.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/915](https://togithub.com/kubernetes-sigs/controller-tools/pull/915)
- 🌱 Bump tj-actions/changed-files from 44.0.0 to 44.0.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/916](https://togithub.com/kubernetes-sigs/controller-tools/pull/916)
- 🌱 Bump tj-actions/changed-files from 44.0.1 to 44.3.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/929](https://togithub.com/kubernetes-sigs/controller-tools/pull/929)
- 🌱 Bump github.com/onsi/gomega from 1.32.0 to 1.33.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/931](https://togithub.com/kubernetes-sigs/controller-tools/pull/931)
- 🌱 Bump actions/checkout from 4.1.2 to 4.1.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/930](https://togithub.com/kubernetes-sigs/controller-tools/pull/930)

#### New Contributors

- [@&#8203;dprotaso](https://togithub.com/dprotaso) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/706](https://togithub.com/kubernetes-sigs/controller-tools/pull/706)
- [@&#8203;SuperSandro2000](https://togithub.com/SuperSandro2000) made
their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/881](https://togithub.com/kubernetes-sigs/controller-tools/pull/881)
- [@&#8203;zchee](https://togithub.com/zchee) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/882](https://togithub.com/kubernetes-sigs/controller-tools/pull/882)
- [@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov)
made their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/898](https://togithub.com/kubernetes-sigs/controller-tools/pull/898)
- [@&#8203;github-actions](https://togithub.com/github-actions) made
their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/920](https://togithub.com/kubernetes-sigs/controller-tools/pull/920)
- [@&#8203;pmalek](https://togithub.com/pmalek) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/927](https://togithub.com/kubernetes-sigs/controller-tools/pull/927)

**Full Changelog**:
kubernetes-sigs/controller-tools@v0.14.0...v0.15.0

</details>

<details>
<summary>kubernetes-sigs/controller-runtime
(sigs.k8s.io/controller-runtime)</summary>

###
[`v0.18.0`](https://togithub.com/kubernetes-sigs/controller-runtime/releases/tag/v0.18.0)

[Compare
Source](https://togithub.com/kubernetes-sigs/controller-runtime/compare/v0.17.3...v0.18.0)

#### ⚠️ Breaking Changes

- Bump to k8s.io/\* v1.30
([#&#8203;2693](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2693)
[#&#8203;2754](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2754)
[#&#8203;2765](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2765)
[#&#8203;2776](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2776)
[#&#8203;2786](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2786))
- Remove deprecated v1alpha1.ControllerManagerConfiguration
([#&#8203;2648](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2648))
- admission.Decoder is now an interface
([#&#8203;2736](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2736))
- Source, Event, Predicate, Handler: Add generics support
([#&#8203;2783](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2783)
[#&#8203;2796](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2796))
- client: Fix SubResourceCreateOptions signature in subresource client
([#&#8203;2766](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2766))

#### ✨ New Features

- cache: Add TransformStripManagedFields transform func
([#&#8203;2791](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2791))
- client: Add client.WithFieldOwner to configure client-wide
FieldManager
([#&#8203;2771](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2771)
[#&#8203;2777](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2777))
- controller: Add `NewQueue` option
([#&#8203;2767](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2767))
- manager: Export HTTP server runnable implementation
([#&#8203;2473](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2473))
- metrics/server: Add `ListenConfig` option
([#&#8203;2519](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2519))

#### 🐛 Bug Fixes

- builder/webhook: Return error if For() is used multiple times
([#&#8203;2740](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2740))
- cache: Keep selectors when byObject.Namespaces is defaulted
([#&#8203;2747](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2747))
- cache: Prevent race when informers are started more than once
([#&#8203;2758](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2758))
- fake client: Allow fakeclient to patch CR with no resourceVersion
([#&#8203;2725](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2725))
- fake client: Do not consider an apply patch to be a strategic merge
patch
([#&#8203;2679](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2679))
- manager: Prevent leader election when shutting down a non-elected
manager
([#&#8203;2724](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2724))
- manager: Runnable group should check if stopped before enqueueing
([#&#8203;2757](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2757))
- restmapper: Clean restmapper cache if a version is notFound
([#&#8203;2663](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2663))
- restmapper: Fix cache invalidation
([#&#8203;2687](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2687))

#### 🌱 Others

- ci: Add OSSF scorecard action
([#&#8203;2714](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2714))
- ci: Improve github actions dependencies versions and permissions
([#&#8203;2715](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2715))
- ci: Pin checkout action in golangci-lint action, bump checkout action,
use consistent tag format
([#&#8203;2729](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2729))
- ci: Update golangci-lint to v1.57.2
([#&#8203;2708](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2708)
[#&#8203;2751](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2751))
- ci: Update scorecard github action
([#&#8203;2728](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2728))
- ci: Use go-install for versioned dependencies
([#&#8203;2710](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2710))
- envtest: WaitForDefaultNamespace while starting up envtest
([#&#8203;2668](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2668))
- owners: Cleanup owners files
([#&#8203;2730](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2730))
- owners: Remove outdated testing framework approvers
([#&#8203;2709](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2709))
- predicate: Compare labels and annotations using maps.Equal
([#&#8203;2705](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2705))
- typos: Fix typo of CacheReader comment
([#&#8203;2773](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2773))
- typos: Fix typo in channel option
([#&#8203;2792](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2792))
- typos: Minor typo fixes in docstrings
([#&#8203;2727](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2727))

:book: Additionally, there have been 3 contributions to our
documentation and book.
([#&#8203;2712](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2712),
[#&#8203;2770](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2770),
[#&#8203;2789](https://togithub.com/kubernetes-sigs/controller-runtime/issues/2789))

#### Dependencies

##### Added

- github.com/fxamacker/cbor/v2:
[v2.6.0](https://togithub.com/fxamacker/cbor/tree/v2.6.0)
- github.com/x448/float16:
[v0.8.4](https://togithub.com/x448/float16/tree/v0.8.4)
- golang.org/x/telemetry:
[`b75ee88`](https://togithub.com/kubernetes-sigs/controller-runtime/commit/b75ee88)
- k8s.io/gengo/v2:
[`51d4e06`](https://togithub.com/kubernetes-sigs/controller-runtime/commit/51d4e06)

##### Changed

- github.com/evanphx/json-patch/v5: [v5.8.0 →
v5.9.0](https://togithub.com/evanphx/json-patch/compare/v5.8.0...v5.9.0)
- github.com/golang/protobuf: [v1.5.3 →
v1.5.4](https://togithub.com/golang/protobuf/compare/v1.5.3...v1.5.4)
- github.com/google/cel-go: [v0.17.7 →
v0.17.8](https://togithub.com/google/cel-go/compare/v0.17.7...v0.17.8)
- github.com/onsi/ginkgo/v2: [v2.14.0 →
v2.17.1](https://togithub.com/onsi/ginkgo/compare/v2.14.0...v2.17.1)
- github.com/onsi/gomega: [v1.30.0 →
v1.32.0](https://togithub.com/onsi/gomega/compare/v1.30.0...v1.32.0)
- github.com/prometheus/client_golang: [v1.18.0 →
v1.16.0](https://togithub.com/prometheus/client_golang/compare/v1.18.0...v1.16.0)
- github.com/prometheus/client_model: [v0.5.0 →
v0.4.0](https://togithub.com/prometheus/client_model/compare/v0.5.0...v0.4.0)
- github.com/prometheus/common: [v0.45.0 →
v0.44.0](https://togithub.com/prometheus/common/compare/v0.45.0...v0.44.0)
-   golang.org/x/crypto: v0.16.0 → v0.21.0
-   golang.org/x/mod: v0.14.0 → v0.15.0
-   golang.org/x/net: v0.19.0 → v0.23.0
-   golang.org/x/sync: v0.5.0 → v0.6.0
-   golang.org/x/sys: v0.16.0 → v0.18.0
-   golang.org/x/term: v0.15.0 → v0.18.0
-   golang.org/x/tools: v0.16.1 → v0.18.0
-   google.golang.org/protobuf: v1.31.0 → v1.33.0
-   k8s.io/api: v0.29.0 → v0.30.0
-   k8s.io/apiextensions-apiserver: v0.29.0 → v0.30.0
-   k8s.io/apimachinery: v0.29.0 → v0.30.0
-   k8s.io/apiserver: v0.29.0 → v0.30.0
-   k8s.io/client-go: v0.29.0 → v0.30.0
-   k8s.io/code-generator: v0.29.0 → v0.30.0
-   k8s.io/component-base: v0.29.0 → v0.30.0
-   k8s.io/klog/v2: v2.110.1 → v2.120.1
-   k8s.io/kms: v0.29.0 → v0.30.0
- k8s.io/kube-openapi:
[`2dd684a`](https://togithub.com/kubernetes-sigs/controller-runtime/commit/2dd684a)
→
[`70dd376`](https://togithub.com/kubernetes-sigs/controller-runtime/commit/70dd376)
- sigs.k8s.io/apiserver-network-proxy/konnectivity-client: v0.28.0 →
v0.29.0
-   sigs.k8s.io/yaml: v1.4.0 → v1.3.0

##### Removed

- github.com/matttproud/golang_protobuf_extensions/v2:
[v2.0.0](https://togithub.com/matttproud/golang_protobuf_extensions/tree/v2.0.0)
-   go.uber.org/atomic: v1.10.0
- k8s.io/gengo:
[`9cce18d`](https://togithub.com/kubernetes-sigs/controller-runtime/commit/9cce18d)

*Thanks to all our contributors!* 😊

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "* * * * 6" (UTC), Automerge - At any
time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/aenix-io/etcd-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zMjEuMiIsInVwZGF0ZWRJblZlciI6IjM3LjMyMS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJvay10by10ZXN0Il19-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Hidden Marten <[email protected]>
renovate bot referenced this pull request in anza-labs/lke-operator May 12, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[sigs.k8s.io/controller-tools](https://togithub.com/kubernetes-sigs/controller-tools)
| `v0.14.0` -> `v0.15.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/sigs.k8s.io%2fcontroller-tools/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/sigs.k8s.io%2fcontroller-tools/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/sigs.k8s.io%2fcontroller-tools/v0.14.0/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/sigs.k8s.io%2fcontroller-tools/v0.14.0/v0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>kubernetes-sigs/controller-tools
(sigs.k8s.io/controller-tools)</summary>

###
[`v0.15.0`](https://togithub.com/kubernetes-sigs/controller-tools/releases/tag/v0.15.0)

[Compare
Source](https://togithub.com/kubernetes-sigs/controller-tools/compare/v0.14.0...v0.15.0)

#### What's Changed

- ✨ Markers can now indicate their priority when applying by
[@&#8203;dprotaso](https://togithub.com/dprotaso) in
[https://github.com/kubernetes-sigs/controller-tools/pull/706](https://togithub.com/kubernetes-sigs/controller-tools/pull/706)
- ✨ crd: support validating internal list items on list types
by [@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov)
in
[https://github.com/kubernetes-sigs/controller-tools/pull/898](https://togithub.com/kubernetes-sigs/controller-tools/pull/898)
- ✨ crd: allow specifying spec.preserveUnknownFields by
[@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov) in
[https://github.com/kubernetes-sigs/controller-tools/pull/912](https://togithub.com/kubernetes-sigs/controller-tools/pull/912)
- ✨ crd: add messageExpression support to XValidation marker by
[@&#8203;pmalek](https://togithub.com/pmalek) in
[https://github.com/kubernetes-sigs/controller-tools/pull/927](https://togithub.com/kubernetes-sigs/controller-tools/pull/927)
- ✨ Fix deprecations by [@&#8203;zchee](https://togithub.com/zchee) in
[https://github.com/kubernetes-sigs/controller-tools/pull/882](https://togithub.com/kubernetes-sigs/controller-tools/pull/882)
- 🌱 Update golangci-lint, Makefile, Actions by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/902](https://togithub.com/kubernetes-sigs/controller-tools/pull/902)

#### envtest

- ✨ Build and publish Kubernetes envtest tools as packages by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/906](https://togithub.com/kubernetes-sigs/controller-tools/pull/906)
- ✨ Add github action to package envtest binaries in releases by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/908](https://togithub.com/kubernetes-sigs/controller-tools/pull/908)
- 🌱 Adjust branches for github actions by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/918](https://togithub.com/kubernetes-sigs/controller-tools/pull/918)
- 🌱 Automatically release, fixup selfLink in camelCase by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/921](https://togithub.com/kubernetes-sigs/controller-tools/pull/921)
- ✨ Release envtest v1.28.0 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/919](https://togithub.com/kubernetes-sigs/controller-tools/pull/919)
- 🌱 Promotion of envtest release for Kubernetes v1.28.0 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/920](https://togithub.com/kubernetes-sigs/controller-tools/pull/920)
- ✨ Release envtest-v1.29.4 by
[@&#8203;vincepri](https://togithub.com/vincepri) in
[https://github.com/kubernetes-sigs/controller-tools/pull/922](https://togithub.com/kubernetes-sigs/controller-tools/pull/922)
- 🌱 Promotion of envtest release for Kubernetes v1.29.4 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/923](https://togithub.com/kubernetes-sigs/controller-tools/pull/923)
- ✨ Release envtest v1.30.0 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/924](https://togithub.com/kubernetes-sigs/controller-tools/pull/924)
- 🌱 Promotion of envtest release for Kubernetes v1.30.0 by
[@&#8203;github-actions](https://togithub.com/github-actions) in
[https://github.com/kubernetes-sigs/controller-tools/pull/925](https://togithub.com/kubernetes-sigs/controller-tools/pull/925)

#### Dependency bumps

- 🌱 Bump go version from 1.20 to 1.21 by
[@&#8203;SuperSandro2000](https://togithub.com/SuperSandro2000) in
[https://github.com/kubernetes-sigs/controller-tools/pull/881](https://togithub.com/kubernetes-sigs/controller-tools/pull/881)
- ⚠️Bump k/k to v1.30.0-rc.1 & Go to 1.22 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/901](https://togithub.com/kubernetes-sigs/controller-tools/pull/901)
- ⚠ Bump to k8s.io/\* v1.30 by
[@&#8203;sbueringer](https://togithub.com/sbueringer) in
[https://github.com/kubernetes-sigs/controller-tools/pull/926](https://togithub.com/kubernetes-sigs/controller-tools/pull/926)
- 🌱 Bump golang.org/x/tools from 0.16.1 to 0.17.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/874](https://togithub.com/kubernetes-sigs/controller-tools/pull/874)
- 🌱 Bump github.com/onsi/gomega from 1.30.0 to 1.31.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/876](https://togithub.com/kubernetes-sigs/controller-tools/pull/876)
- 🌱 Bump golang.org/x/tools from 0.17.0 to 0.18.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/885](https://togithub.com/kubernetes-sigs/controller-tools/pull/885)
- 🌱 Bump golang.org/x/tools from 0.18.0 to 0.19.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/891](https://togithub.com/kubernetes-sigs/controller-tools/pull/891)
- 🌱 Bump github.com/onsi/gomega from 1.31.1 to 1.32.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/895](https://togithub.com/kubernetes-sigs/controller-tools/pull/895)
- 🌱 Bump golang.org/x/tools from 0.19.0 to 0.20.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/904](https://togithub.com/kubernetes-sigs/controller-tools/pull/904)
- 🌱 Bump docker/setup-buildx-action from 3.2.0 to 3.3.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/915](https://togithub.com/kubernetes-sigs/controller-tools/pull/915)
- 🌱 Bump tj-actions/changed-files from 44.0.0 to 44.0.1 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/916](https://togithub.com/kubernetes-sigs/controller-tools/pull/916)
- 🌱 Bump tj-actions/changed-files from 44.0.1 to 44.3.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/929](https://togithub.com/kubernetes-sigs/controller-tools/pull/929)
- 🌱 Bump github.com/onsi/gomega from 1.32.0 to 1.33.0 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/931](https://togithub.com/kubernetes-sigs/controller-tools/pull/931)
- 🌱 Bump actions/checkout from 4.1.2 to 4.1.3 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[https://github.com/kubernetes-sigs/controller-tools/pull/930](https://togithub.com/kubernetes-sigs/controller-tools/pull/930)

#### New Contributors

- [@&#8203;dprotaso](https://togithub.com/dprotaso) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/706](https://togithub.com/kubernetes-sigs/controller-tools/pull/706)
- [@&#8203;SuperSandro2000](https://togithub.com/SuperSandro2000) made
their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/881](https://togithub.com/kubernetes-sigs/controller-tools/pull/881)
- [@&#8203;zchee](https://togithub.com/zchee) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/882](https://togithub.com/kubernetes-sigs/controller-tools/pull/882)
- [@&#8203;AlexanderYastrebov](https://togithub.com/AlexanderYastrebov)
made their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/898](https://togithub.com/kubernetes-sigs/controller-tools/pull/898)
- [@&#8203;github-actions](https://togithub.com/github-actions) made
their first contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/920](https://togithub.com/kubernetes-sigs/controller-tools/pull/920)
- [@&#8203;pmalek](https://togithub.com/pmalek) made their first
contribution in
[https://github.com/kubernetes-sigs/controller-tools/pull/927](https://togithub.com/kubernetes-sigs/controller-tools/pull/927)

**Full Changelog**:
kubernetes-sigs/controller-tools@v0.14.0...v0.15.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/anza-labs/lke-operator).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNTEuMiIsInVwZGF0ZWRJblZlciI6IjM3LjM1MS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJhcmVhL2RlcGVuZGVuY3kiXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants