rebase: update kubernetes to 1.26.1

update kubernetes and its dependencies
to v1.26.1

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
This commit is contained in:
Madhu Rajanna
2023-02-01 18:06:36 +01:00
committed by mergify[bot]
parent e9e33fb851
commit 9c8de9471e
937 changed files with 75539 additions and 33050 deletions

View File

@ -19,15 +19,19 @@ package cached
import (
"sync"
openapi_v3 "github.com/google/gnostic/openapiv3"
"k8s.io/client-go/openapi"
)
type groupversion struct {
delegate openapi.GroupVersion
once sync.Once
doc *openapi_v3.Document
err error
lock sync.Mutex
docs map[string]docInfo
}
type docInfo struct {
data []byte
err error
}
func newGroupVersion(delegate openapi.GroupVersion) *groupversion {
@ -36,10 +40,19 @@ func newGroupVersion(delegate openapi.GroupVersion) *groupversion {
}
}
func (g *groupversion) Schema() (*openapi_v3.Document, error) {
g.once.Do(func() {
g.doc, g.err = g.delegate.Schema()
})
func (g *groupversion) Schema(contentType string) ([]byte, error) {
g.lock.Lock()
defer g.lock.Unlock()
return g.doc, g.err
cachedInfo, ok := g.docs[contentType]
if !ok {
if g.docs == nil {
g.docs = make(map[string]docInfo)
}
cachedInfo.data, cachedInfo.err = g.delegate.Schema(contentType)
g.docs[contentType] = cachedInfo
}
return cachedInfo.data, cachedInfo.err
}

View File

@ -19,15 +19,13 @@ package openapi
import (
"context"
openapi_v3 "github.com/google/gnostic/openapiv3"
"google.golang.org/protobuf/proto"
"k8s.io/kube-openapi/pkg/handler3"
)
const openAPIV3mimePb = "application/com.github.proto-openapi.spec.v3@v1.0+protobuf"
const ContentTypeOpenAPIV3PB = "application/com.github.proto-openapi.spec.v3@v1.0+protobuf"
type GroupVersion interface {
Schema() (*openapi_v3.Document, error)
Schema(contentType string) ([]byte, error)
}
type groupversion struct {
@ -39,21 +37,10 @@ func newGroupVersion(client *client, item handler3.OpenAPIV3DiscoveryGroupVersio
return &groupversion{client: client, item: item}
}
func (g *groupversion) Schema() (*openapi_v3.Document, error) {
data, err := g.client.restClient.Get().
func (g *groupversion) Schema(contentType string) ([]byte, error) {
return g.client.restClient.Get().
RequestURI(g.item.ServerRelativeURL).
SetHeader("Accept", openAPIV3mimePb).
SetHeader("Accept", contentType).
Do(context.TODO()).
Raw()
if err != nil {
return nil, err
}
document := &openapi_v3.Document{}
if err := proto.Unmarshal(data, document); err != nil {
return nil, err
}
return document, nil
}