-
Task
-
Resolution: Unresolved
-
Undefined
-
None
-
None
-
None
-
None
-
False
-
-
False
-
None
-
None
-
None
-
None
Overview
Update k8s.io/kube-openapi from digest c8a335a to 589584f.
Dependency Information
- Package: k8s.io/kube-openapi
- Type: Indirect dependency (pulled in by k8s.io/api, k8s.io/apiextensions-apiserver, k8s.io/apimachinery, and other Kubernetes packages)
- Old version: v0.0.0-20250318190949-c8a335a9a2ff
- New version: v0.0.0-20250910181357-589584f1c912
- Location: go.mod, api/go.mod, contrib/gomaxprocs-webhook/go.mod, hack/tools/go.mod
Usage in hypershift
k8s.io/kube-openapi is a core Kubernetes library that provides OpenAPI schema generation and validation capabilities. It is used throughout the project via Kubernetes client libraries.
- Primary usage: OpenAPI schema generation and validation for Kubernetes APIs
- Impact: Runtime - This library is used by core Kubernetes packages for API schema handling
- Files affected: Extensive vendor/ directory updates across multiple go.mod files
Changes in Update
This update includes several improvements and fixes:
- Add k8s-short-name and k8s-long-name formats for better Kubernetes resource naming
- Add OpenAPIModelNamer and opt-in generator support for improved code generation
- Bugfix: walk on parameter references for proper OpenAPI spec handling
- Drop usage of forked copies of goyaml.v2, migrating to go.yaml.in/yaml/v3
- Drop go 1.21 from supported versions (now requires go 1.22+)
- Bump gnostic-models dependency
- Update to latest structured-merge-diff and gengo libraries
How to Test
Since this is an indirect dependency used by Kubernetes core libraries, testing should focus on ensuring proper Kubernetes API interactions:
-
- Run unit tests:
make test
- Run unit tests:
2. Run integration tests:
make e2e
3. Verify API server functionality:
- Test cluster creation and deletion
- Verify API schema validation works correctly
- Check that CRD operations function properly
4. Run linter and code generation:
make verify
Expected behavior: All tests should pass, and Kubernetes API interactions should function normally without schema validation errors.