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

Update k8s.io #224

Merged
merged 2 commits into from
Jan 30, 2023
Merged

Update k8s.io #224

merged 2 commits into from
Jan 30, 2023

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jan 12, 2023

Mend Renovate

This PR contains the following updates:

Package Type Update Change
k8s.io/api require minor v0.25.5 -> v0.26.1
k8s.io/apimachinery require patch v0.26.0 -> v0.26.1
k8s.io/client-go require minor v0.25.4 -> v0.26.1
sigs.k8s.io/controller-runtime require minor v0.13.1 -> v0.14.2

Release Notes

kubernetes/api

v0.26.1

Compare Source

v0.26.0

Compare Source

v0.25.6

Compare Source

kubernetes/apimachinery

v0.26.1

Compare Source

kubernetes/client-go

v0.26.1

Compare Source

v0.26.0

Compare Source

v0.25.6

Compare Source

v0.25.5

Compare Source

kubernetes-sigs/controller-runtime

v0.14.2

Compare Source

What's Changed

Full Changelog: kubernetes-sigs/controller-runtime@v0.14.1...v0.14.2

v0.14.1

Compare Source

Changes since v0.14.0

🐛 Bug Fixes

Full Changelog: kubernetes-sigs/controller-runtime@v0.14.0...v0.14.1

v0.14.0

Compare Source

Changes since v0.13.1

⚠️ Breaking Changes

✨ New Features

  • Builder: Do not require For (#​2091)
  • support disable deepcopy on list funcion (#​2076)
  • Add cluster.NewClientFunc with options (#​2054)
  • Tidy up startup logging of kindWithCache source (#​2057)
  • Add function to get reconcileID from context (#​2056)
  • feat: add NOT predicate (#​2031)
  • Allow to provide a custom lock interface to manager (#​2027)
  • Add tls options to manager.Options (#​2023)
  • Update Go version to 1.19 (#​1986)

🐛 Bug Fixes

  • Prevent manager from getting started a second time (#​2090)
  • Missing error log for in-cluster config (#​2051)
  • Skip custom mutation handler when delete a CR (#​2049)
  • fix: improve semantics of combining cache selectorsByObject (#​2039)
  • Conversion webhook should not panic when conversion request is nil (#​1970)

🌱 Others

  • Prepare for release 0.14 (#​2100)
  • Generate files and update modules (#​2096)
  • Bump github.com/onsi/ginkgo/v2 from 2.5.1 to 2.6.0 (#​2097)
  • Bump golang.org/x/time (#​2089)
  • Update OWNERS: remove inactive members, promote fillzpp sbueringer (#​2088, #​2092)
  • Default ENVTEST version to a working one (1.24.2) (#​2081)
  • Update golangci-lint to v1.50.1 (#​2080)
  • Bump go.uber.org/zap from 1.23.0 to 1.24.0 (#​2077)
  • Bump golang.org/x/sys from 0.2.0 to 0.3.0 (#​2078)
  • Ignore Kubernetes Dependencies in Dependabot (#​2071)
  • Bump github.com/prometheus/client_golang from 1.13.0 to 1.14.0 (#​2070)
  • Bump github.com/onsi/ginkgo/v2 from 2.5.0 to 2.5.1 (#​2066)
  • seedling to dependabot (#​2065)
  • Bump github.com/onsi/gomega from 1.23.0 to 1.24.1 (#​2062)
  • Bump go.uber.org/zap from 1.21.0 to 1.23.0 (#​2060)
  • Bump actions/checkout from 2 to 3 (#​2059)
  • Bump golangci/golangci-lint-action from 2 to 3 (#​2058)
  • Add Dependabot for dependency management (#​2050)
  • Deprecate Webhook Server TLSMinVersion (#​2041)
  • Bump kubebuilder-release-tools to v0.2.0 (#​2012)
  • grammar: removed doubles of the word "the" (#​2006)
  • Refactor typed_client and unstructured_client to be consistent (#​1795)

📖 Additionally, there have been 4 contributions to our documentation and book. (#​2034, #​2030, #​2017, #​1992)

Thanks to all our contributors! 😊

New Contributors

Full Changelog: kubernetes-sigs/controller-runtime@v0.13.1...v0.14.0


Configuration

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

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

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

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 12, 2023

Hi @renovate[bot]. Thanks for your PR.

I'm waiting for a openstack-k8s-operators 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.

Copy link
Contributor

@gibizer gibizer left a comment

Choose a reason for hiding this comment

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

I'm confused. This fails with the known issue locally in make test make gotest or by runnig gotest.sh from the CI repo:

unable to install CRDs onto control plane: unable to create CRD instances: unable to create CRD "novaapis.nova.openstack.org": CustomResourceDefinition.apiextensions.k8s.io "novaapis.nova.openstack.org" is invalid: spec.validation.openAPIV3Schema.properties[spec].properties[resources].properties[claims].items.x-kubernetes-map-type: Invalid value: "null": must be atomic as item of a list with x-kubernetes-list-type=set

But in the github workflow the test runs without error.

api/go.mod Outdated
@@ -4,9 +4,9 @@ go 1.18

require (
github.com/openstack-k8s-operators/lib-common/modules/common v0.0.0-20230110110231-28368fe6a6a9
k8s.io/api v0.25.5
k8s.io/api v0.26.0
Copy link
Contributor

Choose a reason for hiding this comment

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

this is the issue we need to clamp to < v0.26.0

Copy link
Contributor

Choose a reason for hiding this comment

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

yepp

@SeanMooney
Copy link
Contributor

this is the same issue as openstack-k8s-operators/openstack-ansibleee-operator#45

@SeanMooney
Copy link
Contributor

/ok-to-test

lets see if the prow jobs also fail or not

@SeanMooney
Copy link
Contributor

SeanMooney commented Jan 12, 2023

so yes this fails for me locally too

 [FAILED] in [BeforeSuite] - /home/centos/repos/nova-operator/test/functional/suite_test.go:105 @ 01/12/23 16:14:21.476
  << Timeline

  [FAILED] Unexpected error:
      <*fmt.wrapError | 0xc000d087c0>: {
          msg: "unable to install CRDs onto control plane: unable to create CRD instances: unable to create CRD \"novanovncproxies.nova.openstack.org\": CustomResourceDefinition.apiextensions.k8s.io \"novanovncproxies.nova.openstack.org\" is invalid: spec.validation.openAPIV3Schema.properties[spec].properties[resources].properties[claims].items.x-kubernetes-map-type: Invalid value: \"null\": must be atomic as item of a list with x-kubernetes-list-type=set",
          err: <*fmt.wrapError | 0xc000d087a0>{
              msg: "unable to create CRD instances: unable to create CRD \"novanovncproxies.nova.openstack.org\": CustomResourceDefinition.apiextensions.k8s.io \"novanovncproxies.nova.openstack.org\" is invalid: spec.validation.openAPIV3Schema.properties[spec].properties[resources].properties[claims].items.x-kubernetes-map-type: Invalid value: \"null\": must be atomic as item of a list with x-kubernetes-list-type=set",
              err: <*fmt.wrapError | 0xc000d08780>{
                  msg: "unable to create CRD \"novanovncproxies.nova.openstack.org\": CustomResourceDefinition.apiextensions.k8s.io \"novanovncproxies.nova.openstack.org\" is invalid: spec.validation.openAPIV3Schema.properties[spec].properties[resources].properties[claims].items.x-kubernetes-map-type: Invalid value: \"null\": must be atomic as item of a list with x-kubernetes-list-type=set",
                  err: <*errors.StatusError | 0xc000125ea0>{
                      ErrStatus: {
                          TypeMeta: {Kind: "", APIVersion: ""},
                          ListMeta: {
                              SelfLink: "",
                              ResourceVersion: "",
                              Continue: "",
                              RemainingItemCount: nil,
                          },
                          Status: "Failure",
                          Message: "CustomResourceDefinition.apiextensions.k8s.io \"novanovncproxies.nova.openstack.org\" is invalid: spec.validation.openAPIV3Schema.properties[spec].properties[resources].properties[claims].items.x-kubernetes-map-type: Invalid value: \"null\": must be atomic as item of a list with x-kubernetes-list-type=set",
                          Reason: "Invalid",
                          Details: {
                              Name: "novanovncproxies.nova.openstack.org",
                              Group: "apiextensions.k8s.io",
                              Kind: "CustomResourceDefinition",
                              UID: "",
                              Causes: [
                                  {
                                      Type: "FieldValueInvalid",
                                      Message: "Invalid value: \"null\": must be atomic as item of a list with x-kubernetes-list-type=set",
                                      Field: "spec.validation.openAPIV3Schema.properties[spec].properties[resources].properties[claims].items.x-kubernetes-map-type",
                                  },
                              ],
                              RetryAfterSeconds: 0,
                          },
                          Code: 422,
                      },
                  },
              },
          },
      }
      unable to install CRDs onto control plane: unable to create CRD instances: unable to create CRD "novanovncproxies.nova.openstack.org": CustomResourceDefinition.apiextensions.k8s.io "novanovncproxies.nova.openstack.org" is invalid: spec.validation.openAPIV3Schema.properties[spec].properties[resources].properties[claims].items.x-kubernetes-map-type: Invalid value: "null": must be atomic as item of a list with x-kubernetes-list-type=set



Summarizing 1 Failure:
  [FAIL] [BeforeSuite] 
  /home/centos/repos/nova-operator/test/functional/suite_test.go:105

Ran 0 of 73 Specs in 8.038 seconds
FAIL! -- A BeforeSuite node failed so all tests were skipped.
--- FAIL: TestAPIs (8.04s)

@SeanMooney
Copy link
Contributor

make test catches that failure if you have the new version fo ginkgo

@gibizer
Copy link
Contributor

gibizer commented Jan 13, 2023

make test catches that failure if you have the new version fo ginkgo

Is it really gingko version dependant?

Btw, the prow functional job also passed. That calls make gotest as far as I remember (the logs are not available now for some reason). And make gotest fails for me locally.

@gibizer
Copy link
Contributor

gibizer commented Jan 13, 2023

but also interestingly make manifest in the pre-commit prow job generated new content that I cannot generate locally. And it contains things like x-kubernetes-list-type that seems to be related to the CRD failure.

@gibizer
Copy link
Contributor

gibizer commented Jan 13, 2023

but also interestingly make manifest in the pre-commit prow job generated new content that I cannot generate locally. And it contains things like x-kubernetes-list-type that seems to be related to the CRD failure.

scratch that, the same manifest changes happens locally too. Let me try to add that to this commit to see if that helps with the test run now.

@gibizer
Copy link
Contributor

gibizer commented Jan 13, 2023

Good I understand why test passed before on this PR. The make test target calls make manifest that generates the new CRD pieces which causing the CRD validation error. BUT neither make gotest nor the go test will force the generation of the manifests therefore neither the github action running the test nor the prow functional caught this. Furtunately pre-commit runs make manifests and fails if there is a diff. (+1 for pre-commit) Now that the CRD changes are committed in to this PR both the github action and the prow job fails as expected with the CRD validation error. \o/

So couple of way forwards:

  1. long term we will host our own renovate executor and there we can enable https://docs.renovatebot.com/configuration-options/#postupgradetasks to run make manifests and commit the diff.
  2. short term I can add manifest as a dependency to make gotest and change the github workflow not to call go test but call the make target instead

@gibizer gibizer mentioned this pull request Jan 13, 2023
@renovate renovate bot force-pushed the renovate/k8s.io branch 5 times, most recently from b11f4c2 to b671087 Compare January 20, 2023 13:03
@gibizer
Copy link
Contributor

gibizer commented Jan 20, 2023

(gibi): manually run make manifests generate to include the CRD changes

@renovate renovate bot force-pushed the renovate/k8s.io branch from 83f631c to 39457d2 Compare January 20, 2023 14:16
@gibizer
Copy link
Contributor

gibizer commented Jan 20, 2023

/retest all

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 20, 2023

@gibizer: The /retest command does not accept any targets.
The following commands are available to trigger required jobs:

  • /test functional
  • /test gofmt
  • /test golangci
  • /test golint
  • /test govet
  • /test images
  • /test precommit-check

Use /test all to run all jobs.

In response to this:

/retest all

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.

@gibizer
Copy link
Contributor

gibizer commented Jan 20, 2023

/test all

@gibizer
Copy link
Contributor

gibizer commented Jan 20, 2023

OK so the recent k8s.io packages now compatible with the controller-gen. This is ready to land (openstack-operator already landed a similar bump)

@renovate renovate bot force-pushed the renovate/k8s.io branch from 1a2e93d to b66c605 Compare January 30, 2023 15:06
@renovate
Copy link
Contributor Author

renovate bot commented Jan 30, 2023

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.

Warning: custom changes will be lost.

Copy link
Contributor

@gibizer gibizer left a comment

Choose a reason for hiding this comment

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

I did a local build and test in crc and it works.

@openshift-ci openshift-ci bot added the lgtm label Jan 30, 2023
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Jan 30, 2023

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: gibizer, renovate[bot]

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

@openshift-merge-robot openshift-merge-robot merged commit e2be824 into master Jan 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants