mirror of
https://github.com/kubernetes-sigs/prometheus-adapter.git
synced 2026-04-06 01:38:10 +00:00
vendor: revendor
Signed-off-by: Damien Grisonnet <dgrisonn@redhat.com>
This commit is contained in:
parent
61a30408f6
commit
78eec11706
14 changed files with 136 additions and 67 deletions
11
vendor/k8s.io/apiserver/pkg/quota/v1/resources.go
generated
vendored
11
vendor/k8s.io/apiserver/pkg/quota/v1/resources.go
generated
vendored
|
|
@ -226,6 +226,17 @@ func IsZero(a corev1.ResourceList) bool {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// RemoveZeros returns a new resource list that only has no zero values
|
||||||
|
func RemoveZeros(a corev1.ResourceList) corev1.ResourceList {
|
||||||
|
result := corev1.ResourceList{}
|
||||||
|
for key, value := range a {
|
||||||
|
if !value.IsZero() {
|
||||||
|
result[key] = value
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result
|
||||||
|
}
|
||||||
|
|
||||||
// IsNegative returns the set of resource names that have a negative value.
|
// IsNegative returns the set of resource names that have a negative value.
|
||||||
func IsNegative(a corev1.ResourceList) []corev1.ResourceName {
|
func IsNegative(a corev1.ResourceList) []corev1.ResourceName {
|
||||||
results := []corev1.ResourceName{}
|
results := []corev1.ResourceName{}
|
||||||
|
|
|
||||||
4
vendor/k8s.io/apiserver/pkg/server/options/authentication.go
generated
vendored
4
vendor/k8s.io/apiserver/pkg/server/options/authentication.go
generated
vendored
|
|
@ -226,6 +226,10 @@ func (s *DelegatingAuthenticationOptions) WithClientTimeout(timeout time.Duratio
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *DelegatingAuthenticationOptions) Validate() []error {
|
func (s *DelegatingAuthenticationOptions) Validate() []error {
|
||||||
|
if s == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
allErrors := []error{}
|
allErrors := []error{}
|
||||||
allErrors = append(allErrors, s.RequestHeader.Validate()...)
|
allErrors = append(allErrors, s.RequestHeader.Validate()...)
|
||||||
|
|
||||||
|
|
|
||||||
5
vendor/k8s.io/apiserver/pkg/server/options/authorization.go
generated
vendored
5
vendor/k8s.io/apiserver/pkg/server/options/authorization.go
generated
vendored
|
|
@ -104,8 +104,11 @@ func (s *DelegatingAuthorizationOptions) WithCustomRetryBackoff(backoff wait.Bac
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *DelegatingAuthorizationOptions) Validate() []error {
|
func (s *DelegatingAuthorizationOptions) Validate() []error {
|
||||||
allErrors := []error{}
|
if s == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
allErrors := []error{}
|
||||||
if s.WebhookRetryBackoff != nil && s.WebhookRetryBackoff.Steps <= 0 {
|
if s.WebhookRetryBackoff != nil && s.WebhookRetryBackoff.Steps <= 0 {
|
||||||
allErrors = append(allErrors, fmt.Errorf("number of webhook retry attempts must be greater than 1, but is: %d", s.WebhookRetryBackoff.Steps))
|
allErrors = append(allErrors, fmt.Errorf("number of webhook retry attempts must be greater than 1, but is: %d", s.WebhookRetryBackoff.Steps))
|
||||||
}
|
}
|
||||||
|
|
|
||||||
6
vendor/k8s.io/apiserver/pkg/storage/etcd3/metrics/metrics.go
generated
vendored
6
vendor/k8s.io/apiserver/pkg/storage/etcd3/metrics/metrics.go
generated
vendored
|
|
@ -37,10 +37,8 @@ var (
|
||||||
&compbasemetrics.HistogramOpts{
|
&compbasemetrics.HistogramOpts{
|
||||||
Name: "etcd_request_duration_seconds",
|
Name: "etcd_request_duration_seconds",
|
||||||
Help: "Etcd request latency in seconds for each operation and object type.",
|
Help: "Etcd request latency in seconds for each operation and object type.",
|
||||||
// Keeping it similar to the buckets used by the apiserver_request_duration_seconds metric so that
|
// Etcd request latency in seconds for each operation and object type.
|
||||||
// api latency and etcd latency can be more comparable side by side.
|
Buckets: []float64{0.005, 0.025, 0.1, 0.25, 0.5, 1.0, 2.0, 4.0, 15.0, 30.0, 60.0},
|
||||||
Buckets: []float64{.005, .01, .025, 0.05, 0.1, 0.15, 0.2, 0.25, 0.3, 0.35, 0.4, 0.45, 0.5, 0.6, 0.7,
|
|
||||||
0.8, 0.9, 1.0, 1.25, 1.5, 1.75, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30, 40, 50, 60},
|
|
||||||
StabilityLevel: compbasemetrics.ALPHA,
|
StabilityLevel: compbasemetrics.ALPHA,
|
||||||
},
|
},
|
||||||
[]string{"operation", "type"},
|
[]string{"operation", "type"},
|
||||||
|
|
|
||||||
15
vendor/k8s.io/apiserver/pkg/util/flowcontrol/OWNERS
generated
vendored
Normal file
15
vendor/k8s.io/apiserver/pkg/util/flowcontrol/OWNERS
generated
vendored
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
# See the OWNERS docs at https://go.k8s.io/owners
|
||||||
|
|
||||||
|
approvers:
|
||||||
|
- lavalamp
|
||||||
|
- deads2k
|
||||||
|
- yue9944882
|
||||||
|
- MikeSpreitzer
|
||||||
|
reviewers:
|
||||||
|
- lavalamp
|
||||||
|
- deads2k
|
||||||
|
- yue9944882
|
||||||
|
- MikeSpreitzer
|
||||||
|
labels:
|
||||||
|
- sig/api-machinery
|
||||||
|
- area/apiserver
|
||||||
17
vendor/k8s.io/apiserver/pkg/util/flowcontrol/apf_controller.go
generated
vendored
17
vendor/k8s.io/apiserver/pkg/util/flowcontrol/apf_controller.go
generated
vendored
|
|
@ -34,6 +34,7 @@ import (
|
||||||
"k8s.io/apimachinery/pkg/labels"
|
"k8s.io/apimachinery/pkg/labels"
|
||||||
apitypes "k8s.io/apimachinery/pkg/types"
|
apitypes "k8s.io/apimachinery/pkg/types"
|
||||||
apierrors "k8s.io/apimachinery/pkg/util/errors"
|
apierrors "k8s.io/apimachinery/pkg/util/errors"
|
||||||
|
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
|
||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
fcboot "k8s.io/apiserver/pkg/apis/flowcontrol/bootstrap"
|
fcboot "k8s.io/apiserver/pkg/apis/flowcontrol/bootstrap"
|
||||||
"k8s.io/apiserver/pkg/authentication/user"
|
"k8s.io/apiserver/pkg/authentication/user"
|
||||||
|
|
@ -244,14 +245,28 @@ func (cfgCtlr *configController) updateObservations() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// used from the unit tests only.
|
||||||
|
func (cfgCtlr *configController) getPriorityLevelState(plName string) *priorityLevelState {
|
||||||
|
cfgCtlr.lock.Lock()
|
||||||
|
defer cfgCtlr.lock.Unlock()
|
||||||
|
return cfgCtlr.priorityLevelStates[plName]
|
||||||
|
}
|
||||||
|
|
||||||
func (cfgCtlr *configController) Run(stopCh <-chan struct{}) error {
|
func (cfgCtlr *configController) Run(stopCh <-chan struct{}) error {
|
||||||
|
defer utilruntime.HandleCrash()
|
||||||
|
|
||||||
|
// Let the config worker stop when we are done
|
||||||
defer cfgCtlr.configQueue.ShutDown()
|
defer cfgCtlr.configQueue.ShutDown()
|
||||||
|
|
||||||
klog.Info("Starting API Priority and Fairness config controller")
|
klog.Info("Starting API Priority and Fairness config controller")
|
||||||
if ok := cache.WaitForCacheSync(stopCh, cfgCtlr.plInformerSynced, cfgCtlr.fsInformerSynced); !ok {
|
if ok := cache.WaitForCacheSync(stopCh, cfgCtlr.plInformerSynced, cfgCtlr.fsInformerSynced); !ok {
|
||||||
return fmt.Errorf("Never achieved initial sync")
|
return fmt.Errorf("Never achieved initial sync")
|
||||||
}
|
}
|
||||||
|
|
||||||
klog.Info("Running API Priority and Fairness config worker")
|
klog.Info("Running API Priority and Fairness config worker")
|
||||||
wait.Until(cfgCtlr.runWorker, time.Second, stopCh)
|
go wait.Until(cfgCtlr.runWorker, time.Second, stopCh)
|
||||||
|
|
||||||
|
<-stopCh
|
||||||
klog.Info("Shutting down API Priority and Fairness config worker")
|
klog.Info("Shutting down API Priority and Fairness config worker")
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
|
||||||
19
vendor/k8s.io/apiserver/pkg/util/flowcontrol/apf_filter.go
generated
vendored
19
vendor/k8s.io/apiserver/pkg/util/flowcontrol/apf_filter.go
generated
vendored
|
|
@ -112,21 +112,28 @@ func (cfgCtlr *configController) Handle(ctx context.Context, requestDigest Reque
|
||||||
}
|
}
|
||||||
klog.V(7).Infof("Handle(%#+v) => fsName=%q, distMethod=%#+v, plName=%q, isExempt=%v, queued=%v", requestDigest, fs.Name, fs.Spec.DistinguisherMethod, pl.Name, isExempt, queued)
|
klog.V(7).Infof("Handle(%#+v) => fsName=%q, distMethod=%#+v, plName=%q, isExempt=%v, queued=%v", requestDigest, fs.Name, fs.Spec.DistinguisherMethod, pl.Name, isExempt, queued)
|
||||||
var executed bool
|
var executed bool
|
||||||
idle := req.Finish(func() {
|
idle, panicking := true, true
|
||||||
|
defer func() {
|
||||||
|
klog.V(7).Infof("Handle(%#+v) => fsName=%q, distMethod=%#+v, plName=%q, isExempt=%v, queued=%v, Finish() => panicking=%v idle=%v",
|
||||||
|
requestDigest, fs.Name, fs.Spec.DistinguisherMethod, pl.Name, isExempt, queued, panicking, idle)
|
||||||
|
if idle {
|
||||||
|
cfgCtlr.maybeReap(pl.Name)
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
idle = req.Finish(func() {
|
||||||
if queued {
|
if queued {
|
||||||
metrics.ObserveWaitingDuration(pl.Name, fs.Name, strconv.FormatBool(req != nil), time.Since(startWaitingTime))
|
metrics.ObserveWaitingDuration(pl.Name, fs.Name, strconv.FormatBool(req != nil), time.Since(startWaitingTime))
|
||||||
}
|
}
|
||||||
metrics.AddDispatch(pl.Name, fs.Name)
|
metrics.AddDispatch(pl.Name, fs.Name)
|
||||||
executed = true
|
executed = true
|
||||||
startExecutionTime := time.Now()
|
startExecutionTime := time.Now()
|
||||||
|
defer func() {
|
||||||
|
metrics.ObserveExecutionDuration(pl.Name, fs.Name, time.Since(startExecutionTime))
|
||||||
|
}()
|
||||||
execFn()
|
execFn()
|
||||||
metrics.ObserveExecutionDuration(pl.Name, fs.Name, time.Since(startExecutionTime))
|
|
||||||
})
|
})
|
||||||
if queued && !executed {
|
if queued && !executed {
|
||||||
metrics.ObserveWaitingDuration(pl.Name, fs.Name, strconv.FormatBool(req != nil), time.Since(startWaitingTime))
|
metrics.ObserveWaitingDuration(pl.Name, fs.Name, strconv.FormatBool(req != nil), time.Since(startWaitingTime))
|
||||||
}
|
}
|
||||||
klog.V(7).Infof("Handle(%#+v) => fsName=%q, distMethod=%#+v, plName=%q, isExempt=%v, queued=%v, Finish() => idle=%v", requestDigest, fs.Name, fs.Spec.DistinguisherMethod, pl.Name, isExempt, queued, idle)
|
panicking = false
|
||||||
if idle {
|
|
||||||
cfgCtlr.maybeReap(pl.Name)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
11
vendor/k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing/queueset/queueset.go
generated
vendored
11
vendor/k8s.io/apiserver/pkg/util/flowcontrol/fairqueuing/queueset/queueset.go
generated
vendored
|
|
@ -316,8 +316,15 @@ func (req *request) Finish(execFn func()) bool {
|
||||||
if !exec {
|
if !exec {
|
||||||
return idle
|
return idle
|
||||||
}
|
}
|
||||||
execFn()
|
func() {
|
||||||
return req.qs.finishRequestAndDispatchAsMuchAsPossible(req)
|
defer func() {
|
||||||
|
idle = req.qs.finishRequestAndDispatchAsMuchAsPossible(req)
|
||||||
|
}()
|
||||||
|
|
||||||
|
execFn()
|
||||||
|
}()
|
||||||
|
|
||||||
|
return idle
|
||||||
}
|
}
|
||||||
|
|
||||||
func (req *request) wait() (bool, bool) {
|
func (req *request) wait() (bool, bool) {
|
||||||
|
|
|
||||||
16
vendor/k8s.io/apiserver/pkg/util/flowcontrol/metrics/sample_and_watermark.go
generated
vendored
16
vendor/k8s.io/apiserver/pkg/util/flowcontrol/metrics/sample_and_watermark.go
generated
vendored
|
|
@ -160,17 +160,14 @@ func (saw *sampleAndWaterMarkHistograms) SetX1(x1 float64) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (saw *sampleAndWaterMarkHistograms) innerSet(updateXOrX1 func()) {
|
func (saw *sampleAndWaterMarkHistograms) innerSet(updateXOrX1 func()) {
|
||||||
var when time.Time
|
when, whenInt, acc, wellOrdered := func() (time.Time, int64, sampleAndWaterMarkAccumulator, bool) {
|
||||||
var whenInt int64
|
|
||||||
var acc sampleAndWaterMarkAccumulator
|
|
||||||
var wellOrdered bool
|
|
||||||
func() {
|
|
||||||
saw.Lock()
|
saw.Lock()
|
||||||
defer saw.Unlock()
|
defer saw.Unlock()
|
||||||
when = saw.clock.Now()
|
// Moved these variables here to tiptoe around https://github.com/golang/go/issues/43570 for #97685
|
||||||
whenInt = saw.quantize(when)
|
when := saw.clock.Now()
|
||||||
acc = saw.sampleAndWaterMarkAccumulator
|
whenInt := saw.quantize(when)
|
||||||
wellOrdered = !when.Before(acc.lastSet)
|
acc := saw.sampleAndWaterMarkAccumulator
|
||||||
|
wellOrdered := !when.Before(acc.lastSet)
|
||||||
updateXOrX1()
|
updateXOrX1()
|
||||||
saw.relX = saw.x / saw.x1
|
saw.relX = saw.x / saw.x1
|
||||||
if wellOrdered {
|
if wellOrdered {
|
||||||
|
|
@ -195,6 +192,7 @@ func (saw *sampleAndWaterMarkHistograms) innerSet(updateXOrX1 func()) {
|
||||||
} else if saw.relX > saw.hiRelX {
|
} else if saw.relX > saw.hiRelX {
|
||||||
saw.hiRelX = saw.relX
|
saw.hiRelX = saw.relX
|
||||||
}
|
}
|
||||||
|
return when, whenInt, acc, wellOrdered
|
||||||
}()
|
}()
|
||||||
if !wellOrdered {
|
if !wellOrdered {
|
||||||
lastSetS := acc.lastSet.String()
|
lastSetS := acc.lastSet.String()
|
||||||
|
|
|
||||||
12
vendor/k8s.io/apiserver/plugin/pkg/authenticator/token/webhook/webhook.go
generated
vendored
12
vendor/k8s.io/apiserver/plugin/pkg/authenticator/token/webhook/webhook.go
generated
vendored
|
|
@ -104,14 +104,14 @@ func (w *WebhookTokenAuthenticator) AuthenticateToken(ctx context.Context, token
|
||||||
}
|
}
|
||||||
var (
|
var (
|
||||||
result *authenticationv1.TokenReview
|
result *authenticationv1.TokenReview
|
||||||
err error
|
|
||||||
auds authenticator.Audiences
|
auds authenticator.Audiences
|
||||||
)
|
)
|
||||||
webhook.WithExponentialBackoff(ctx, w.retryBackoff, func() error {
|
// WithExponentialBackoff will return tokenreview create error (tokenReviewErr) if any.
|
||||||
result, err = w.tokenReview.Create(ctx, r, metav1.CreateOptions{})
|
if err := webhook.WithExponentialBackoff(ctx, w.retryBackoff, func() error {
|
||||||
return err
|
var tokenReviewErr error
|
||||||
}, webhook.DefaultShouldRetry)
|
result, tokenReviewErr = w.tokenReview.Create(ctx, r, metav1.CreateOptions{})
|
||||||
if err != nil {
|
return tokenReviewErr
|
||||||
|
}, webhook.DefaultShouldRetry); err != nil {
|
||||||
// An error here indicates bad configuration or an outage. Log for debugging.
|
// An error here indicates bad configuration or an outage. Log for debugging.
|
||||||
klog.Errorf("Failed to make webhook authenticator request: %v", err)
|
klog.Errorf("Failed to make webhook authenticator request: %v", err)
|
||||||
return nil, false, err
|
return nil, false, err
|
||||||
|
|
|
||||||
18
vendor/k8s.io/apiserver/plugin/pkg/authorizer/webhook/webhook.go
generated
vendored
18
vendor/k8s.io/apiserver/plugin/pkg/authorizer/webhook/webhook.go
generated
vendored
|
|
@ -192,19 +192,17 @@ func (w *WebhookAuthorizer) Authorize(ctx context.Context, attr authorizer.Attri
|
||||||
if entry, ok := w.responseCache.Get(string(key)); ok {
|
if entry, ok := w.responseCache.Get(string(key)); ok {
|
||||||
r.Status = entry.(authorizationv1.SubjectAccessReviewStatus)
|
r.Status = entry.(authorizationv1.SubjectAccessReviewStatus)
|
||||||
} else {
|
} else {
|
||||||
var (
|
var result *authorizationv1.SubjectAccessReview
|
||||||
result *authorizationv1.SubjectAccessReview
|
// WithExponentialBackoff will return SAR create error (sarErr) if any.
|
||||||
err error
|
if err := webhook.WithExponentialBackoff(ctx, w.retryBackoff, func() error {
|
||||||
)
|
var sarErr error
|
||||||
webhook.WithExponentialBackoff(ctx, w.retryBackoff, func() error {
|
result, sarErr = w.subjectAccessReview.Create(ctx, r, metav1.CreateOptions{})
|
||||||
result, err = w.subjectAccessReview.Create(ctx, r, metav1.CreateOptions{})
|
return sarErr
|
||||||
return err
|
}, webhook.DefaultShouldRetry); err != nil {
|
||||||
}, webhook.DefaultShouldRetry)
|
|
||||||
if err != nil {
|
|
||||||
// An error here indicates bad configuration or an outage. Log for debugging.
|
|
||||||
klog.Errorf("Failed to make webhook authorizer request: %v", err)
|
klog.Errorf("Failed to make webhook authorizer request: %v", err)
|
||||||
return w.decisionOnError, "", err
|
return w.decisionOnError, "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
r.Status = result.Status
|
r.Status = result.Status
|
||||||
if shouldCache(attr) {
|
if shouldCache(attr) {
|
||||||
if r.Status.Allowed {
|
if r.Status.Allowed {
|
||||||
|
|
|
||||||
48
vendor/k8s.io/kube-openapi/pkg/schemaconv/smd.go
generated
vendored
48
vendor/k8s.io/kube-openapi/pkg/schemaconv/smd.go
generated
vendored
|
|
@ -27,6 +27,10 @@ import (
|
||||||
"sigs.k8s.io/structured-merge-diff/v4/schema"
|
"sigs.k8s.io/structured-merge-diff/v4/schema"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
const (
|
||||||
|
quantityResource = "io.k8s.apimachinery.pkg.api.resource.Quantity"
|
||||||
|
)
|
||||||
|
|
||||||
// ToSchema converts openapi definitions into a schema suitable for structured
|
// ToSchema converts openapi definitions into a schema suitable for structured
|
||||||
// merge (i.e. kubectl apply v2).
|
// merge (i.e. kubectl apply v2).
|
||||||
func ToSchema(models proto.Models) (*schema.Schema, error) {
|
func ToSchema(models proto.Models) (*schema.Schema, error) {
|
||||||
|
|
@ -414,29 +418,33 @@ func ptr(s schema.Scalar) *schema.Scalar { return &s }
|
||||||
|
|
||||||
func (c *convert) VisitPrimitive(p *proto.Primitive) {
|
func (c *convert) VisitPrimitive(p *proto.Primitive) {
|
||||||
a := c.top()
|
a := c.top()
|
||||||
switch p.Type {
|
if c.currentName == quantityResource {
|
||||||
case proto.Integer:
|
a.Scalar = ptr(schema.Scalar("untyped"))
|
||||||
a.Scalar = ptr(schema.Numeric)
|
} else {
|
||||||
case proto.Number:
|
switch p.Type {
|
||||||
a.Scalar = ptr(schema.Numeric)
|
case proto.Integer:
|
||||||
case proto.String:
|
a.Scalar = ptr(schema.Numeric)
|
||||||
switch p.Format {
|
case proto.Number:
|
||||||
case "":
|
a.Scalar = ptr(schema.Numeric)
|
||||||
a.Scalar = ptr(schema.String)
|
case proto.String:
|
||||||
case "byte":
|
switch p.Format {
|
||||||
// byte really means []byte and is encoded as a string.
|
case "":
|
||||||
a.Scalar = ptr(schema.String)
|
a.Scalar = ptr(schema.String)
|
||||||
case "int-or-string":
|
case "byte":
|
||||||
a.Scalar = ptr(schema.Scalar("untyped"))
|
// byte really means []byte and is encoded as a string.
|
||||||
case "date-time":
|
a.Scalar = ptr(schema.String)
|
||||||
a.Scalar = ptr(schema.Scalar("untyped"))
|
case "int-or-string":
|
||||||
|
a.Scalar = ptr(schema.Scalar("untyped"))
|
||||||
|
case "date-time":
|
||||||
|
a.Scalar = ptr(schema.Scalar("untyped"))
|
||||||
|
default:
|
||||||
|
a.Scalar = ptr(schema.Scalar("untyped"))
|
||||||
|
}
|
||||||
|
case proto.Boolean:
|
||||||
|
a.Scalar = ptr(schema.Boolean)
|
||||||
default:
|
default:
|
||||||
a.Scalar = ptr(schema.Scalar("untyped"))
|
a.Scalar = ptr(schema.Scalar("untyped"))
|
||||||
}
|
}
|
||||||
case proto.Boolean:
|
|
||||||
a.Scalar = ptr(schema.Boolean)
|
|
||||||
default:
|
|
||||||
a.Scalar = ptr(schema.Scalar("untyped"))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
5
vendor/k8s.io/kube-openapi/pkg/util/util.go
generated
vendored
5
vendor/k8s.io/kube-openapi/pkg/util/util.go
generated
vendored
|
|
@ -80,6 +80,9 @@ func ToRESTFriendlyName(name string) string {
|
||||||
// Example for vendored Go type:
|
// Example for vendored Go type:
|
||||||
// Original full path: k8s.io/kubernetes/vendor/k8s.io/api/core/v1.Pod
|
// Original full path: k8s.io/kubernetes/vendor/k8s.io/api/core/v1.Pod
|
||||||
// Canonical name: k8s.io/api/core/v1.Pod
|
// Canonical name: k8s.io/api/core/v1.Pod
|
||||||
|
//
|
||||||
|
// Original full path: vendor/k8s.io/api/core/v1.Pod
|
||||||
|
// Canonical name: k8s.io/api/core/v1.Pod
|
||||||
type OpenAPICanonicalTypeNamer interface {
|
type OpenAPICanonicalTypeNamer interface {
|
||||||
OpenAPICanonicalTypeName() string
|
OpenAPICanonicalTypeName() string
|
||||||
}
|
}
|
||||||
|
|
@ -100,6 +103,8 @@ func GetCanonicalTypeName(model interface{}) string {
|
||||||
path := t.PkgPath()
|
path := t.PkgPath()
|
||||||
if strings.Contains(path, "/vendor/") {
|
if strings.Contains(path, "/vendor/") {
|
||||||
path = path[strings.Index(path, "/vendor/")+len("/vendor/"):]
|
path = path[strings.Index(path, "/vendor/")+len("/vendor/"):]
|
||||||
|
} else if strings.HasPrefix(path, "vendor/") {
|
||||||
|
path = strings.TrimPrefix(path, "vendor/")
|
||||||
}
|
}
|
||||||
return path + "." + t.Name()
|
return path + "." + t.Name()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
16
vendor/modules.txt
vendored
16
vendor/modules.txt
vendored
|
|
@ -360,7 +360,7 @@ gopkg.in/tomb.v1
|
||||||
gopkg.in/yaml.v2
|
gopkg.in/yaml.v2
|
||||||
# gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c
|
# gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c
|
||||||
gopkg.in/yaml.v3
|
gopkg.in/yaml.v3
|
||||||
# k8s.io/api v0.20.0
|
# k8s.io/api v0.20.2
|
||||||
k8s.io/api/admission/v1
|
k8s.io/api/admission/v1
|
||||||
k8s.io/api/admission/v1beta1
|
k8s.io/api/admission/v1beta1
|
||||||
k8s.io/api/admissionregistration/v1
|
k8s.io/api/admissionregistration/v1
|
||||||
|
|
@ -406,7 +406,7 @@ k8s.io/api/scheduling/v1beta1
|
||||||
k8s.io/api/storage/v1
|
k8s.io/api/storage/v1
|
||||||
k8s.io/api/storage/v1alpha1
|
k8s.io/api/storage/v1alpha1
|
||||||
k8s.io/api/storage/v1beta1
|
k8s.io/api/storage/v1beta1
|
||||||
# k8s.io/apimachinery v0.20.0
|
# k8s.io/apimachinery v0.20.2
|
||||||
k8s.io/apimachinery/pkg/api/equality
|
k8s.io/apimachinery/pkg/api/equality
|
||||||
k8s.io/apimachinery/pkg/api/errors
|
k8s.io/apimachinery/pkg/api/errors
|
||||||
k8s.io/apimachinery/pkg/api/meta
|
k8s.io/apimachinery/pkg/api/meta
|
||||||
|
|
@ -459,7 +459,7 @@ k8s.io/apimachinery/pkg/version
|
||||||
k8s.io/apimachinery/pkg/watch
|
k8s.io/apimachinery/pkg/watch
|
||||||
k8s.io/apimachinery/third_party/forked/golang/json
|
k8s.io/apimachinery/third_party/forked/golang/json
|
||||||
k8s.io/apimachinery/third_party/forked/golang/reflect
|
k8s.io/apimachinery/third_party/forked/golang/reflect
|
||||||
# k8s.io/apiserver v0.20.0
|
# k8s.io/apiserver v0.20.2 => k8s.io/apiserver v0.0.0-20210121032832-b18087e841ff
|
||||||
k8s.io/apiserver/pkg/admission
|
k8s.io/apiserver/pkg/admission
|
||||||
k8s.io/apiserver/pkg/admission/configuration
|
k8s.io/apiserver/pkg/admission/configuration
|
||||||
k8s.io/apiserver/pkg/admission/initializer
|
k8s.io/apiserver/pkg/admission/initializer
|
||||||
|
|
@ -583,7 +583,7 @@ k8s.io/apiserver/plugin/pkg/audit/truncate
|
||||||
k8s.io/apiserver/plugin/pkg/audit/webhook
|
k8s.io/apiserver/plugin/pkg/audit/webhook
|
||||||
k8s.io/apiserver/plugin/pkg/authenticator/token/webhook
|
k8s.io/apiserver/plugin/pkg/authenticator/token/webhook
|
||||||
k8s.io/apiserver/plugin/pkg/authorizer/webhook
|
k8s.io/apiserver/plugin/pkg/authorizer/webhook
|
||||||
# k8s.io/client-go v0.20.0
|
# k8s.io/client-go v0.20.2
|
||||||
k8s.io/client-go/discovery
|
k8s.io/client-go/discovery
|
||||||
k8s.io/client-go/dynamic
|
k8s.io/client-go/dynamic
|
||||||
k8s.io/client-go/dynamic/fake
|
k8s.io/client-go/dynamic/fake
|
||||||
|
|
@ -758,7 +758,7 @@ k8s.io/client-go/util/flowcontrol
|
||||||
k8s.io/client-go/util/homedir
|
k8s.io/client-go/util/homedir
|
||||||
k8s.io/client-go/util/keyutil
|
k8s.io/client-go/util/keyutil
|
||||||
k8s.io/client-go/util/workqueue
|
k8s.io/client-go/util/workqueue
|
||||||
# k8s.io/component-base v0.20.0
|
# k8s.io/component-base v0.20.2
|
||||||
k8s.io/component-base/cli/flag
|
k8s.io/component-base/cli/flag
|
||||||
k8s.io/component-base/featuregate
|
k8s.io/component-base/featuregate
|
||||||
k8s.io/component-base/logs
|
k8s.io/component-base/logs
|
||||||
|
|
@ -779,7 +779,7 @@ k8s.io/gengo/parser
|
||||||
k8s.io/gengo/types
|
k8s.io/gengo/types
|
||||||
# k8s.io/klog/v2 v2.4.0
|
# k8s.io/klog/v2 v2.4.0
|
||||||
k8s.io/klog/v2
|
k8s.io/klog/v2
|
||||||
# k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd
|
# k8s.io/kube-openapi v0.0.0-20210113233702-8566a335510f
|
||||||
k8s.io/kube-openapi/cmd/openapi-gen
|
k8s.io/kube-openapi/cmd/openapi-gen
|
||||||
k8s.io/kube-openapi/cmd/openapi-gen/args
|
k8s.io/kube-openapi/cmd/openapi-gen/args
|
||||||
k8s.io/kube-openapi/pkg/builder
|
k8s.io/kube-openapi/pkg/builder
|
||||||
|
|
@ -791,7 +791,7 @@ k8s.io/kube-openapi/pkg/schemaconv
|
||||||
k8s.io/kube-openapi/pkg/util
|
k8s.io/kube-openapi/pkg/util
|
||||||
k8s.io/kube-openapi/pkg/util/proto
|
k8s.io/kube-openapi/pkg/util/proto
|
||||||
k8s.io/kube-openapi/pkg/util/sets
|
k8s.io/kube-openapi/pkg/util/sets
|
||||||
# k8s.io/metrics v0.20.0
|
# k8s.io/metrics v0.20.2
|
||||||
k8s.io/metrics/pkg/apis/custom_metrics
|
k8s.io/metrics/pkg/apis/custom_metrics
|
||||||
k8s.io/metrics/pkg/apis/custom_metrics/install
|
k8s.io/metrics/pkg/apis/custom_metrics/install
|
||||||
k8s.io/metrics/pkg/apis/custom_metrics/v1beta1
|
k8s.io/metrics/pkg/apis/custom_metrics/v1beta1
|
||||||
|
|
@ -802,7 +802,7 @@ k8s.io/metrics/pkg/apis/external_metrics/v1beta1
|
||||||
k8s.io/metrics/pkg/apis/metrics
|
k8s.io/metrics/pkg/apis/metrics
|
||||||
k8s.io/metrics/pkg/apis/metrics/install
|
k8s.io/metrics/pkg/apis/metrics/install
|
||||||
k8s.io/metrics/pkg/apis/metrics/v1beta1
|
k8s.io/metrics/pkg/apis/metrics/v1beta1
|
||||||
# k8s.io/sample-apiserver v0.20.0
|
# k8s.io/sample-apiserver v0.20.2
|
||||||
k8s.io/sample-apiserver/pkg/apis/wardle
|
k8s.io/sample-apiserver/pkg/apis/wardle
|
||||||
k8s.io/sample-apiserver/pkg/apis/wardle/install
|
k8s.io/sample-apiserver/pkg/apis/wardle/install
|
||||||
k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1
|
k8s.io/sample-apiserver/pkg/apis/wardle/v1alpha1
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue