diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json index 6be9f5aa..9f7104eb 100644 --- a/Godeps/Godeps.json +++ b/Godeps/Godeps.json @@ -176,979 +176,979 @@ }, { "ImportPath": "k8s.io/api/admissionregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/admissionregistration/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/apps/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/apps/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/apps/v1beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/auditregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/authentication/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/authentication/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/authorization/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/authorization/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/autoscaling/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/autoscaling/v2beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/autoscaling/v2beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/batch/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/batch/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/batch/v2alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/certificates/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/coordination/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/core/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/events/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/extensions/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/networking/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/policy/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/rbac/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/rbac/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/rbac/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/scheduling/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/scheduling/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/settings/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/storage/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/storage/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/api/storage/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "dacd7df5a50b93833c2a2c2f81348f910be8bfc7" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/errors", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/meta", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/api/resource", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/internalversion", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/apis/meta/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/conversion", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/conversion/queryparams", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/fields", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/labels", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/schema", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/json", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/protobuf", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/recognizer", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/streaming", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/runtime/serializer/versioning", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/selection", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/types", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/cache", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/clock", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/diff", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/errors", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/framer", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/intstr", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/json", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/mergepatch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/naming", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/net", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/runtime", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/sets", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/strategicpatch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/validation", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/validation/field", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/wait", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/util/yaml", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/version", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/pkg/watch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/json", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/apimachinery/third_party/forked/golang/reflect", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "01f8b7d1121a34a7fc9f9c988f4f0b1f00fccb92" }, { "ImportPath": "k8s.io/client-go/discovery", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/discovery/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/admissionregistration", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/admissionregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/admissionregistration/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/apps", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/apps/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/apps/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/apps/v1beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/auditregistration", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/auditregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/autoscaling", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/autoscaling/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/autoscaling/v2beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/autoscaling/v2beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/batch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/batch/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/batch/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/batch/v2alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/certificates", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/certificates/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/coordination", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/coordination/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/core", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/core/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/events", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/events/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/extensions", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/extensions/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/internalinterfaces", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/networking", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/networking/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/policy", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/policy/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/rbac", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/rbac/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/rbac/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/rbac/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/scheduling", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/scheduling/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/scheduling/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/settings", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/settings/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/storage", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/storage/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/storage/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/informers/storage/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/scheme", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/admissionregistration/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/apps/v1beta2/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/auditregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/auditregistration/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authentication/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/authorization/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/autoscaling/v2beta2/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v2alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/batch/v2alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/certificates/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/certificates/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/coordination/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/coordination/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/core/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/core/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/events/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/events/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/extensions/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/extensions/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/networking/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/networking/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/policy/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/policy/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/rbac/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/scheduling/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/settings/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/settings/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1alpha1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/kubernetes/typed/storage/v1beta1/fake", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/admissionregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/admissionregistration/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/apps/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/apps/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/apps/v1beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/auditregistration/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/autoscaling/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/autoscaling/v2beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/autoscaling/v2beta2", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/batch/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/batch/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/batch/v2alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/certificates/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/coordination/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/core/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/events/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/extensions/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/networking/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/policy/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/rbac/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/rbac/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/rbac/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/scheduling/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/scheduling/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/settings/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/storage/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/storage/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/listers/storage/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/pkg/apis/clientauthentication/v1beta1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/pkg/version", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/plugin/pkg/client/auth/exec", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/rest", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/rest/watch", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/testing", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/auth", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/cache", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/clientcmd", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/clientcmd/api", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/clientcmd/api/latest", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/clientcmd/api/v1", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/metrics", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/pager", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/record", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/tools/reference", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/transport", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/util/buffer", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/util/cert", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/util/connrotation", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/util/flowcontrol", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/util/homedir", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/util/integer", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/util/retry", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/client-go/util/workqueue", - "Rev": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + "Rev": "eb5b9a8cfde7614f750cd515d80a294314e4d70e" }, { "ImportPath": "k8s.io/klog", diff --git a/vendor/gopkg.in/yaml.v2/decode.go b/vendor/gopkg.in/yaml.v2/decode.go index e4e56e28..53108765 100644 --- a/vendor/gopkg.in/yaml.v2/decode.go +++ b/vendor/gopkg.in/yaml.v2/decode.go @@ -229,6 +229,10 @@ type decoder struct { mapType reflect.Type terrors []string strict bool + + decodeCount int + aliasCount int + aliasDepth int } var ( @@ -314,7 +318,39 @@ func (d *decoder) prepare(n *node, out reflect.Value) (newout reflect.Value, unm return out, false, false } +const ( + // 400,000 decode operations is ~500kb of dense object declarations, or ~5kb of dense object declarations with 10000% alias expansion + alias_ratio_range_low = 400000 + // 4,000,000 decode operations is ~5MB of dense object declarations, or ~4.5MB of dense object declarations with 10% alias expansion + alias_ratio_range_high = 4000000 + // alias_ratio_range is the range over which we scale allowed alias ratios + alias_ratio_range = float64(alias_ratio_range_high - alias_ratio_range_low) +) + +func allowedAliasRatio(decodeCount int) float64 { + switch { + case decodeCount <= alias_ratio_range_low: + // allow 99% to come from alias expansion for small-to-medium documents + return 0.99 + case decodeCount >= alias_ratio_range_high: + // allow 10% to come from alias expansion for very large documents + return 0.10 + default: + // scale smoothly from 99% down to 10% over the range. + // this maps to 396,000 - 400,000 allowed alias-driven decodes over the range. + // 400,000 decode operations is ~100MB of allocations in worst-case scenarios (single-item maps). + return 0.99 - 0.89*(float64(decodeCount-alias_ratio_range_low)/alias_ratio_range) + } +} + func (d *decoder) unmarshal(n *node, out reflect.Value) (good bool) { + d.decodeCount++ + if d.aliasDepth > 0 { + d.aliasCount++ + } + if d.aliasCount > 100 && d.decodeCount > 1000 && float64(d.aliasCount)/float64(d.decodeCount) > allowedAliasRatio(d.decodeCount) { + failf("document contains excessive aliasing") + } switch n.kind { case documentNode: return d.document(n, out) @@ -353,7 +389,9 @@ func (d *decoder) alias(n *node, out reflect.Value) (good bool) { failf("anchor '%s' value contains itself", n.value) } d.aliases[n] = true + d.aliasDepth++ good = d.unmarshal(n.alias, out) + d.aliasDepth-- delete(d.aliases, n) return good } diff --git a/vendor/gopkg.in/yaml.v2/encode.go b/vendor/gopkg.in/yaml.v2/encode.go index a14435e8..0ee738e1 100644 --- a/vendor/gopkg.in/yaml.v2/encode.go +++ b/vendor/gopkg.in/yaml.v2/encode.go @@ -13,6 +13,19 @@ import ( "unicode/utf8" ) +// jsonNumber is the interface of the encoding/json.Number datatype. +// Repeating the interface here avoids a dependency on encoding/json, and also +// supports other libraries like jsoniter, which use a similar datatype with +// the same interface. Detecting this interface is useful when dealing with +// structures containing json.Number, which is a string under the hood. The +// encoder should prefer the use of Int64(), Float64() and string(), in that +// order, when encoding this type. +type jsonNumber interface { + Float64() (float64, error) + Int64() (int64, error) + String() string +} + type encoder struct { emitter yaml_emitter_t event yaml_event_t @@ -89,6 +102,21 @@ func (e *encoder) marshal(tag string, in reflect.Value) { } iface := in.Interface() switch m := iface.(type) { + case jsonNumber: + integer, err := m.Int64() + if err == nil { + // In this case the json.Number is a valid int64 + in = reflect.ValueOf(integer) + break + } + float, err := m.Float64() + if err == nil { + // In this case the json.Number is a valid float64 + in = reflect.ValueOf(float) + break + } + // fallback case - no number could be obtained + in = reflect.ValueOf(m.String()) case time.Time, *time.Time: // Although time.Time implements TextMarshaler, // we don't want to treat it as a string for YAML diff --git a/vendor/gopkg.in/yaml.v2/resolve.go b/vendor/gopkg.in/yaml.v2/resolve.go index 6c151db6..4120e0c9 100644 --- a/vendor/gopkg.in/yaml.v2/resolve.go +++ b/vendor/gopkg.in/yaml.v2/resolve.go @@ -81,7 +81,7 @@ func resolvableTag(tag string) bool { return false } -var yamlStyleFloat = regexp.MustCompile(`^[-+]?[0-9]*\.?[0-9]+([eE][-+][0-9]+)?$`) +var yamlStyleFloat = regexp.MustCompile(`^[-+]?(\.[0-9]+|[0-9]+(\.[0-9]*)?)([eE][-+]?[0-9]+)?$`) func resolve(tag string, in string) (rtag string, out interface{}) { if !resolvableTag(tag) { diff --git a/vendor/gopkg.in/yaml.v2/scannerc.go b/vendor/gopkg.in/yaml.v2/scannerc.go index 077fd1dd..570b8ecd 100644 --- a/vendor/gopkg.in/yaml.v2/scannerc.go +++ b/vendor/gopkg.in/yaml.v2/scannerc.go @@ -906,6 +906,9 @@ func yaml_parser_remove_simple_key(parser *yaml_parser_t) bool { return true } +// max_flow_level limits the flow_level +const max_flow_level = 10000 + // Increase the flow level and resize the simple key list if needed. func yaml_parser_increase_flow_level(parser *yaml_parser_t) bool { // Reset the simple key on the next level. @@ -913,6 +916,11 @@ func yaml_parser_increase_flow_level(parser *yaml_parser_t) bool { // Increase the flow level. parser.flow_level++ + if parser.flow_level > max_flow_level { + return yaml_parser_set_scanner_error(parser, + "while increasing flow level", parser.simple_keys[len(parser.simple_keys)-1].mark, + fmt.Sprintf("exceeded max depth of %d", max_flow_level)) + } return true } @@ -925,6 +933,9 @@ func yaml_parser_decrease_flow_level(parser *yaml_parser_t) bool { return true } +// max_indents limits the indents stack size +const max_indents = 10000 + // Push the current indentation level to the stack and set the new level // the current column is greater than the indentation level. In this case, // append or insert the specified token into the token queue. @@ -939,6 +950,11 @@ func yaml_parser_roll_indent(parser *yaml_parser_t, column, number int, typ yaml // indentation level. parser.indents = append(parser.indents, parser.indent) parser.indent = column + if len(parser.indents) > max_indents { + return yaml_parser_set_scanner_error(parser, + "while increasing indent level", parser.simple_keys[len(parser.simple_keys)-1].mark, + fmt.Sprintf("exceeded max depth of %d", max_indents)) + } // Create a token and insert it into the queue. token := yaml_token_t{ diff --git a/vendor/k8s.io/apimachinery/pkg/runtime/serializer/json/json.go b/vendor/k8s.io/apimachinery/pkg/runtime/serializer/json/json.go index 8987e74c..e2c92c4c 100644 --- a/vendor/k8s.io/apimachinery/pkg/runtime/serializer/json/json.go +++ b/vendor/k8s.io/apimachinery/pkg/runtime/serializer/json/json.go @@ -100,7 +100,27 @@ func (customNumberDecoder) Decode(ptr unsafe.Pointer, iter *jsoniter.Iterator) { } iter.ReportError("DecodeNumber", err.Error()) default: + // init depth, if needed + if iter.Attachment == nil { + iter.Attachment = int(1) + } + + // remember current depth + originalAttachment := iter.Attachment + + // increment depth before descending + if i, ok := iter.Attachment.(int); ok { + iter.Attachment = i + 1 + if i > 10000 { + iter.ReportError("parse", "exceeded max depth") + return + } + } + *(*interface{})(ptr) = iter.Read() + + // restore current depth + iter.Attachment = originalAttachment } } diff --git a/vendor/k8s.io/apimachinery/pkg/util/json/json.go b/vendor/k8s.io/apimachinery/pkg/util/json/json.go index 10c8cb83..0e2e3017 100644 --- a/vendor/k8s.io/apimachinery/pkg/util/json/json.go +++ b/vendor/k8s.io/apimachinery/pkg/util/json/json.go @@ -19,6 +19,7 @@ package json import ( "bytes" "encoding/json" + "fmt" "io" ) @@ -34,6 +35,9 @@ func Marshal(v interface{}) ([]byte, error) { return json.Marshal(v) } +// limit recursive depth to prevent stack overflow errors +const maxDepth = 10000 + // Unmarshal unmarshals the given data // If v is a *map[string]interface{}, numbers are converted to int64 or float64 func Unmarshal(data []byte, v interface{}) error { @@ -48,7 +52,7 @@ func Unmarshal(data []byte, v interface{}) error { return err } // If the decode succeeds, post-process the map to convert json.Number objects to int64 or float64 - return convertMapNumbers(*v) + return convertMapNumbers(*v, 0) case *[]interface{}: // Build a decoder from the given data @@ -60,7 +64,7 @@ func Unmarshal(data []byte, v interface{}) error { return err } // If the decode succeeds, post-process the map to convert json.Number objects to int64 or float64 - return convertSliceNumbers(*v) + return convertSliceNumbers(*v, 0) default: return json.Unmarshal(data, v) @@ -69,16 +73,20 @@ func Unmarshal(data []byte, v interface{}) error { // convertMapNumbers traverses the map, converting any json.Number values to int64 or float64. // values which are map[string]interface{} or []interface{} are recursively visited -func convertMapNumbers(m map[string]interface{}) error { +func convertMapNumbers(m map[string]interface{}, depth int) error { + if depth > maxDepth { + return fmt.Errorf("exceeded max depth of %d", maxDepth) + } + var err error for k, v := range m { switch v := v.(type) { case json.Number: m[k], err = convertNumber(v) case map[string]interface{}: - err = convertMapNumbers(v) + err = convertMapNumbers(v, depth+1) case []interface{}: - err = convertSliceNumbers(v) + err = convertSliceNumbers(v, depth+1) } if err != nil { return err @@ -89,16 +97,20 @@ func convertMapNumbers(m map[string]interface{}) error { // convertSliceNumbers traverses the slice, converting any json.Number values to int64 or float64. // values which are map[string]interface{} or []interface{} are recursively visited -func convertSliceNumbers(s []interface{}) error { +func convertSliceNumbers(s []interface{}, depth int) error { + if depth > maxDepth { + return fmt.Errorf("exceeded max depth of %d", maxDepth) + } + var err error for i, v := range s { switch v := v.(type) { case json.Number: s[i], err = convertNumber(v) case map[string]interface{}: - err = convertMapNumbers(v) + err = convertMapNumbers(v, depth+1) case []interface{}: - err = convertSliceNumbers(v) + err = convertSliceNumbers(v, depth+1) } if err != nil { return err