diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json index f125e65c..4ee8d20f 100644 --- a/Godeps/Godeps.json +++ b/Godeps/Godeps.json @@ -1,7 +1,7 @@ { "ImportPath": "k8s.io/sample-controller", "GoVersion": "go1.11", - "GodepVersion": "v80-k8s-r1", + "GodepVersion": "v80", "Packages": [ "./..." ], @@ -12,7 +12,7 @@ }, { "ImportPath": "github.com/evanphx/json-patch", - "Rev": "36442dbdb585210f8d5a1b45e67aa323c197d5c4" + "Rev": "d4020504c68b6bfa818032bedfb48e33e9638506" }, { "ImportPath": "github.com/gogo/protobuf/proto", @@ -176,975 +176,975 @@ }, { "ImportPath": "k8s.io/api/admissionregistration/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/apps/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/apps/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/apps/v1beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/auditregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/authentication/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/authentication/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/authorization/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/authorization/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/autoscaling/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/autoscaling/v2beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/autoscaling/v2beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/batch/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/batch/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/batch/v2alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/certificates/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/coordination/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/coordination/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/core/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/events/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/extensions/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/networking/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/policy/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/rbac/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/rbac/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/rbac/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/scheduling/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/scheduling/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/settings/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/storage/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/storage/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/api/storage/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "d6d898a93caf42e00758b7a9c5a4aec1c71b3a7a" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/errors", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/meta", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/resource", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/internalversion", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/conversion", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/conversion/queryparams", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/fields", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/labels", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/schema", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/json", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/protobuf", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/recognizer", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/streaming", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/versioning", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/selection", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/types", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/cache", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/clock", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/diff", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/errors", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/framer", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/intstr", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/json", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/mergepatch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/naming", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/net", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/runtime", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/sets", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/strategicpatch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/validation", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/validation/field", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/wait", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/yaml", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/version", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/pkg/watch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/json", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/reflect", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "df262fa1a1ba3c1e5f53fa69c6d6d3da15a07955" }, { "ImportPath": "k8s.io/client-go/discovery", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/discovery/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/admissionregistration", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/admissionregistration/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/apps", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/apps/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/apps/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/apps/v1beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/auditregistration", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/auditregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/autoscaling", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/autoscaling/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/autoscaling/v2beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/autoscaling/v2beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/batch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/batch/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/batch/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/batch/v2alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/certificates", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/certificates/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/coordination", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/coordination/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/coordination/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/core", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/core/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/events", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/events/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/extensions", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/extensions/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/internalinterfaces", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/networking", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/networking/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/policy", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/policy/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/rbac", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/rbac/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/rbac/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/rbac/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/scheduling", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/scheduling/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/scheduling/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/settings", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/settings/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/storage", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/storage/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/storage/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/informers/storage/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/scheme", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta2/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/auditregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/auditregistration/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta2/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v2alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v2alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/certificates/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/certificates/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/coordination/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/coordination/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/coordination/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/coordination/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/core/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/core/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/events/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/events/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/extensions/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/extensions/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/networking/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/networking/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/policy/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/policy/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/settings/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/settings/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/admissionregistration/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/apps/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/apps/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/apps/v1beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/auditregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/autoscaling/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/autoscaling/v2beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/autoscaling/v2beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/batch/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/batch/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/batch/v2alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/certificates/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/coordination/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/coordination/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/core/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/events/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/extensions/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/networking/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/policy/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/rbac/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/rbac/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/rbac/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/scheduling/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/scheduling/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/settings/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/storage/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/storage/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/listers/storage/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/pkg/version", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/plugin/pkg/client/auth/exec", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/rest", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/rest/watch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/testing", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/auth", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/cache", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/clientcmd", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/clientcmd/api", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/clientcmd/api/latest", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/clientcmd/api/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/metrics", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/pager", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/record", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/record/util", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/tools/reference", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/transport", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/util/cert", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/util/connrotation", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/util/flowcontrol", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/util/homedir", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/util/retry", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/client-go/util/workqueue", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "c5e224142f36d0823605c45081cffb5a86442eae" }, { "ImportPath": "k8s.io/klog", diff --git a/vendor/github.com/evanphx/json-patch/README.md b/vendor/github.com/evanphx/json-patch/README.md index 13b90420..ad011b2f 100644 --- a/vendor/github.com/evanphx/json-patch/README.md +++ b/vendor/github.com/evanphx/json-patch/README.md @@ -25,6 +25,23 @@ go get -u github.com/evanphx/json-patch * [Comparing JSON documents](#comparing-json-documents) * [Combine merge patches](#combine-merge-patches) + +# Configuration + +* There is a global configuration variable `jsonpatch.SupportNegativeIndices`. + This defaults to `true` and enables the non-standard practice of allowing + negative indices to mean indices starting at the end of an array. This + functionality can be disabled by setting `jsonpatch.SupportNegativeIndices = + false`. + +* There is a global configuration variable `jsonpatch.ArraySizeLimit`, which + limits the length of any array the patched object can have. It defaults to 0, + which means there is no limit. + +* There is a global configuration variable `jsonpatch.ArraySizeAdditionLimit`, + which limits the increase of array length caused by each operation. It + defaults to 0, which means there is no limit. + ## Create and apply a merge patch Given both an original JSON document and a modified JSON document, you can create a [Merge Patch](https://tools.ietf.org/html/rfc7396) document. diff --git a/vendor/github.com/evanphx/json-patch/patch.go b/vendor/github.com/evanphx/json-patch/patch.go index 3d76e9e3..b1ec06ae 100644 --- a/vendor/github.com/evanphx/json-patch/patch.go +++ b/vendor/github.com/evanphx/json-patch/patch.go @@ -14,6 +14,10 @@ const ( eAry ) +var SupportNegativeIndices bool = true +var ArraySizeLimit int = 0 +var ArraySizeAdditionLimit int = 0 + type lazyNode struct { raw *json.RawMessage doc partialDoc @@ -61,6 +65,19 @@ func (n *lazyNode) UnmarshalJSON(data []byte) error { return nil } +func deepCopy(src *lazyNode) (*lazyNode, error) { + if src == nil { + return nil, nil + } + a, err := src.MarshalJSON() + if err != nil { + return nil, err + } + ra := make(json.RawMessage, len(a)) + copy(ra, a) + return newLazyNode(&ra), nil +} + func (n *lazyNode) intoDoc() (*partialDoc, error) { if n.which == eDoc { return &n.doc, nil @@ -354,10 +371,19 @@ func (d *partialArray) set(key string, val *lazyNode) error { } sz := len(*d) + + if diff := idx + 1 - sz; ArraySizeAdditionLimit > 0 && diff > ArraySizeAdditionLimit { + return fmt.Errorf("Unable to increase the array size by %d, the limit is %d", diff, ArraySizeAdditionLimit) + } + if idx+1 > sz { sz = idx + 1 } + if ArraySizeLimit > 0 && sz > ArraySizeLimit { + return fmt.Errorf("Unable to create array of size %d, limit is %d", sz, ArraySizeLimit) + } + ary := make([]*lazyNode, sz) cur := *d @@ -385,17 +411,29 @@ func (d *partialArray) add(key string, val *lazyNode) error { return err } - ary := make([]*lazyNode, len(*d)+1) + sz := len(*d) + 1 + if ArraySizeLimit > 0 && sz > ArraySizeLimit { + return fmt.Errorf("Unable to create array of size %d, limit is %d", sz, ArraySizeLimit) + } + + ary := make([]*lazyNode, sz) cur := *d - if idx < -len(ary) || idx >= len(ary) { + if idx >= len(ary) { return fmt.Errorf("Unable to access invalid index: %d", idx) } - if idx < 0 { - idx += len(ary) + if SupportNegativeIndices { + if idx < -len(ary) { + return fmt.Errorf("Unable to access invalid index: %d", idx) + } + + if idx < 0 { + idx += len(ary) + } } + copy(ary[0:idx], cur[0:idx]) ary[idx] = val copy(ary[idx+1:], cur[idx:]) @@ -426,11 +464,18 @@ func (d *partialArray) remove(key string) error { cur := *d - if idx < -len(cur) || idx >= len(cur) { - return fmt.Errorf("Unable to remove invalid index: %d", idx) + if idx >= len(cur) { + return fmt.Errorf("Unable to access invalid index: %d", idx) } - if idx < 0 { - idx += len(cur) + + if SupportNegativeIndices { + if idx < -len(cur) { + return fmt.Errorf("Unable to access invalid index: %d", idx) + } + + if idx < 0 { + idx += len(cur) + } } ary := make([]*lazyNode, len(cur)-1) @@ -567,7 +612,12 @@ func (p Patch) copy(doc *container, op operation) error { return fmt.Errorf("jsonpatch copy operation does not apply: doc is missing destination path: %s", path) } - return con.set(key, val) + valCopy, err := deepCopy(val) + if err != nil { + return err + } + + return con.add(key, valCopy) } // Equal indicates if 2 JSON documents have the same structural equality. diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/codec.go b/vendor/k8s.io/apimachinery/pkg/runtime/codec.go index 6b859b28..284e32bc 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/codec.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/codec.go @@ -283,6 +283,7 @@ var _ GroupVersioner = multiGroupVersioner{} type multiGroupVersioner struct { target schema.GroupVersion acceptedGroupKinds []schema.GroupKind + coerce bool } // NewMultiGroupVersioner returns the provided group version for any kind that matches one of the provided group kinds. @@ -294,6 +295,22 @@ func NewMultiGroupVersioner(gv schema.GroupVersion, groupKinds ...schema.GroupKi return multiGroupVersioner{target: gv, acceptedGroupKinds: groupKinds} } +// NewCoercingMultiGroupVersioner returns the provided group version for any incoming kind. +// Incoming kinds that match the provided groupKinds are preferred. +// Kind may be empty in the provided group kind, in which case any kind will match. +// Examples: +// gv=mygroup/__internal, groupKinds=mygroup/Foo, anothergroup/Bar +// KindForGroupVersionKinds(yetanother/v1/Baz, anothergroup/v1/Bar) -> mygroup/__internal/Bar (matched preferred group/kind) +// +// gv=mygroup/__internal, groupKinds=mygroup, anothergroup +// KindForGroupVersionKinds(yetanother/v1/Baz, anothergroup/v1/Bar) -> mygroup/__internal/Bar (matched preferred group) +// +// gv=mygroup/__internal, groupKinds=mygroup, anothergroup +// KindForGroupVersionKinds(yetanother/v1/Baz, yetanother/v1/Bar) -> mygroup/__internal/Baz (no preferred group/kind match, uses first kind in list) +func NewCoercingMultiGroupVersioner(gv schema.GroupVersion, groupKinds ...schema.GroupKind) GroupVersioner { + return multiGroupVersioner{target: gv, acceptedGroupKinds: groupKinds, coerce: true} +} + // KindForGroupVersionKinds returns the target group version if any kind matches any of the original group kinds. It will // use the originating kind where possible. func (v multiGroupVersioner) KindForGroupVersionKinds(kinds []schema.GroupVersionKind) (schema.GroupVersionKind, bool) { @@ -308,5 +325,8 @@ func (v multiGroupVersioner) KindForGroupVersionKinds(kinds []schema.GroupVersio return v.target.WithKind(src.Kind), true } } + if v.coerce && len(kinds) > 0 { + return v.target.WithKind(kinds[0].Kind), true + } return schema.GroupVersionKind{}, false } diff --git a/vendor/k8s.io/client-go/tools/cache/thread_safe_store.go b/vendor/k8s.io/client-go/tools/cache/thread_safe_store.go index 1c201efb..5cbdd17e 100644 --- a/vendor/k8s.io/client-go/tools/cache/thread_safe_store.go +++ b/vendor/k8s.io/client-go/tools/cache/thread_safe_store.go @@ -148,12 +148,19 @@ func (c *threadSafeMap) Index(indexName string, obj interface{}) ([]interface{}, } index := c.indices[indexName] - // need to de-dupe the return list. Since multiple keys are allowed, this can happen. - returnKeySet := sets.String{} - for _, indexKey := range indexKeys { - set := index[indexKey] - for _, key := range set.UnsortedList() { - returnKeySet.Insert(key) + var returnKeySet sets.String + if len(indexKeys) == 1 { + // In majority of cases, there is exactly one value matching. + // Optimize the most common path - deduping is not needed here. + returnKeySet = index[indexKeys[0]] + } else { + // Need to de-dupe the return list. + // Since multiple keys are allowed, this can happen. + returnKeySet = sets.String{} + for _, indexKey := range indexKeys { + for key := range index[indexKey] { + returnKeySet.Insert(key) + } } } diff --git a/vendor/k8s.io/code-generator/cmd/conversion-gen/main.go b/vendor/k8s.io/code-generator/cmd/conversion-gen/main.go index 698baa7d..215b17bd 100644 --- a/vendor/k8s.io/code-generator/cmd/conversion-gen/main.go +++ b/vendor/k8s.io/code-generator/cmd/conversion-gen/main.go @@ -14,20 +14,59 @@ See the License for the specific language governing permissions and limitations under the License. */ -// conversion-gen is a tool for auto-generating Conversion functions. +// conversion-gen is a tool for auto-generating functions that convert +// between internal and external types. A general conversion code +// generation task involves three sets of packages: (1) a set of +// packages containing internal types, (2) a single package containing +// the external types, and (3) a single destination package (i.e., +// where the generated conversion functions go, and where the +// developer-authored conversion functions are). The packages +// containing the internal types play the role known as "peer +// packages" in the general code-generation framework of Kubernetes. // -// Given a list of input directories, it will scan for "peer" packages and -// generate functions that efficiently convert between same-name types in each -// package. For any pair of types that has a -// `Convert___To____To__ +// for each such pair of types --- both with (pkg1,pkg2) = +// (internal,external) and (pkg1,pkg2) = (external,internal). +// Additionally: if the destination package does not contain one in a +// non-generated file then a function named +// Convert___To__ +// is also generated and it simply calls the `autoConvert...` +// function. The generated conversion functions use standard value +// assignment wherever possible. For compound types, the generated +// conversion functions call the `Convert...` functions for the +// subsidiary types. Thus developers can override the behavior for +// selected types. For a top-level object type (i.e., the type of an +// object that will be input to an apiserver), for such an override to +// be used by the apiserver the developer-maintained conversion +// functions must also be registered by invoking the +// `AddConversionFuncs` method of the relevant `Scheme` object from +// k8s.io/apimachinery/pkg/runtime. // -// Generation is governed by comment tags in the source. Any package may -// request Conversion generation by including a comment in the file-comments of -// one file, of the form: -// // +k8s:conversion-gen= +// `conversion-gen` will scan its `--input-dirs`, looking at the +// package defined in each of those directories for comment tags that +// define a conversion code generation task. A package requests +// conversion code generation by including one or more comment in the +// package's `doc.go` file (currently anywhere in that file is +// acceptable, but the recommended location is above the `package` +// statement), of the form: +// // +k8s:conversion-gen= +// This introduces a conversion task, for which the destination +// package is the one containing the file with the tag and the tag +// identifies a package containing internal types. If there is also a +// tag of the form +// // +k8s:conversion-gen-external-types= +// then it identifies the package containing the external types; +// otherwise they are in the destination package. +// +// For each conversion code generation task, the full set of internal +// packages (AKA peer packages) consists of the ones specified in the +// `k8s:conversion-gen` tags PLUS any specified in the +// `--base-peer-dirs` and `--extra-peer-dirs` flags on the command +// line. // // When generating for a package, individual types or fields of structs may opt // out of Conversion generation by specifying a comment on the of the form: