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

✨ Bump to v1.17.2 #47

Closed
wants to merge 204 commits into from
Closed

✨ Bump to v1.17.2 #47

wants to merge 204 commits into from

Conversation

sttts
Copy link
Member

@sttts sttts commented Feb 29, 2024

git checkout release-1.17
git merge kcp-dev/kcp-1.28

dependabot bot and others added 30 commits August 28, 2023 20:26
Bumps [k8s.io/apiserver](https://github.com/kubernetes/apiserver) from 0.28.0 to 0.28.1.
- [Commits](kubernetes/apiserver@v0.28.0...v0.28.1)

---
updated-dependencies:
- dependency-name: k8s.io/apiserver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.11.0 to 2.12.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.11.0...v2.12.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
This PR shows how Gatekeeper has forked controller runtime
to support the dynamic addition/removal of informers.

Happy to flesh this out if people are interested. Not sure
what the correct licensing actions are for moving code across CNCF
projects.

Fix lint error

Signed-off-by: Max Smythe <smythe@google.com>

Move mergeChan; add functional opts

Signed-off-by: Max Smythe <smythe@google.com>

Refactor functional parameters

Signed-off-by: Max Smythe <smythe@google.com>

Fix tests; refactor options type visibility

Signed-off-by: Max Smythe <smythe@google.com>

More interface changes

Signed-off-by: Max Smythe <smythe@google.com>

Fix lint

Signed-off-by: Max Smythe <smythe@google.com>

Add ginkgo so test flags are recognized

Signed-off-by: Max Smythe <smythe@google.com>

Split out non-blocking-get options; block on cancel

Signed-off-by: Max Smythe <smythe@google.com>

Add tests for removing informers

Signed-off-by: Max Smythe <smythe@google.com>

Fix missing newline

Signed-off-by: Max Smythe <smythe@google.com>

Oops, no newline

Signed-off-by: Max Smythe <smythe@google.com>
…ot/go_modules/github.com/onsi/ginkgo/v2-2.12.0

🌱 Bump github.com/onsi/ginkgo/v2 from 2.11.0 to 2.12.0
…ot/go_modules/k8s.io/apiserver-0.28.1

🌱 Bump k8s.io/apiserver from 0.28.0 to 0.28.1
…tion option is true

Signed-off-by: Troy Connor <troy0820@users.noreply.github.com>
…pes-to-leader-election

 🐛Add corev1, coordinationv1 scheme for leader election when LeaderElection manager option is true
Since v0.16.0 (kubernetes-sigs#2407), there is an import for all users of various
opentelemetry libraries. This is caused by manager test ->
pkg/metrics/filters -> k8s.io/apiserver -> otel-go.

The issue is API server users a otel-go library from >1 year ago. This
makes it impossible to import a modern otel-go library and a modern
controller-runtime library together.

Go is unable to prune the dependency *even though its only used in
tests* (TBH, this surprised me!). By moving the tests that use
`filters` under the `filters` package, though, this drops the required
dependency on otel-go. Users that import the `filters` package will use
it, of course, but everyone does not need to.

So basically this refactors tests, but has user facing changes -- fewer
dependencies are required to import controller-runtime core, allowing
using the newer controller-runtime with newer otel-go.

In parallel I will attempt to get k/k to update their otel-go version,
but this will take months to ship at the earliest. IMO, this is worth
fixing in the meantime as a v0.16.x patch.
Signed-off-by: Troy Connor <troy0820@users.noreply.github.com>
🐛 Refactor tests to drop hard otel dependency
…-election-httpClient

🐛 Use http client from leaderElectionConfig
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.11.0 to 0.12.0.
- [Commits](golang/sys@v0.11.0...v0.12.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…ot/github_actions/actions/checkout-4

🌱 Bump actions/checkout from 3 to 4
…ot/go_modules/golang.org/x/sys-0.12.0

🌱 Bump golang.org/x/sys from 0.11.0 to 0.12.0
* Default namespace only for namespaced object

* Add test
…bernetes-sigs#2479)

* update subresource client to not incude metadata

Signed-off-by: Troy Connor <troy0820@users.noreply.github.com>

* Test showing labels and annotations stored during fake client.Status().Update()

* add test case to show it will not override other status fields when updating

Signed-off-by: Troy Connor <troy0820@users.noreply.github.com>

* delete copyNonStatusFrom function, change test case description

Signed-off-by: Troy Connor <troy0820@users.noreply.github.com>

---------

Signed-off-by: Troy Connor <troy0820@users.noreply.github.com>
Co-authored-by: Adam Berlin <aberlin@vmware.com>
Before this, Update and Patch requests will override to-level status
fields for objects that have a status resource if the status was
initially empty.

This happens because the code to set the status to what we already have
in the unupdated object converts the object into a `map[string]any`
using json serialization/deserialization, copies the original `status`
field, then converts back. The json deserializer unfortunatelly does not
properly clear the target, allowing data to remain that is absent in the
json serialization.
…eroing

🐛 Fix status subresource getting updated on Update when it is empty
* Draft: Test that an object is updatable after updating its status.

* Draft: ensure we udpate the new obj's accessor's ResourceVersion after doing the deep copy

* Rework code to pass object back on status update

---------

Co-authored-by: Adam Berlin <aberlin@vmware.com>
🐛 Return NoResourceMatchError when appropriate for backwards compatibility.
Signed-off-by: Troy Connor <troy0820@users.noreply.github.com>
…move-owner-reference-function

🌱 Create `RemoveOwnerReference` function in controllerutil to remove owner references from objects
📖 fix a grammer mistake in comment
aerfio and others added 24 commits January 10, 2024 11:04
Signed-off-by: Stefan Büringer buringerst@vmware.com
🌱 Avoid dependency on apiserver/options if metrics/filters are used
…ckets

✨ Add 100/1000s buckets for prometheus workqueue histograms
Signed-off-by: Stefan Büringer buringerst@vmware.com
📖 Fix Client Read/Write Functionality Comments
This change bumps https://github.com/evanphx/json-patch
in order to pick up a bugfix that made it truncate large int64s because
it internally treated them as float64s.
🐛 Don't truncate large int64s in MergePatch
Bumps [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo) from 2.13.2 to 2.14.0.
- [Release notes](https://github.com/onsi/ginkgo/releases)
- [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md)
- [Commits](onsi/ginkgo@v2.13.2...v2.14.0)

---
updated-dependencies:
- dependency-name: github.com/onsi/ginkgo/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Joe Lanford <joe.lanford@gmail.com>
…ot/go_modules/github.com/onsi/ginkgo/v2-2.14.0

🌱 Bump github.com/onsi/ginkgo/v2 from 2.13.2 to 2.14.0
This avoids:
- Extra calls to https://host/apis/<group>/<version> when a version seen
  before and cached in apiGroups is deleted or marked as not served.
- Returnning a valid mapping for a cached version that is deleted or not
  served anymore.
…ot/cherry-pick-2663-to-release-0.17

[release-0.17] 🐛 Clean restmapper cache if a version is notFound
…ge patch

The fakeclient currently considers an apply patch to be a strategic
merge patch. This is completely wrong, those are different things and
apply patches are not supported in the fakeclientl, because in order to
support them it would need the entire SSA logic which isn't implemented
in upstream yet.
…ot/cherry-pick-2679-to-release-0.17

[release-0.17] ⚠ 🐛 Fakeclient: Do not consider an apply patch to be a strategic merge patch
When a group version is not found, if the group version is cached in
apiGroups but not cached in knownGroups, the cache is not invalidated.
Moreover and even worse, in that scenario an error is returned.
…ot/cherry-pick-2687-to-release-0.17

[release-0.17] 🐛 Fix lazy rest mapper cache invalidation
@kcp-ci-bot
Copy link

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please ask for approval from sttts. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found 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

@kcp-ci-bot kcp-ci-bot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Feb 29, 2024
@kcp-ci-bot
Copy link

@sttts: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-controller-runtime-everything b8077b1 link true /test pull-controller-runtime-everything

Full PR test history

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. I understand the commands that are listed here.

@kcp-ci-bot kcp-ci-bot added the dco-signoff: no Indicates the PR's author has not signed the DCO. label Feb 29, 2024
@kcp-ci-bot
Copy link

Thanks for your pull request. Before we can look at it, you'll need to add a 'DCO signoff' to your commits.

📝 Please follow instructions in the contributing guide to update your commits with the DCO

Full details of the Developer Certificate of Origin can be found at developercertificate.org.

The list of commits missing DCO signoff:

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. I understand the commands that are listed here.

@sttts sttts closed this Mar 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dco-signoff: no Indicates the PR's author has not signed the DCO. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet