diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json index 5690cbccfa81..766896dd6a88 100644 --- a/Godeps/Godeps.json +++ b/Godeps/Godeps.json @@ -600,11 +600,6 @@ "Comment": "v1.6.0", "Rev": "14437382a98e5ebeb6cafb57cff445370e3f7d56" }, - { - "ImportPath": "github.com/cpuguy83/go-md2man/md2man", - "Comment": "v1.0.4", - "Rev": "71acacd42f85e5e82f70a55327789582a5200a90" - }, { "ImportPath": "github.com/davecgh/go-spew/spew", "Rev": "5215b55f46b2b919f50a1df0eaa5886afe4e3b3d" @@ -1117,11 +1112,126 @@ "Comment": "v3", "Rev": "c7fdd8b5cd55e87b4e1f4e372cdb1db61dd6c66f" }, + { + "ImportPath": "github.com/gogo/protobuf/gogoproto", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/defaultcheck", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/description", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/embedcheck", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/enumstringer", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/equal", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/face", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/gostring", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/grpc", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/marshalto", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/oneofcheck", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/populate", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/size", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/stringer", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/testgen", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/union", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/plugin/unmarshal", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, { "ImportPath": "github.com/gogo/protobuf/proto", "Comment": "v0.1-125-g82d16f7", "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" }, + { + "ImportPath": "github.com/gogo/protobuf/protoc-gen-gogo/descriptor", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/protoc-gen-gogo/generator", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/protoc-gen-gogo/plugin", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/sortkeys", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/vanity", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, + { + "ImportPath": "github.com/gogo/protobuf/vanity/command", + "Comment": "v0.1-125-g82d16f7", + "Rev": "82d16f734d6d871204a3feb1a73cb220cc92574c" + }, { "ImportPath": "github.com/golang/glog", "Rev": "335da9dda11408a34b64344f82e9c03779b71673" @@ -1130,10 +1240,6 @@ "ImportPath": "github.com/golang/groupcache/lru", "Rev": "604ed5785183e59ae2789449d89e73f3a2a77987" }, - { - "ImportPath": "github.com/golang/mock/gomock", - "Rev": "bd3c8e81be01eef76d4b503f5e687d2d1354d2d9" - }, { "ImportPath": "github.com/golang/protobuf/proto", "Rev": "b982704f8bb716bb608144408cff30e15fbde841" @@ -1520,11 +1626,6 @@ "Comment": "v3.0.7-70-gbfe36d3", "Rev": "bfe36d3254337b7cc18024805dfab2106613abdf" }, - { - "ImportPath": "github.com/jteeuwen/go-bindata/go-bindata", - "Comment": "v3.0.7-70-gbfe36d3", - "Rev": "bfe36d3254337b7cc18024805dfab2106613abdf" - }, { "ImportPath": "github.com/juju/ratelimit", "Rev": "77ed1c8a01217656d2080ad51981f6e99adaa177" @@ -1594,41 +1695,6 @@ "Comment": "v1.2.0-52-g2c2e9bb", "Rev": "2c2e9bb47b4e44067024f29339588cac8b34dd12" }, - { - "ImportPath": "github.com/onsi/ginkgo/ginkgo", - "Comment": "v1.2.0-52-g2c2e9bb", - "Rev": "2c2e9bb47b4e44067024f29339588cac8b34dd12" - }, - { - "ImportPath": "github.com/onsi/ginkgo/ginkgo/convert", - "Comment": "v1.2.0-52-g2c2e9bb", - "Rev": "2c2e9bb47b4e44067024f29339588cac8b34dd12" - }, - { - "ImportPath": "github.com/onsi/ginkgo/ginkgo/interrupthandler", - "Comment": "v1.2.0-52-g2c2e9bb", - "Rev": "2c2e9bb47b4e44067024f29339588cac8b34dd12" - }, - { - "ImportPath": "github.com/onsi/ginkgo/ginkgo/nodot", - "Comment": "v1.2.0-52-g2c2e9bb", - "Rev": "2c2e9bb47b4e44067024f29339588cac8b34dd12" - }, - { - "ImportPath": "github.com/onsi/ginkgo/ginkgo/testrunner", - "Comment": "v1.2.0-52-g2c2e9bb", - "Rev": "2c2e9bb47b4e44067024f29339588cac8b34dd12" - }, - { - "ImportPath": "github.com/onsi/ginkgo/ginkgo/testsuite", - "Comment": "v1.2.0-52-g2c2e9bb", - "Rev": "2c2e9bb47b4e44067024f29339588cac8b34dd12" - }, - { - "ImportPath": "github.com/onsi/ginkgo/ginkgo/watch", - "Comment": "v1.2.0-52-g2c2e9bb", - "Rev": "2c2e9bb47b4e44067024f29339588cac8b34dd12" - }, { "ImportPath": "github.com/onsi/ginkgo/internal/codelocation", "Comment": "v1.2.0-52-g2c2e9bb", @@ -1829,109 +1895,129 @@ "Comment": "v0.0.7", "Rev": "7ca2aa4873aea7cb4265b1726acb24b90d8726c6" }, + { + "ImportPath": "github.com/openshift/imagebuilder", + "Rev": "5a8e7d9be33db899875d7c9effb8c6027618867a" + }, + { + "ImportPath": "github.com/openshift/imagebuilder/dockerclient", + "Rev": "5a8e7d9be33db899875d7c9effb8c6027618867a" + }, + { + "ImportPath": "github.com/openshift/imagebuilder/imageprogress", + "Rev": "5a8e7d9be33db899875d7c9effb8c6027618867a" + }, + { + "ImportPath": "github.com/openshift/imagebuilder/signal", + "Rev": "5a8e7d9be33db899875d7c9effb8c6027618867a" + }, + { + "ImportPath": "github.com/openshift/imagebuilder/strslice", + "Rev": "5a8e7d9be33db899875d7c9effb8c6027618867a" + }, { "ImportPath": "github.com/openshift/source-to-image/pkg/api", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/api/describe", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/api/validation", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/build", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/build/strategies", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/build/strategies/layered", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/build/strategies/onbuild", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/build/strategies/sti", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/docker", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/errors", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/ignore", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/scm", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/scm/empty", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/scm/file", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/scm/git", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/scripts", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/tar", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/util", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/util/glog", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/util/interrupt", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { "ImportPath": "github.com/openshift/source-to-image/pkg/util/user", - "Comment": "v1.0.9-63-gebd41a8", + "Comment": "v1.1.1", "Rev": "724c0ddaacec2fad31a05ac2d2175cd9ad7136c6" }, { @@ -2536,2598 +2622,2648 @@ }, { "ImportPath": "k8s.io/kubernetes/cmd/genutils", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-apiserver/app", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-apiserver/app/options", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-controller-manager/app", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-controller-manager/app/options", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-proxy/app", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-proxy/app/options", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/kubelet/app", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/kubelet/app/options", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/libs/go2idl/args", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/libs/go2idl/conversion-gen/generators", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/libs/go2idl/deepcopy-gen/generators", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/libs/go2idl/generator", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/cmd/libs/go2idl/go-to-protobuf/protobuf", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/libs/go2idl/namer", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/libs/go2idl/parser", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/cmd/libs/go2idl/types", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/federation/apis/federation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/federation/apis/federation/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/federation/apis/federation/v1beta1", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/federation/client/clientset_generated/federation_internalclientset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/federation/client/clientset_generated/federation_internalclientset/typed/core/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/federation/client/clientset_generated/federation_internalclientset/typed/federation/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/federation/client/clientset_generated/federation_release_1_3", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/federation/client/clientset_generated/federation_release_1_3/typed/core/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/federation/client/clientset_generated/federation_release_1_3/typed/federation/v1beta1", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/admission", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/annotations", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/endpoints", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/errors", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/errors/storage", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/meta", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/meta/metatypes", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/pod", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/resource", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/rest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/rest/resttest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/service", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/testapi", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/testing", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/unversioned/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apimachinery", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apimachinery/registered", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/abac", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/abac/latest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/abac/v0", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/abac/v1beta1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/apps", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/apps/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/apps/v1alpha1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/apps/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication.k8s.io", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication.k8s.io/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication/install", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication.k8s.io/v1beta1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication/v1beta1", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authorization", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authorization/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authorization/v1beta1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/autoscaling", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/autoscaling/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/autoscaling/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/autoscaling/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch/v2alpha1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/componentconfig", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/componentconfig/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/extensions", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/extensions/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/extensions/v1beta1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/extensions/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/policy", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/policy/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/policy/v1alpha1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/policy/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/rbac", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/rbac/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/rbac/v1alpha1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/rbac/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver/authenticator", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver/metrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authenticator", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authenticator/bearertoken", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authorizer", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authorizer/abac", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authorizer/union", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/handlers", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/user", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/capabilities", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/cache", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/chaosclient", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/unversioned", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/unversioned/fake", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/unversioned/fake", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/unversioned/fake", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/unversioned/fake", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/unversioned/fake", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/unversioned/fake", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_2", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_2/typed/core/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_2/typed/extensions/v1beta1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_3", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_3/typed/autoscaling/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_3/typed/batch/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_3/typed/core/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_3/typed/extensions/v1beta1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/leaderelection", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/metrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/record", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/restclient", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/testing/core", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/transport", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/typed/discovery", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/typed/discovery/fake", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/typed/dynamic", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/adapters/internalclientset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/auth", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/clientcmd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api/latest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/fake", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/portforward", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/remotecommand", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/testclient", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/aws", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/gce", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/mesos", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/openstack", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/ovirt", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/rackspace", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/daemon", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/deployment", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/endpoint", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/framework", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/framework/informers", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/garbagecollector", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/gc", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/job", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/namespace", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/node", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" - }, - { - "ImportPath": "k8s.io/kubernetes/pkg/controller/persistentvolume", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/petset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/podautoscaler", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/podautoscaler/metrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/replicaset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/replication", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/resourcequota", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/route", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/service", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/serviceaccount", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/controller/volume", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach/cache", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/cache", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach/populator", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/populator", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach/reconciler", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/reconciler", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach/statusupdater", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/statusupdater", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/persistentvolume", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/conversion", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/conversion/queryparams", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/credentialprovider", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/credentialprovider/aws", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/credentialprovider/gcp", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/fieldpath", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/fields", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/options", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/healthz", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/httplog", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl/cmd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl/cmd/config", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl/cmd/rollout", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl/cmd/set", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl/cmd/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl/cmd/util/editor", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl/cmd/util/jsonmerge", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubectl/resource", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/stats", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/cadvisor", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/cadvisor/testing", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/client", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/cm", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/config", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/container", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/custommetrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/dockertools", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/envvars", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/eviction", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/leaky", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/lifecycle", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/metrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/cni", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/exec", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/hairpin", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/hostport", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/kubenet", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/pleg", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/pod", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/prober", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/prober/results", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/qos", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/qos/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/rkt", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server/portforward", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server/remotecommand", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server/stats", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/status", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/types", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/cache", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/format", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/ioutils", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/queue", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volume", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volumemanager", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volume/cache", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volumemanager/cache", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volume/populator", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volumemanager/populator", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volume/reconciler", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volumemanager/reconciler", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/labels", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/master", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/master/ports", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/metrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/probe", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/probe/exec", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/probe/http", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/probe/tcp", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy/config", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy/iptables", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy/userspace", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/quota", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/quota/evaluator/core", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/quota/generic", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/quota/install", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/cachesize", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/clusterrole", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/clusterrole/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/clusterrole/policybased", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/clusterrolebinding", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/clusterrolebinding/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/clusterrolebinding/policybased", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/componentstatus", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/configmap", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/configmap/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/controller", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/controller/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/daemonset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/daemonset/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/deployment", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/deployment/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/endpoint", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/endpoint/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/event", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/event/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/experimental/controller/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/generic", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/generic/registry", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/generic/rest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/horizontalpodautoscaler", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/horizontalpodautoscaler/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/ingress", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/ingress/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/job", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/job/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/limitrange", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/limitrange/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/namespace", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/namespace/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/networkpolicy", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/networkpolicy/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/node", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/node/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/node/rest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/persistentvolume", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/persistentvolume/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/persistentvolumeclaim", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/persistentvolumeclaim/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/petset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/petset/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/pod", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/pod/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/pod/rest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/poddisruptionbudget", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/poddisruptionbudget/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/podsecuritypolicy", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/podsecuritypolicy/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/podtemplate", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/podtemplate/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/registrytest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/replicaset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/replicaset/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/resourcequota", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/resourcequota/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/role", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/role/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/role/policybased", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rolebinding", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rolebinding/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rolebinding/policybased", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/secret", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/secret/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/securitycontextconstraints", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/securitycontextconstraints/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/service", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/service/allocator", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/service/allocator/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/service/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/service/ipallocator", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/service/ipallocator/controller", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/service/portallocator", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/service/portallocator/controller", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/serviceaccount", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/serviceaccount/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/thirdpartyresource", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/thirdpartyresource/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/thirdpartyresourcedata", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/thirdpartyresourcedata/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/pkg/registry/tokenreview", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/json", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/protobuf", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/recognizer", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/streaming", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/versioning", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/capabilities", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/group", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/selinux", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/user", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/securitycontext", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/securitycontextconstraints", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/securitycontextconstraints/capabilities", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/securitycontextconstraints/group", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/pkg/securitycontextconstraints/seccomp", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/securitycontextconstraints/selinux", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/securitycontextconstraints/user", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/securitycontextconstraints/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/serviceaccount", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/ssh", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd/etcdtest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd/metrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd/testing", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd3", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/storagebackend", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/storagebackend/factory", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/testing", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/types", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/bandwidth", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/cache", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/chmod", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/chown", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/config", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/configz", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/crlf", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/crypto", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/dbus", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/deployment", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/diff", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/env", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/errors", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/exec", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/flag", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/flock", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/flowcontrol", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/flushwriter", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/framer", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/goroutinemap", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/pkg/util/goroutinemap/exponentialbackoff", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/hash", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/homedir", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/httpstream", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/httpstream/spdy", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/integer", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/interrupt", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/intstr", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/io", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/iptables", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/json", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/jsonpath", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/keymutex", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/labels", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/limitwriter", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/metrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/mount", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/net", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/net/sets", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/node", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/oom", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/parsers", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/pod", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/procfs", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/proxy", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/rand", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/replicaset", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/runtime", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/selinux", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/sets", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/slice", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/strategicpatch", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/strings", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/sysctl", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/system", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/term", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/validation/field", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/wait", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/workqueue", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/wsstream", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/yaml", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/version", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/aws_ebs", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/azure_file", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/cephfs", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/cinder", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/configmap", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/downwardapi", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/empty_dir", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/fc", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/flexvolume", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/flocker", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/gce_pd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/git_repo", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/glusterfs", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/host_path", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/iscsi", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/nfs", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/rbd", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/secret", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/pkg/volume/util/nestedpendingoperations", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util/operationexecutor", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util/types", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util/volumehelper", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/vsphere_volume", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/watch", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/watch/json", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/pkg/watch/versioned", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/cmd/kube-scheduler/app", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/cmd/kube-scheduler/app/options", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/admit", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/alwayspullimages", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/antiaffinity", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/deny", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/exec", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/initialresources", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/limitranger", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/namespace/autoprovision", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/namespace/exists", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/namespace/lifecycle", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/persistentvolume/label", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/resourcequota", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/security/podsecuritypolicy", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/securitycontext/scdeny", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/serviceaccount", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/password/keystone", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/password/passwordfile", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/basicauth", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/union", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/x509", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/oidc", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/tokenfile", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/webhook", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authorizer/rbac", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authorizer/webhook", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/client/auth", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/client/auth/gcp", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/client/auth/oidc", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/predicates", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithmprovider", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithmprovider/defaults", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/api", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/api/latest", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/api/v1", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/api/validation", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/factory", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/metrics", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/schedulercache", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/webhook", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/test/e2e", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/test/e2e/chaosmonkey", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/test/e2e/framework", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/test/e2e/generated", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/test/e2e/perftype", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/forked/json", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/forked/reflect", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/expansion", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/go/ast", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/go/build", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/go/constant", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/go/parser", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" + }, + { + "ImportPath": "k8s.io/kubernetes/third_party/golang/go/printer", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/go/scanner", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/go/token", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/go/types", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { "ImportPath": "k8s.io/kubernetes/third_party/golang/netutil", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/third_party/golang/template", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/third_party/golang/reflect", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" }, { - "ImportPath": "k8s.io/kubernetes/third_party/protobuf", - "Comment": "v1.3.0-58-g57fb9ac", - "Rev": "57fb9acc109285378ecd0af925c8160eb8ca19e6" + "ImportPath": "k8s.io/kubernetes/third_party/golang/template", + "Comment": "v1.3.0-114-g507d3a7", + "Rev": "507d3a7b242634b131710cfdfd55e3a1531ffb1b" } ] } diff --git a/hack/copy-kube-artifacts.sh b/hack/copy-kube-artifacts.sh index b21bb84ae11d..f9e82eebdf9d 100755 --- a/hack/copy-kube-artifacts.sh +++ b/hack/copy-kube-artifacts.sh @@ -65,6 +65,7 @@ rsync -av \ --exclude='*' \ --prune-empty-dirs \ $KUBE_ROOT/vendor/ $GODEP_ROOT < /tmp/passwd'"}}, - {Shell: true, Args: []string{"mkdir -p /test /test2 /test3/test"}}, - }, - Config: docker.Config{ - User: "docker:root", - ExposedPorts: map[docker.Port]struct{}{"6000/tcp": {}, "3000/tcp": {}, "9000/tcp": {}, "5000/tcp": {}}, - Env: []string{"SCUBA=1 DUBA 3"}, - Cmd: []string{"/bin/sh", "-c", "echo 'test' | wc -"}, - Image: "busybox", - Volumes: map[string]struct{}{"/test2": {}, "/test3": {}, "/test": {}}, - WorkingDir: "/test", - OnBuild: []string{"RUN [\"echo\", \"test\"]", "RUN echo test", "COPY . /"}, - }, - }, - { - Dockerfile: "testdata/Dockerfile.exposedefault", - From: "busybox", - Config: docker.Config{ - ExposedPorts: map[docker.Port]struct{}{"3469/tcp": {}}, - Image: "busybox", - }, - }, - { - Dockerfile: "testdata/Dockerfile.add", - From: "busybox", - Copies: []Copy{ - {Src: "https://github.com/openshift/origin/raw/master/README.md", Dest: []string{"/README.md"}, Download: true}, - {Src: "https://github.com/openshift/origin/raw/master/LICENSE", Dest: []string{"/"}, Download: true}, - {Src: "https://github.com/openshift/origin/raw/master/LICENSE", Dest: []string{"/A"}, Download: true}, - {Src: "https://github.com/openshift/origin/raw/master/LICENSE", Dest: []string{"/a"}, Download: true}, - {Src: "https://github.com/openshift/origin/raw/master/LICENSE", Dest: []string{"/b/a"}, Download: true}, - {Src: "https://github.com/openshift/origin/raw/master/LICENSE", Dest: []string{"/b/"}, Download: true}, - {Src: "https://github.com/openshift/ruby-hello-world/archive/master.zip", Dest: []string{"/tmp/"}, Download: true}, - }, - Runs: []Run{ - {Shell: true, Args: []string{"mkdir ./b"}}, - }, - Config: docker.Config{ - Image: "busybox", - User: "root", - }, - }, - } - for i, test := range testCases { - data, err := ioutil.ReadFile(test.Dockerfile) - if err != nil { - t.Errorf("%d: %v", i, err) - continue - } - node, err := parser.Parse(bytes.NewBuffer(data)) - if err != nil { - t.Errorf("%d: %v", i, err) - continue - } - b := NewBuilder() - from, err := b.From(node) - if err != nil { - t.Errorf("%d: %v", i, err) - continue - } - if from != test.From { - t.Errorf("%d: unexpected FROM: %s", i, from) - } - e := &testExecutor{} - var lastErr error - for j, child := range node.Children { - step := b.Step() - if err := step.Resolve(child); err != nil { - lastErr = fmt.Errorf("%d: %d: %s: resolve: %v", i, j, step.Original, err) - break - } - if err := b.Run(step, e); err != nil { - lastErr = fmt.Errorf("%d: %d: %s: run: %v", i, j, step.Original, err) - break - } - } - if lastErr != nil { - if test.ErrFn == nil || !test.ErrFn(lastErr) { - t.Errorf("%d: unexpected error: %v", i, lastErr) - } - continue - } - if !reflect.DeepEqual(test.Copies, e.Copies) { - t.Errorf("%d: unexpected copies: %#v", i, e.Copies) - } - if !reflect.DeepEqual(test.Runs, e.Runs) { - t.Errorf("%d: unexpected runs: %#v", i, e.Runs) - } - lastConfig := b.RunConfig - if !reflect.DeepEqual(test.Config, lastConfig) { - t.Errorf("%d: unexpected config: %#v", i, lastConfig) - } - } -} - -func TestCalcCopyInfo(t *testing.T) { - nilErr := func(err error) bool { return err == nil } - tests := []struct { - origPath string - rootPath string - dstPath string - allowWildcards bool - errFn func(err error) bool - paths map[string]struct{} - excludes []string - rebaseNames map[string]string - }{ - { - origPath: "subdir/*", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{"subdir/file2": {}}, - }, - { - origPath: "*", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "Dockerfile": {}, - "file": {}, - "subdir": {}, - }, - }, - { - origPath: ".", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "Dockerfile": {}, - "file": {}, - "subdir": {}, - }, - }, - { - origPath: "/.", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "Dockerfile": {}, - "file": {}, - "subdir": {}, - }, - }, - { - origPath: "subdir/", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "subdir/": {}, - }, - }, - { - origPath: "subdir", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "subdir": {}, - }, - }, - { - origPath: "subdir/.", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "subdir/": {}, - }, - }, - { - origPath: "testdata/dir/subdir/.", - rootPath: "", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "testdata/dir/subdir/": {}, - }, - }, - { - origPath: "subdir/", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "subdir/": {}, - }, - }, - { - origPath: "subdir/", - rootPath: "testdata/dir", - allowWildcards: true, - errFn: nilErr, - paths: map[string]struct{}{ - "subdir/": {}, - }, - dstPath: "test/", - rebaseNames: map[string]string{ - "subdir/": "test/", - }, - }, - } - - for i, test := range tests { - infos, err := CalcCopyInfo(test.origPath, test.rootPath, false, test.allowWildcards) - if !test.errFn(err) { - t.Errorf("%d: unexpected error: %v", i, err) - continue - } - if err != nil { - continue - } - expect := make(map[string]struct{}) - for k := range test.paths { - expect[k] = struct{}{} - } - for _, info := range infos { - if _, ok := expect[info.Path]; ok { - delete(expect, info.Path) - } else { - t.Errorf("%d: did not expect path %s", i, info.Path) - } - } - if len(expect) > 0 { - t.Errorf("%d: did not see paths: %#v", i, expect) - } - - options := archiveOptionsFor(infos, test.dstPath, test.excludes) - if !reflect.DeepEqual(test.rebaseNames, options.RebaseNames) { - t.Errorf("%d: rebase names did not match: %#v", i, options.RebaseNames) - } - } -} diff --git a/pkg/util/docker/dockerfile/builder/conformance_test.go b/pkg/util/docker/dockerfile/builder/conformance_test.go deleted file mode 100644 index 92e8986aa550..000000000000 --- a/pkg/util/docker/dockerfile/builder/conformance_test.go +++ /dev/null @@ -1,583 +0,0 @@ -// +build conformance - -package builder - -import ( - "archive/tar" - "bytes" - "flag" - "fmt" - "io" - "io/ioutil" - "os" - "os/exec" - "path/filepath" - "reflect" - "strings" - "testing" - "time" - - "github.com/docker/docker/builder/command" - "github.com/docker/docker/builder/parser" - docker "github.com/fsouza/go-dockerclient" - "github.com/fsouza/go-dockerclient/external/github.com/docker/docker/pkg/archive" - "github.com/fsouza/go-dockerclient/external/github.com/docker/docker/pkg/fileutils" - - "k8s.io/kubernetes/pkg/conversion" - "k8s.io/kubernetes/pkg/util/diff" -) - -var compareLayers = flag.Bool("compare-layers", false, "If true, compare each generated layer for equivalence") - -type conformanceTest struct { - Dockerfile string - Git string - ContextDir string - Ignore []ignoreFunc - PostClone func(dir string) error -} - -// TestConformance* compares the result of running the direct build against a -// sequential docker build. A dockerfile and git repo is loaded, then each step -// in the file is run sequentially, committing after each step. The generated -// image.Config and the resulting filesystems are compared. The next step reuses -// the previously generated layer and performs an incremental diff. This ensures -// that each step is functionally equivalent. -// -// Deviations: -// * Builds run at different times -// * Modification timestamps are ignored on files -// * Some processes (gem install) result in files created in the image that -// have different content because of that (timestamps in files). We treat -// a file that is identical except for size within 10 bytes and neither old -// or new is zero bytes to be identical. -// * Docker container commit with ENV FOO=BAR and a Docker build with line -// ENV FOO=BAR will generate an image with FOO=BAR in different positions -// (commit places the variable first, build: last). We try to align the -// generated environment variable to ensure they are equal. -// * The parent image ID is ignored. -// -// TODO: .dockerignore -// TODO: check context dir -// TODO: ONBUILD -// TODO: ensure that the final built image has the right UIDs -// -func TestConformanceInternal(t *testing.T) { - testCases := []conformanceTest{ - { - ContextDir: "testdata/dir", - }, - // TODO: Fix this test - // { - // ContextDir: "testdata/ignore", - // }, - { - Dockerfile: "testdata/Dockerfile.env", - }, - { - Dockerfile: "testdata/Dockerfile.edgecases", - }, - { - Dockerfile: "testdata/Dockerfile.exposedefault", - }, - { - Dockerfile: "testdata/Dockerfile.add", - }, - } - - c, err := docker.NewClientFromEnv() - if err != nil { - t.Fatal(err) - } - - for i, test := range testCases { - conformanceTester(t, c, test, i, *compareLayers) - } -} - -// TestConformanceExternal applies external repo testing that may be more expensive or -// change more frequently. -func TestConformanceExternal(t *testing.T) { - testCases := []conformanceTest{ - { - // Tests user ownership change under COPY - Git: "https://github.com/openshift/ruby-hello-world.git", - }, - { - // Tests Non-default location dockerfile - Dockerfile: "Dockerfile.build", - Git: "https://github.com/docker-library/hello-world.git", - PostClone: func(dir string) error { - return os.Remove(filepath.Join(dir, ".dockerignore")) - }, - }, - { - // Tests COPY and other complex interactions of ENV - ContextDir: "9.3", - Dockerfile: "9.3/Dockerfile", - Git: "https://github.com/docker-library/postgres.git", - Ignore: []ignoreFunc{ - func(a, b *tar.Header) bool { - switch { - case (a != nil) == (b != nil): - return false - case a != nil: - return strings.HasPrefix(a.Name, "etc/ssl/certs/") - case b != nil: - return strings.HasPrefix(b.Name, "etc/ssl/certs/") - default: - return false - } - }, - }, - }, - } - - c, err := docker.NewClientFromEnv() - if err != nil { - t.Fatal(err) - } - - for i, test := range testCases { - conformanceTester(t, c, test, i, *compareLayers) - } -} - -func conformanceTester(t *testing.T, c *docker.Client, test conformanceTest, i int, deep bool) { - dockerfile := test.Dockerfile - if len(dockerfile) == 0 { - dockerfile = "Dockerfile" - } - tmpDir, err := ioutil.TempDir("", "dockerbuild-conformance-") - if err != nil { - t.Fatal(err) - } - defer os.RemoveAll(tmpDir) - - dir := tmpDir - contextDir := filepath.Join(dir, test.ContextDir) - dockerfilePath := filepath.Join(dir, dockerfile) - - // clone repo or copy the Dockerfile - var input string - switch { - case len(test.Git) > 0: - input = test.Git - cmd := exec.Command("git", "clone", test.Git, dir) - out, err := cmd.CombinedOutput() - if err != nil { - t.Errorf("unable to clone %q: %v\n%s", test.Git, err, out) - return - } - - if test.PostClone != nil { - if err := test.PostClone(dir); err != nil { - t.Errorf("unable to fixup clone: %v", err) - return - } - } - - case len(test.Dockerfile) > 0: - input = dockerfile - dockerfilePath = filepath.Join(dir, "Dockerfile") - if _, err := fileutils.CopyFile(filepath.Join("", dockerfile), dockerfilePath); err != nil { - t.Fatal(err) - } - dockerfile = "Dockerfile" - - default: - input = filepath.Join(test.ContextDir, dockerfile) - dockerfilePath = input - contextDir = test.ContextDir - dir = test.ContextDir - } - - // read the dockerfile - data, err := ioutil.ReadFile(dockerfilePath) - if err != nil { - t.Errorf("%d: unable to read Dockerfile %q: %v", i, input, err) - return - } - node, err := parser.Parse(bytes.NewBuffer(data)) - if err != nil { - t.Errorf("%d: can't parse Dockerfile %q: %v", i, input, err) - return - } - from, err := NewBuilder().From(node) - if err != nil { - t.Errorf("%d: can't get base FROM %q: %v", i, input, err) - return - } - nameFormat := "conformance-dockerbuild-%d-%s-%d" - - var toDelete []string - steps := node.Children - lastImage := from - - ignoreSmallFileChange := func(a, b *tar.Header) bool { - if a == nil || b == nil { - return false - } - diff := a.Size - b.Size - if differOnlyByFileSize(a, b, 10) { - t.Logf("WARNING: %s differs only in size by %d bytes, probably a timestamp value change", a.Name, diff) - return true - } - return false - } - - if deep { - // execute each step on both Docker build and the direct builder, comparing as we - // go - fail := false - for j := range steps { - testFile := dockerfileWithFrom(lastImage, steps[j:j+1]) - - nameDirect := fmt.Sprintf(nameFormat, i, "direct", j) - nameDocker := fmt.Sprintf(nameFormat, i, "docker", j) - - // run docker build - if err := ioutil.WriteFile(dockerfilePath, []byte(testFile), 0600); err != nil { - t.Errorf("%d: unable to update Dockerfile %q: %v", i, dockerfilePath, err) - break - } - in, err := archive.TarWithOptions(dir, &archive.TarOptions{IncludeFiles: []string{"."}}) - if err != nil { - t.Errorf("%d: unable to generate build context %q: %v", i, dockerfilePath, err) - break - } - out := &bytes.Buffer{} - if err := c.BuildImage(docker.BuildImageOptions{ - Name: nameDocker, - Dockerfile: dockerfile, - RmTmpContainer: true, - ForceRmTmpContainer: true, - InputStream: in, - OutputStream: out, - }); err != nil { - in.Close() - t.Errorf("%d: unable to build Docker image %q: %v\n%s", i, test.Git, err, out) - break - } - toDelete = append(toDelete, nameDocker) - - // run direct build - e := NewClientExecutor(c) - out = &bytes.Buffer{} - e.Out, e.ErrOut = out, out - e.Directory = contextDir - e.Tag = nameDirect - if err := e.Build(bytes.NewBufferString(testFile), nil); err != nil { - t.Errorf("%d: failed to build step %d in dockerfile %q: %s\n%s", i, j, dockerfilePath, steps[j].Original, out) - break - } - toDelete = append(toDelete, nameDirect) - - // only compare filesystem on layers that change the filesystem - mutation := steps[j].Value == command.Add || steps[j].Value == command.Copy || steps[j].Value == command.Run - // metadata must be strictly equal - if !equivalentImages( - t, c, nameDocker, nameDirect, mutation, - metadataEqual, - append(ignoreFuncs{ignoreSmallFileChange}, test.Ignore...)..., - ) { - t.Errorf("%d: layered Docker build was not equivalent to direct layer image metadata %s", i, input) - fail = true - } - - lastImage = nameDocker - } - - if fail { - t.Fatalf("%d: Conformance test failed for %s", i, input) - } - - } else { - exclude, _ := ParseDockerignore(dir) - //exclude = append(filtered, ".dockerignore") - in, err := archive.TarWithOptions(dir, &archive.TarOptions{IncludeFiles: []string{"."}, ExcludePatterns: exclude}) - if err != nil { - t.Errorf("%d: unable to generate build context %q: %v", i, dockerfilePath, err) - return - } - out := &bytes.Buffer{} - nameDocker := fmt.Sprintf(nameFormat, i, "docker", 0) - if err := c.BuildImage(docker.BuildImageOptions{ - Name: nameDocker, - Dockerfile: dockerfile, - RmTmpContainer: true, - ForceRmTmpContainer: true, - InputStream: in, - OutputStream: out, - }); err != nil { - in.Close() - t.Errorf("%d: unable to build Docker image %q: %v\n%s", i, test.Git, err, out) - return - } - lastImage = nameDocker - toDelete = append(toDelete, nameDocker) - } - - // if we ran more than one step, compare the squashed output with the docker build output - if len(steps) > 1 || !deep { - nameDirect := fmt.Sprintf(nameFormat, i, "direct", len(steps)-1) - e := NewClientExecutor(c) - out := &bytes.Buffer{} - e.Out, e.ErrOut = out, out - e.Directory = contextDir - e.Tag = nameDirect - if err := e.Build(bytes.NewBuffer(data), nil); err != nil { - t.Errorf("%d: failed to build complete image in %q: %v\n%s", i, input, err, out) - } else { - if !equivalentImages( - t, c, lastImage, nameDirect, true, - // metadata should be loosely equivalent, but because we squash and because of limitations - // in docker commit, there are some differences - metadataLayerEquivalent, - append(ignoreFuncs{ - ignoreSmallFileChange, - // the direct dockerfile contains all steps, the layered image is synthetic from our previous - // test and so only contains the last layer - ignoreDockerfileSize(dockerfile), - }, test.Ignore...)..., - ) { - t.Errorf("%d: full Docker build was not equivalent to squashed image metadata %s", i, input) - } - } - } - - for _, s := range toDelete { - c.RemoveImageExtended(s, docker.RemoveImageOptions{Force: true}) - } -} - -// ignoreFunc returns true if the difference between the two can be ignored -type ignoreFunc func(a, b *tar.Header) bool - -type ignoreFuncs []ignoreFunc - -func (fns ignoreFuncs) Ignore(a, b *tar.Header) bool { - for _, fn := range fns { - if fn(a, b) { - return true - } - } - return false -} - -// metadataFunc returns true if the metadata is equivalent -type metadataFunc func(a, b *docker.Config) bool - -// metadataEqual checks that the metadata of two images is directly equivalent. -func metadataEqual(a, b *docker.Config) bool { - // compare output metadata - a.Image, b.Image = "", "" - e1, e2 := envMap(a.Env), envMap(b.Env) - if !conversion.EqualitiesOrDie().DeepEqual(e1, e2) { - return false - } - a.Env, b.Env = nil, nil - if !conversion.EqualitiesOrDie().DeepEqual(a, b) { - return false - } - return true -} - -// metadataLayerEquivalent returns true if the last layer of a is equivalent to b, assuming -// that b is squashed over multiple layers, and a is not. b, for instance, will have an empty -// slice entrypoint, while a would have a nil entrypoint. -func metadataLayerEquivalent(a, b *docker.Config) bool { - if a.Entrypoint == nil && len(b.Entrypoint) == 0 { - // we are forced to set Entrypoint [] to reset the entrypoint - b.Entrypoint = nil - } - if len(a.OnBuild) == 1 && len(b.OnBuild) > 0 && a.OnBuild[0] == b.OnBuild[len(b.OnBuild)-1] { - // a layered file will only contain the last OnBuild statement - b.OnBuild = a.OnBuild - } - return metadataEqual(a, b) -} - -// equivalentImages executes the provided checks against two docker images, returning true -// if the images are equivalent, and recording a test suite error in any other condition. -func equivalentImages(t *testing.T, c *docker.Client, a, b string, testFilesystem bool, metadataFn metadataFunc, ignoreFns ...ignoreFunc) bool { - imageA, err := c.InspectImage(a) - if err != nil { - t.Errorf("can't get image %q: %v", a, err) - return false - } - imageB, err := c.InspectImage(b) - if err != nil { - t.Errorf("can't get image %q: %v", b, err) - return false - } - - if !metadataFn(imageA.Config, imageB.Config) { - t.Errorf("generated image metadata did not match: %s", diff.ObjectDiff(imageA.Config, imageB.Config)) - return false - } - - // for mutation commands, check the layer diff - if testFilesystem { - differs, onlyA, onlyB, err := compareImageFS(c, a, b) - if err != nil { - t.Errorf("can't calculate FS differences %q: %v", a, err) - return false - } - for k, v := range differs { - if ignoreFuncs(ignoreFns).Ignore(v[0], v[1]) { - delete(differs, k) - continue - } - t.Errorf("%s %s differs: %s", a, k, diff.ObjectDiff(v[0], v[1])) - } - for k, v := range onlyA { - if ignoreFuncs(ignoreFns).Ignore(v, nil) { - delete(onlyA, k) - continue - } - } - for k, v := range onlyB { - if ignoreFuncs(ignoreFns).Ignore(nil, v) { - delete(onlyB, k) - continue - } - } - if len(onlyA)+len(onlyB)+len(differs) > 0 { - t.Errorf("a=%v b=%v diff=%v", onlyA, onlyB, differs) - return false - } - } - return true -} - -// dockerfileWithFrom returns the contents of a new docker file with a different -// FROM as the first line. -func dockerfileWithFrom(from string, steps []*parser.Node) string { - lines := []string{} - lines = append(lines, fmt.Sprintf("FROM %s", from)) - for _, step := range steps { - lines = append(lines, step.Original) - } - return strings.Join(lines, "\n") -} - -// envMap returns a map from a list of environment variables. -func envMap(env []string) map[string]string { - out := make(map[string]string) - for _, envVar := range env { - parts := strings.SplitN(envVar, "=", 2) - if len(parts) != 2 { - out[envVar] = "" - continue - } - out[parts[0]] = parts[1] - } - return out -} - -// differOnlyByFileSize returns true iff the headers differ only by size, but -// that differences is less than within bytes. -func differOnlyByFileSize(a, b *tar.Header, within int64) bool { - if a == nil || b == nil { - return false - } - if a.Size == b.Size { - return false - } - - diff := a.Size - b.Size - if diff < 0 { - diff = diff * -1 - } - if diff < within && a.Size != 0 && b.Size != 0 { - a.Size = b.Size - if reflect.DeepEqual(a, b) { - return true - } - } - return false -} - -// ignore Dockerfile being different, artifact of this test -func ignoreDockerfileSize(dockerfile string) ignoreFunc { - return func(a, b *tar.Header) bool { - if a == nil || b == nil { - return false - } - if !strings.HasSuffix(a.Name, dockerfile) { - return false - } - if a.Size != b.Size { - a.Size = b.Size - return reflect.DeepEqual(a, b) - } - return false - } -} - -// compareImageFS exports the file systems of two images and returns a map -// of files that differ in any way (modification time excluded), only exist in -// image A, or only existing in image B. -func compareImageFS(c *docker.Client, a, b string) (differ map[string][]*tar.Header, onlyA, onlyB map[string]*tar.Header, err error) { - fsA, err := imageFSMetadata(c, a) - if err != nil { - return nil, nil, nil, err - } - fsB, err := imageFSMetadata(c, b) - if err != nil { - return nil, nil, nil, err - } - differ = make(map[string][]*tar.Header) - onlyA = make(map[string]*tar.Header) - onlyB = fsB - for k, v1 := range fsA { - v2, ok := fsB[k] - if !ok { - onlyA[k] = v1 - continue - } - delete(onlyB, k) - // we ignore modification time differences - v1.ModTime = time.Time{} - v2.ModTime = time.Time{} - if !reflect.DeepEqual(v1, v2) { - differ[k] = []*tar.Header{v1, v2} - } - } - return differ, onlyA, onlyB, nil -} - -// imageFSMetadata creates a container and reads the filesystem metadata out of the archive. -func imageFSMetadata(c *docker.Client, name string) (map[string]*tar.Header, error) { - container, err := c.CreateContainer(docker.CreateContainerOptions{Name: name + "-export", Config: &docker.Config{Image: name}}) - if err != nil { - return nil, err - } - defer c.RemoveContainer(docker.RemoveContainerOptions{ID: container.ID, RemoveVolumes: true, Force: true}) - - ch := make(chan struct{}) - result := make(map[string]*tar.Header) - r, w := io.Pipe() - go func() { - defer close(ch) - out := tar.NewReader(r) - for { - h, err := out.Next() - if err != nil { - if err == io.EOF { - w.Close() - } else { - w.CloseWithError(err) - } - break - } - result[h.Name] = h - } - }() - if err := c.ExportContainer(docker.ExportContainerOptions{ID: container.ID, OutputStream: w}); err != nil { - return nil, err - } - <-ch - return result, nil -} diff --git a/pkg/util/docker/dockerfile/builder/imageprogress/progress_test.go b/pkg/util/docker/dockerfile/builder/imageprogress/progress_test.go deleted file mode 100644 index 2438d8079394..000000000000 --- a/pkg/util/docker/dockerfile/builder/imageprogress/progress_test.go +++ /dev/null @@ -1,208 +0,0 @@ -package imageprogress - -import ( - "encoding/json" - "io" - "reflect" - "strconv" - "testing" -) - -func TestReports(t *testing.T) { - tests := []struct { - name string - gen func(*progressGenerator) - errExpected bool - expected report - }{ - { - name: "simple report", - gen: func(p *progressGenerator) { - p.status("1", "Extracting") - p.status("2", "Downloading") - p.status("1", "Downloading") - p.status("2", "Pull complete") - }, - expected: report{ - statusDownloading: &layerDetail{Count: 1}, - statusComplete: &layerDetail{Count: 1}, - }, - }, - { - name: "ignore invalid layer id", - gen: func(p *progressGenerator) { - p.status("1", "Downloading") - p.status("hello", "testing") - p.status("1", "Downloading") - }, - expected: report{ - statusDownloading: &layerDetail{Count: 1}, - }, - }, - { - name: "ignore retrying status", - gen: func(p *progressGenerator) { - p.status("1", "Downloading") - p.status("2", "Pull complete") - p.status("1", "Downloading") - p.status("3", "Retrying") - }, - expected: report{ - statusDownloading: &layerDetail{Count: 1}, - statusComplete: &layerDetail{Count: 1}, - }, - }, - { - name: "detect error", - gen: func(p *progressGenerator) { - p.status("1", "Downloading") - p.err("an error") - }, - errExpected: true, - }, - } - - for _, test := range tests { - pipeIn, pipeOut := io.Pipe() - go func() { - p := newProgressGenerator(pipeOut) - test.gen(p) - pipeOut.Close() - }() - var lastReport report - w := newWriter( - func(r report) { - lastReport = r - }, - func(a report, b report) bool { - return true - }, - ) - w.(*imageProgressWriter).stableThreshhold = 0 - _, err := io.Copy(w, pipeIn) - if err != nil { - if !test.errExpected { - t.Errorf("%s: unexpected: %v", test.name, err) - } - continue - } - if test.errExpected { - t.Errorf("%s: did not get expected error", test.name) - continue - } - if !compareReport(lastReport, test.expected) { - t.Errorf("%s: unexpected report, got: %v, expected: %v", test.name, lastReport, test.expected) - } - } -} - -func TestErrorOnCopy(t *testing.T) { - // Producer pipe - genIn, genOut := io.Pipe() - p := newProgressGenerator(genOut) - - // generate some data - go func() { - for i := 0; i < 100; i++ { - p.status("1", "Downloading") - p.status("2", "Downloading") - p.status("3", "Downloading") - } - p.err("data error") - genOut.Close() - }() - - w := newWriter(func(r report) {}, func(a, b report) bool { return true }) - - // Ensure that the error is propagated to the copy - _, err := io.Copy(w, genIn) - if err == nil { - t.Errorf("Did not get an error when copying to writer") - } - if err.Error() != "data error" { - t.Errorf("Did not get expected error: %v", err) - } -} - -func TestStableLayerCount(t *testing.T) { - - tests := []struct { - name string - lastLayerCount int - layerStatusCount int - stableThreshhold int - callCount int - expectStable bool - }{ - { - name: "increasing layer count", - lastLayerCount: 3, - layerStatusCount: 4, - callCount: 1, - expectStable: false, - }, - { - name: "has not met stable threshhold", - lastLayerCount: 3, - layerStatusCount: 3, - callCount: 2, - stableThreshhold: 3, - expectStable: false, - }, - { - name: "met stable threshhold", - lastLayerCount: 3, - layerStatusCount: 3, - callCount: 4, - stableThreshhold: 3, - expectStable: true, - }, - } - for _, test := range tests { - w := newWriter(func(report) {}, func(a, b report) bool { return true }).(*imageProgressWriter) - w.lastLayerCount = test.lastLayerCount - w.layerStatus = map[string]progressLine{} - w.stableThreshhold = test.stableThreshhold - for i := 0; i < test.layerStatusCount; i++ { - w.layerStatus[strconv.Itoa(i)] = progressLine{} - } - var result bool - for i := 0; i < test.callCount; i++ { - result = w.isStableLayerCount() - } - if result != test.expectStable { - t.Errorf("%s: expected %v, got %v", test.name, test.expectStable, result) - } - } -} - -func compareReport(a, b report) bool { - if len(a) != len(b) { - return false - } - for k := range a { - if _, ok := b[k]; !ok { - return false - } - if !reflect.DeepEqual(*a[k], *b[k]) { - return false - } - } - return true -} - -type progressGenerator json.Encoder - -func newProgressGenerator(w io.Writer) *progressGenerator { - return (*progressGenerator)(json.NewEncoder(w)) -} - -func (p *progressGenerator) status(id, status string) { - (*json.Encoder)(p).Encode(&progressLine{ID: id, Status: status}) -} -func (p *progressGenerator) detail(id, status string, current, total int64) { - (*json.Encoder)(p).Encode(&progressLine{ID: id, Status: status, Detail: &progressDetail{Current: current, Total: total}}) -} -func (p *progressGenerator) err(msg string) { - (*json.Encoder)(p).Encode(&progressLine{Error: msg}) -} diff --git a/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.add b/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.add deleted file mode 100644 index f78180e46d6d..000000000000 --- a/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.add +++ /dev/null @@ -1,11 +0,0 @@ -FROM busybox -ADD https://github.com/openshift/origin/raw/master/README.md README.md -USER 1001 -ADD https://github.com/openshift/origin/raw/master/LICENSE . -ADD https://github.com/openshift/origin/raw/master/LICENSE A -ADD https://github.com/openshift/origin/raw/master/LICENSE ./a -USER root -RUN mkdir ./b -ADD https://github.com/openshift/origin/raw/master/LICENSE ./b/a -ADD https://github.com/openshift/origin/raw/master/LICENSE ./b/. -ADD https://github.com/openshift/ruby-hello-world/archive/master.zip /tmp/ diff --git a/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.edgecases b/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.edgecases deleted file mode 100644 index b811120a6a61..000000000000 --- a/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.edgecases +++ /dev/null @@ -1,48 +0,0 @@ -FROM busybox - -MAINTAINER docker - -ONBUILD RUN ["echo", "test"] -ONBUILD RUN echo test -ONBUILD COPY . / - - -# RUN Commands \ -# linebreak in comment \ -RUN ["ls", "-la"] -RUN ["echo", "'1234'"] -RUN echo "1234" -RUN echo 1234 -RUN echo '1234' && \ - echo "456" && \ - echo 789 -RUN sh -c 'echo root:testpass \ - > /tmp/passwd' -RUN mkdir -p /test /test2 /test3/test - -# ENV \ -ENV SCUBA 1 DUBA 3 -ENV SCUBA "1 DUBA 3" - -# CMD \ -CMD ["echo", "test"] -CMD echo test -CMD echo "test" -CMD echo 'test' -CMD echo 'test' | wc - - -#EXPOSE\ -EXPOSE 3000 -EXPOSE 9000 5000 6000 - -USER docker -USER docker:root - -VOLUME ["/test"] -VOLUME ["/test", "/test2"] -VOLUME /test3 - -WORKDIR /test - -ADD . / -COPY . copy \ No newline at end of file diff --git a/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.env b/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.env deleted file mode 100644 index 21e7c4be5072..000000000000 --- a/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.env +++ /dev/null @@ -1,23 +0,0 @@ -FROM busybox -ENV name value -ENV name=value -ENV name=value name2=value2 -ENV name="value value1" -ENV name=value\ value2 -ENV name="value'quote space'value2" -ENV name='value"double quote"value2' -ENV name=value\ value2 name2=value2\ value3 -ENV name="a\"b" -ENV name="a\'b" -ENV name='a\'b' -ENV name='a\'b'' -ENV name='a\"b' -ENV name="''" -# don't put anything after the next line - it must be the last line of the -# Dockerfile and it must end with \ -ENV name=value \ - name1=value1 \ - name2="value2a \ - value2b" \ - name3="value3a\n\"value3b\"" \ - name4="value4a\\nvalue4b" \ \ No newline at end of file diff --git a/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.exposedefault b/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.exposedefault deleted file mode 100644 index d3d9862d9e76..000000000000 --- a/pkg/util/docker/dockerfile/builder/testdata/Dockerfile.exposedefault +++ /dev/null @@ -1,2 +0,0 @@ -FROM busybox -EXPOSE 3469 \ No newline at end of file diff --git a/pkg/util/docker/dockerfile/builder/testdata/dir/Dockerfile b/pkg/util/docker/dockerfile/builder/testdata/dir/Dockerfile deleted file mode 100644 index 6e8b8f7f6f29..000000000000 --- a/pkg/util/docker/dockerfile/builder/testdata/dir/Dockerfile +++ /dev/null @@ -1,4 +0,0 @@ -FROM busybox -COPY . / -COPY . dir -COPY subdir/ test/ \ No newline at end of file diff --git a/pkg/util/docker/dockerfile/builder/testdata/dir/file b/pkg/util/docker/dockerfile/builder/testdata/dir/file deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkg/util/docker/dockerfile/builder/testdata/dir/subdir/file2 b/pkg/util/docker/dockerfile/builder/testdata/dir/subdir/file2 deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkg/util/docker/dockerfile/builder/testdata/ignore/.dockerignore b/pkg/util/docker/dockerfile/builder/testdata/ignore/.dockerignore deleted file mode 100644 index 80bf870c9b81..000000000000 --- a/pkg/util/docker/dockerfile/builder/testdata/ignore/.dockerignore +++ /dev/null @@ -1,2 +0,0 @@ -file -file2 \ No newline at end of file diff --git a/pkg/util/docker/dockerfile/builder/testdata/ignore/Dockerfile b/pkg/util/docker/dockerfile/builder/testdata/ignore/Dockerfile deleted file mode 100644 index c329312a95c2..000000000000 --- a/pkg/util/docker/dockerfile/builder/testdata/ignore/Dockerfile +++ /dev/null @@ -1,2 +0,0 @@ -FROM busybox -COPY . / diff --git a/pkg/util/docker/dockerfile/builder/testdata/ignore/file b/pkg/util/docker/dockerfile/builder/testdata/ignore/file deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkg/util/docker/dockerfile/builder/testdata/ignore/file2 b/pkg/util/docker/dockerfile/builder/testdata/ignore/file2 deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/pkg/util/docker/dockerfile/builder/testdata/ignore/file3 b/pkg/util/docker/dockerfile/builder/testdata/ignore/file3 deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/vendor/github.com/apcera/gssapi/buffer_test.go b/vendor/github.com/apcera/gssapi/buffer_test.go deleted file mode 100644 index fb3d5364a4c4..000000000000 --- a/vendor/github.com/apcera/gssapi/buffer_test.go +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright 2013-2015 Apcera Inc. All rights reserved. - -package gssapi - -import ( - "bytes" - "testing" -) - -func TestNewBuffer(t *testing.T) { - l, err := testLoad() - if err != nil { - t.Fatal(err) - } - defer l.Unload() - - for a := range []int{allocNone, allocMalloc, allocGSSAPI} { - b, err := l.MakeBuffer(a) - if err != nil { - t.Fatalf("alloc: %v: %s", a, err) - } - defer b.Release() - - if b == nil { - t.Fatalf("alloc: %v: Got nil, expected non-nil", a) - } - if b.Lib != l { - t.Fatalf("alloc: %v: b.Lib didn't get set correctly, got %p, expected %p", - a, b.Lib, l) - } - if b.C_gss_buffer_t == nil { - t.Fatalf("alloc: %v: Got nil buffer, expected non-nil", a) - } - if b.String() != "" { - t.Fatalf(`alloc: %v: String(): got %q, expected ""`, - a, b.String()) - } - } -} - -// Also tests MakeBufferBytes, implicitly -func TestMakeBufferString(t *testing.T) { - l, err := testLoad() - if err != nil { - t.Fatal(err) - } - defer l.Unload() - - test := "testing" - b, err := l.MakeBufferString(test) - if err != nil { - t.Fatal(err) - } - defer b.Release() - - if b == nil { - t.Fatal("Got nil, expected non-nil") - } - if b.Lib != l { - t.Fatalf("b.Lib didn't get set correctly, got %p, expected %p", b.Lib, l) - } - if b.String() != test { - t.Fatalf("Got %q, expected %q", b.String(), test) - } else if !bytes.Equal(b.Bytes(), []byte(test)) { - t.Fatalf("Got '%v'; expected '%v'", b.Bytes(), []byte(test)) - } -} diff --git a/vendor/github.com/apcera/gssapi/lib_test.go b/vendor/github.com/apcera/gssapi/lib_test.go deleted file mode 100644 index 2ced40b81ded..000000000000 --- a/vendor/github.com/apcera/gssapi/lib_test.go +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2013-2015 Apcera Inc. All rights reserved. - -package gssapi - -import ( - "fmt" - "log" - "os" - "testing" -) - -func testLoad() (lib *Lib, err error) { - pp := make([]Printer, 0, MaxSeverity) - for i := Severity(0); i < MaxSeverity; i++ { - pp = append(pp, log.New(os.Stderr, - fmt.Sprintf("%s gssapi-test:\t", i), - log.LstdFlags)) - } - return Load(&Options{ - Printers: pp, - }) -} - -func TestLoadLib(t *testing.T) { - l, err := testLoad() - if err != nil { - t.Fatal(err) - } - - if l.Fp_gss_export_name == nil { - t.Error("Fp_gss_export_name did not get initialized") - return - } - - // TODO: maybe use reflect to enumerate all Fp's - - defer l.Unload() -} diff --git a/vendor/github.com/apcera/gssapi/name_test.go b/vendor/github.com/apcera/gssapi/name_test.go deleted file mode 100644 index 984f93618bcf..000000000000 --- a/vendor/github.com/apcera/gssapi/name_test.go +++ /dev/null @@ -1,124 +0,0 @@ -// Copyright 2014 Apcera Inc. All rights reserved. - -package gssapi - -import ( - "testing" -) - -// Tests importing exporting names -func TestNameImportExport(t *testing.T) { - l, err := testLoad() - if err != nil { - t.Fatal(err) - } - defer l.Unload() - - names := []string{ - `test@corp.example.com`, - `test@corp.ExAmple.com`, - `test@CORP.EXAMPLE.COM`, - } - - makeName := func(n string) (name *Name) { - b, _ := l.MakeBufferString(n) - if err != nil { - t.Fatalf("%q: Got error %v, expected nil", n, err) - } - if b == nil { - t.Fatalf("%q: Got nil, expected non-nil", n) - } - defer b.Release() - - name, err := b.Name(l.GSS_C_NT_HOSTBASED_SERVICE) - if err != nil { - t.Fatalf("%q: Got error %v, expected nil", n, err) - } - if name == nil { - t.Fatalf("%q: Got nil, expected non-nil", n) - } - return name - } - - // Make the reference name - n0 := makeName(names[0]) - defer n0.Release() - - // Make sure we can have the krb mechanism, and normalize the reference - // name using it - mechs, err := n0.InquireMechs() - if err != nil { - //TODO: need a better test for OS X since this InquireMechs doesn't - // seem to work - t.Skipf("Couldn't get mechs for %q, error: %v", names[0], err.Error()) - } - - // This OID seems to be an avalable merch on linux - kerbOID, err := l.MakeOIDBytes([]byte{'\x2a', '\x86', '\x48', '\x86', '\xf7', '\x12', '\x01', '\x02', '\x02'}) - if err != nil { - t.Fatalf("Got error %v, expected nil", err) - } - defer kerbOID.Release() - - if !mechs.Contains(kerbOID) { - t.Fatalf("Expected %q to be in %q", kerbOID.DebugString(), mechs.DebugString()) - } - - makeNames := func(n string) ( - name *Name, canonical *Name, display string, exported *Buffer) { - - name = makeName(n) - if name == nil { - return nil, nil, "", nil - } - - origDisplay, _, err := name.Display() - if err != nil { - t.Fatalf("Got error %q, expected nil", err.Error()) - } - if origDisplay != n { - t.Fatalf("Got %q, expected %q", origDisplay, n) - } - - canonical, err = name.Canonicalize(kerbOID) - if err != nil { - t.Fatalf("Got error %q, expected nil", err.Error()) - } - if canonical == nil { - t.Fatal("Got nil, expected non-nil") - } - - display, _, err = canonical.Display() - if err != nil { - t.Fatalf("Got error %q, expected nil", err.Error()) - } - - exported, err = canonical.Export() - if err != nil { - t.Fatalf("Got error %q, expected nil", err.Error()) - } - if exported == nil { - t.Fatal("Got nil, expected non-nil") - } - - return name, canonical, display, exported - } - - n0, _, d0, e0 := makeNames(names[0]) - if n0 == nil { - t.Fatal("Got nil, expected non-nil") - } - - for _, n := range names { - n, _, d, e := makeNames(n) - if n == nil { - t.Fatalf("%s: Got nil, expected non-nil", n) - } - if d != d0 { - t.Fatalf("%s: Got %q, expected %q", n, d, d0) - } - if !e.Equal(e0) { - t.Fatalf("%s: Got %q, expected %q", n, e.String(), e0.String()) - } - } -} diff --git a/vendor/github.com/apcera/gssapi/spnego/spnego_server.go b/vendor/github.com/apcera/gssapi/spnego/spnego_server.go deleted file mode 100644 index 3229813258b3..000000000000 --- a/vendor/github.com/apcera/gssapi/spnego/spnego_server.go +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright 2015 Apcera Inc. All rights reserved. - -// This is intended to give an interface for Kerberized servers to negotiate -// with clients using SPNEGO. A reference implementation is provided below. -package spnego - -import ( - "errors" - "net/http" - - "github.com/apcera/gssapi" -) - -// A ServerNegotiator is an interface that defines minimal functionality for -// SPNEGO and credential issuance using GSSAPI from the server side. -type ServerNegotiator interface { - // AcquireCred acquires a credential from the server's environment. - AcquireCred(string) (*gssapi.CredId, error) - - // Negotiate handles the negotiation with the client. - Negotiate(*gssapi.CredId, http.Header, http.Header) (string, int, error) -} - -// A KerberizedServer allows a server to negotiate authentication over SPNEGO -// with a client. -type KerberizedServer struct { - *gssapi.Lib -} - -var _ ServerNegotiator = KerberizedServer{} - -// AcquireCred acquires a Kerberos credential (keytab) from environment. The -// CredId MUST be released by the caller. -func (k KerberizedServer) AcquireCred(serviceName string) (*gssapi.CredId, error) { - nameBuf, err := k.MakeBufferString(serviceName) - if err != nil { - return nil, err - } - defer nameBuf.Release() - - name, err := nameBuf.Name(k.GSS_KRB5_NT_PRINCIPAL_NAME) - if err != nil { - return nil, err - } - defer name.Release() - - cred, actualMechs, _, err := k.Lib.AcquireCred(name, - gssapi.GSS_C_INDEFINITE, k.GSS_C_NO_OID_SET, gssapi.GSS_C_ACCEPT) - if err != nil { - return nil, err - } - defer actualMechs.Release() - - return cred, nil -} - -// Negotiate handles the SPNEGO client-server negotiation. Negotiate will likely -// be invoked multiple times; a 200 or 400 response code are terminating -// conditions, whereas a 401 means that the client should respond to the -// challenge that we send. -func (k KerberizedServer) Negotiate(cred *gssapi.CredId, inHeader, outHeader http.Header) (string, int, error) { - negotiate, inputToken := CheckSPNEGONegotiate(k.Lib, inHeader, "Authorization") - defer inputToken.Release() - - // Here, challenge the client to initiate the security context. The first - // request a client has made will often be unauthenticated, so we return a - // 401, which the client handles. - if !negotiate || inputToken.Length() == 0 { - AddSPNEGONegotiate(outHeader, "WWW-Authenticate", inputToken) - return "", http.StatusUnauthorized, errors.New("SPNEGO: unauthorized") - } - - // FIXME: GSS_S_CONTINUED_NEEDED handling? - ctx, srcName, _, outputToken, _, _, delegatedCredHandle, err := - k.AcceptSecContext(k.GSS_C_NO_CONTEXT, - cred, inputToken, k.GSS_C_NO_CHANNEL_BINDINGS) - if err != nil { - return "", http.StatusBadRequest, err - } - delegatedCredHandle.Release() - ctx.DeleteSecContext() - outputToken.Release() - defer srcName.Release() - - return srcName.String(), http.StatusOK, nil -} diff --git a/vendor/github.com/apcera/gssapi/spnego/spnego_transport.go b/vendor/github.com/apcera/gssapi/spnego/spnego_transport.go deleted file mode 100644 index 24392b482a64..000000000000 --- a/vendor/github.com/apcera/gssapi/spnego/spnego_transport.go +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2013-2015 Apcera Inc. All rights reserved. - -package spnego - -import ( - "encoding/base64" - "fmt" - "net/http" - "strings" - - "github.com/apcera/gssapi" -) - -// AddSPNEGONegotiate adds a Negotiate header with the value of a serialized -// token to an http header. -func AddSPNEGONegotiate(h http.Header, name string, token *gssapi.Buffer) { - if name == "" { - return - } - - v := "Negotiate" - if token.Length() != 0 { - data := token.Bytes() - v = v + " " + base64.StdEncoding.EncodeToString(data) - } - h.Set(name, v) -} - -// CheckSPNEGONegotiate checks for the presence of a Negotiate header. If -// present, we return a gssapi Token created from the header value sent to us. -func CheckSPNEGONegotiate(lib *gssapi.Lib, h http.Header, name string) (present bool, token *gssapi.Buffer) { - var err error - defer func() { - if err != nil { - lib.Debug(fmt.Sprintf("CheckSPNEGONegotiate: %v", err)) - } - }() - - v := h.Get(name) - if len(v) == 0 || !strings.HasPrefix(v, "Negotiate") { - return false, nil - } - - present = true - tbytes, err := base64.StdEncoding.DecodeString(strings.TrimSpace(v[len("Negotiate"):])) - if err != nil { - return false, nil - } - - if len(tbytes) > 0 { - token, err = lib.MakeBufferBytes(tbytes) - if err != nil { - return false, nil - } - } - - return present, token -} diff --git a/vendor/github.com/apcera/gssapi/status_test.go b/vendor/github.com/apcera/gssapi/status_test.go deleted file mode 100644 index d2b127192995..000000000000 --- a/vendor/github.com/apcera/gssapi/status_test.go +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2013-2015 Apcera Inc. All rights reserved. - -package gssapi - -import ( - "testing" -) - -func TestStatus(t *testing.T) { - l, err := testLoad() - if err != nil { - t.Error(err) - return - } - defer l.Unload() - -} diff --git a/vendor/github.com/cpuguy83/go-md2man/LICENSE.md b/vendor/github.com/cpuguy83/go-md2man/LICENSE.md deleted file mode 100644 index 1cade6cef6a1..000000000000 --- a/vendor/github.com/cpuguy83/go-md2man/LICENSE.md +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2014 Brian Goff - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/vendor/github.com/cpuguy83/go-md2man/md2man/md2man.go b/vendor/github.com/cpuguy83/go-md2man/md2man/md2man.go deleted file mode 100644 index 8f44fa155064..000000000000 --- a/vendor/github.com/cpuguy83/go-md2man/md2man/md2man.go +++ /dev/null @@ -1,19 +0,0 @@ -package md2man - -import ( - "github.com/russross/blackfriday" -) - -func Render(doc []byte) []byte { - renderer := RoffRenderer(0) - extensions := 0 - extensions |= blackfriday.EXTENSION_NO_INTRA_EMPHASIS - extensions |= blackfriday.EXTENSION_TABLES - extensions |= blackfriday.EXTENSION_FENCED_CODE - extensions |= blackfriday.EXTENSION_AUTOLINK - extensions |= blackfriday.EXTENSION_SPACE_HEADERS - extensions |= blackfriday.EXTENSION_FOOTNOTES - extensions |= blackfriday.EXTENSION_TITLEBLOCK - - return blackfriday.Markdown(doc, renderer, extensions) -} diff --git a/vendor/github.com/cpuguy83/go-md2man/md2man/roff.go b/vendor/github.com/cpuguy83/go-md2man/md2man/roff.go deleted file mode 100644 index 4478786b7b6d..000000000000 --- a/vendor/github.com/cpuguy83/go-md2man/md2man/roff.go +++ /dev/null @@ -1,269 +0,0 @@ -package md2man - -import ( - "bytes" - "fmt" - "html" - "strings" - - "github.com/russross/blackfriday" -) - -type roffRenderer struct{} - -func RoffRenderer(flags int) blackfriday.Renderer { - return &roffRenderer{} -} - -func (r *roffRenderer) GetFlags() int { - return 0 -} - -func (r *roffRenderer) TitleBlock(out *bytes.Buffer, text []byte) { - out.WriteString(".TH ") - - splitText := bytes.Split(text, []byte("\n")) - for i, line := range splitText { - line = bytes.TrimPrefix(line, []byte("% ")) - if i == 0 { - line = bytes.Replace(line, []byte("("), []byte("\" \""), 1) - line = bytes.Replace(line, []byte(")"), []byte("\" \""), 1) - } - line = append([]byte("\""), line...) - line = append(line, []byte("\" ")...) - out.Write(line) - } - - out.WriteString(" \"\"\n") -} - -func (r *roffRenderer) BlockCode(out *bytes.Buffer, text []byte, lang string) { - out.WriteString("\n.PP\n.RS\n\n.nf\n") - escapeSpecialChars(out, text) - out.WriteString("\n.fi\n.RE\n") -} - -func (r *roffRenderer) BlockQuote(out *bytes.Buffer, text []byte) { - out.WriteString("\n.PP\n.RS\n") - out.Write(text) - out.WriteString("\n.RE\n") -} - -func (r *roffRenderer) BlockHtml(out *bytes.Buffer, text []byte) { - out.Write(text) -} - -func (r *roffRenderer) Header(out *bytes.Buffer, text func() bool, level int, id string) { - marker := out.Len() - - switch { - case marker == 0: - // This is the doc header - out.WriteString(".TH ") - case level == 1: - out.WriteString("\n\n.SH ") - case level == 2: - out.WriteString("\n.SH ") - default: - out.WriteString("\n.SS ") - } - - if !text() { - out.Truncate(marker) - return - } -} - -func (r *roffRenderer) HRule(out *bytes.Buffer) { - out.WriteString("\n.ti 0\n\\l'\\n(.lu'\n") -} - -func (r *roffRenderer) List(out *bytes.Buffer, text func() bool, flags int) { - marker := out.Len() - out.WriteString(".IP ") - if flags&blackfriday.LIST_TYPE_ORDERED != 0 { - out.WriteString("\\(bu 2") - } else { - out.WriteString("\\n+[step" + string(flags) + "]") - } - out.WriteString("\n") - if !text() { - out.Truncate(marker) - return - } - -} - -func (r *roffRenderer) ListItem(out *bytes.Buffer, text []byte, flags int) { - out.WriteString("\n\\item ") - out.Write(text) -} - -func (r *roffRenderer) Paragraph(out *bytes.Buffer, text func() bool) { - marker := out.Len() - out.WriteString("\n.PP\n") - if !text() { - out.Truncate(marker) - return - } - if marker != 0 { - out.WriteString("\n") - } -} - -// TODO: This might now work -func (r *roffRenderer) Table(out *bytes.Buffer, header []byte, body []byte, columnData []int) { - out.WriteString(".TS\nallbox;\n") - - out.Write(header) - out.Write(body) - out.WriteString("\n.TE\n") -} - -func (r *roffRenderer) TableRow(out *bytes.Buffer, text []byte) { - if out.Len() > 0 { - out.WriteString("\n") - } - out.Write(text) - out.WriteString("\n") -} - -func (r *roffRenderer) TableHeaderCell(out *bytes.Buffer, text []byte, align int) { - if out.Len() > 0 { - out.WriteString(" ") - } - out.Write(text) - out.WriteString(" ") -} - -// TODO: This is probably broken -func (r *roffRenderer) TableCell(out *bytes.Buffer, text []byte, align int) { - if out.Len() > 0 { - out.WriteString("\t") - } - out.Write(text) - out.WriteString("\t") -} - -func (r *roffRenderer) Footnotes(out *bytes.Buffer, text func() bool) { - -} - -func (r *roffRenderer) FootnoteItem(out *bytes.Buffer, name, text []byte, flags int) { - -} - -func (r *roffRenderer) AutoLink(out *bytes.Buffer, link []byte, kind int) { - out.WriteString("\n\\[la]") - out.Write(link) - out.WriteString("\\[ra]") -} - -func (r *roffRenderer) CodeSpan(out *bytes.Buffer, text []byte) { - out.WriteString("\\fB\\fC") - escapeSpecialChars(out, text) - out.WriteString("\\fR") -} - -func (r *roffRenderer) DoubleEmphasis(out *bytes.Buffer, text []byte) { - out.WriteString("\\fB") - out.Write(text) - out.WriteString("\\fP") -} - -func (r *roffRenderer) Emphasis(out *bytes.Buffer, text []byte) { - out.WriteString("\\fI") - out.Write(text) - out.WriteString("\\fP") -} - -func (r *roffRenderer) Image(out *bytes.Buffer, link []byte, title []byte, alt []byte) { -} - -func (r *roffRenderer) LineBreak(out *bytes.Buffer) { - out.WriteString("\n.br\n") -} - -func (r *roffRenderer) Link(out *bytes.Buffer, link []byte, title []byte, content []byte) { - r.AutoLink(out, link, 0) -} - -func (r *roffRenderer) RawHtmlTag(out *bytes.Buffer, tag []byte) { - out.Write(tag) -} - -func (r *roffRenderer) TripleEmphasis(out *bytes.Buffer, text []byte) { - out.WriteString("\\s+2") - out.Write(text) - out.WriteString("\\s-2") -} - -func (r *roffRenderer) StrikeThrough(out *bytes.Buffer, text []byte) { -} - -func (r *roffRenderer) FootnoteRef(out *bytes.Buffer, ref []byte, id int) { - -} - -func (r *roffRenderer) Entity(out *bytes.Buffer, entity []byte) { - out.WriteString(html.UnescapeString(string(entity))) -} - -func processFooterText(text []byte) []byte { - text = bytes.TrimPrefix(text, []byte("% ")) - newText := []byte{} - textArr := strings.Split(string(text), ") ") - - for i, w := range textArr { - if i == 0 { - w = strings.Replace(w, "(", "\" \"", 1) - w = fmt.Sprintf("\"%s\"", w) - } else { - w = fmt.Sprintf(" \"%s\"", w) - } - newText = append(newText, []byte(w)...) - } - newText = append(newText, []byte(" \"\"")...) - - return newText -} - -func (r *roffRenderer) NormalText(out *bytes.Buffer, text []byte) { - escapeSpecialChars(out, text) -} - -func (r *roffRenderer) DocumentHeader(out *bytes.Buffer) { -} - -func (r *roffRenderer) DocumentFooter(out *bytes.Buffer) { -} - -func needsBackslash(c byte) bool { - for _, r := range []byte("-_&\\~") { - if c == r { - return true - } - } - return false -} - -func escapeSpecialChars(out *bytes.Buffer, text []byte) { - for i := 0; i < len(text); i++ { - // directly copy normal characters - org := i - - for i < len(text) && !needsBackslash(text[i]) { - i++ - } - if i > org { - out.Write(text[org:i]) - } - - // escape a character - if i >= len(text) { - break - } - out.WriteByte('\\') - out.WriteByte(text[i]) - } -} diff --git a/pkg/util/docker/dockerfile/builder/builder.go b/vendor/github.com/openshift/imagebuilder/builder.go similarity index 88% rename from pkg/util/docker/dockerfile/builder/builder.go rename to vendor/github.com/openshift/imagebuilder/builder.go index 301eadf6e0d3..bdfbe0e78fa9 100644 --- a/pkg/util/docker/dockerfile/builder/builder.go +++ b/vendor/github.com/openshift/imagebuilder/builder.go @@ -1,4 +1,4 @@ -package builder +package imagebuilder import ( "bytes" @@ -32,6 +32,7 @@ type Run struct { type Executor interface { Copy(copies ...Copy) error Run(run Run, config docker.Config) error + UnrecognizedInstruction(step *Step) error } type logExecutor struct{} @@ -48,6 +49,11 @@ func (logExecutor) Run(run Run, config docker.Config) error { return nil } +func (logExecutor) UnrecognizedInstruction(step *Step) error { + log.Printf("Unknown instruction: %s", strings.ToUpper(step.Command)) + return nil +} + type noopExecutor struct{} func (noopExecutor) Copy(copies ...Copy) error { @@ -58,6 +64,10 @@ func (noopExecutor) Run(run Run, config docker.Config) error { return nil } +func (noopExecutor) UnrecognizedInstruction(step *Step) error { + return nil +} + var ( LogExecutor = logExecutor{} NoopExecutor = noopExecutor{} @@ -103,7 +113,7 @@ func (b *Builder) Step() *Step { func (b *Builder) Run(step *Step, exec Executor) error { fn, ok := evaluateTable[step.Command] if !ok { - return fmt.Errorf("Unknown instruction: %s", strings.ToUpper(step.Command)) + return exec.UnrecognizedInstruction(step) } if err := fn(b, step.Args, step.Attrs, step.Original); err != nil { return err @@ -291,3 +301,32 @@ func ParseDockerignore(root string) ([]string, error) { } return strings.Split(string(ignore), "\n"), nil } + +// ExportEnv creates an export statement for a shell that contains all of the +// provided environment. +func ExportEnv(env []string) string { + if len(env) == 0 { + return "" + } + out := "export" + for _, e := range env { + out += " " + BashQuote(e) + } + return out + "; " +} + +// BashQuote escapes the provided string and surrounds it with double quotes. +// TODO: verify that these are all we have to escape. +func BashQuote(env string) string { + out := []rune{'"'} + for _, r := range env { + switch r { + case '$', '\\', '"': + out = append(out, '\\', r) + default: + out = append(out, r) + } + } + out = append(out, '"') + return string(out) +} diff --git a/pkg/util/docker/dockerfile/builder/constants.go b/vendor/github.com/openshift/imagebuilder/constants.go similarity index 92% rename from pkg/util/docker/dockerfile/builder/constants.go rename to vendor/github.com/openshift/imagebuilder/constants.go index 58942e7b7675..86cd2e5e27d4 100644 --- a/pkg/util/docker/dockerfile/builder/constants.go +++ b/vendor/github.com/openshift/imagebuilder/constants.go @@ -1,4 +1,4 @@ -package builder +package imagebuilder const ( // in docker/system diff --git a/pkg/util/docker/dockerfile/builder/dispatchers.go b/vendor/github.com/openshift/imagebuilder/dispatchers.go similarity index 98% rename from pkg/util/docker/dockerfile/builder/dispatchers.go rename to vendor/github.com/openshift/imagebuilder/dispatchers.go index 7bb23c604d98..e7127d5d396c 100644 --- a/pkg/util/docker/dockerfile/builder/dispatchers.go +++ b/vendor/github.com/openshift/imagebuilder/dispatchers.go @@ -1,4 +1,4 @@ -package builder +package imagebuilder // This file contains the dispatchers for each command. Note that // `nullDispatch` is not actually a command, but support for commands we parse @@ -17,8 +17,8 @@ import ( docker "github.com/fsouza/go-dockerclient" - "github.com/openshift/origin/pkg/util/docker/dockerfile/builder/signal" - "github.com/openshift/origin/pkg/util/docker/dockerfile/builder/strslice" + "github.com/openshift/imagebuilder/signal" + "github.com/openshift/imagebuilder/strslice" ) // dispatch with no layer / parsing. This is effectively not a command. diff --git a/pkg/util/docker/dockerfile/builder/doc.go b/vendor/github.com/openshift/imagebuilder/doc.go similarity index 91% rename from pkg/util/docker/dockerfile/builder/doc.go rename to vendor/github.com/openshift/imagebuilder/doc.go index e3a9e2431d1b..97028ffc8492 100644 --- a/pkg/util/docker/dockerfile/builder/doc.go +++ b/vendor/github.com/openshift/imagebuilder/doc.go @@ -3,4 +3,4 @@ // single layer. // // TODO: full windows support -package builder +package imagebuilder diff --git a/pkg/util/docker/dockerfile/builder/client.go b/vendor/github.com/openshift/imagebuilder/dockerclient/client.go similarity index 91% rename from pkg/util/docker/dockerfile/builder/client.go rename to vendor/github.com/openshift/imagebuilder/dockerclient/client.go index c3d974c16adf..d92de196e18c 100644 --- a/pkg/util/docker/dockerfile/builder/client.go +++ b/vendor/github.com/openshift/imagebuilder/dockerclient/client.go @@ -1,4 +1,4 @@ -package builder +package dockerclient import ( "archive/tar" @@ -13,15 +13,15 @@ import ( "strconv" "strings" - "k8s.io/kubernetes/pkg/credentialprovider" - "github.com/docker/docker/builder/parser" + dockertypes "github.com/docker/engine-api/types" docker "github.com/fsouza/go-dockerclient" "github.com/fsouza/go-dockerclient/external/github.com/docker/docker/pkg/archive" "github.com/fsouza/go-dockerclient/external/github.com/docker/docker/pkg/fileutils" "github.com/golang/glog" - "github.com/openshift/origin/pkg/util/docker/dockerfile/builder/imageprogress" + "github.com/openshift/imagebuilder" + "github.com/openshift/imagebuilder/imageprogress" ) // Mount represents a binding between the current system and the destination client @@ -46,6 +46,9 @@ type ClientExecutor struct { // AllowPull when set will pull images that are not present on // the daemon. AllowPull bool + // IgnoreUnrecognizedInstructions, if true, allows instructions + // that are not yet supported to be ignored (will be printed) + IgnoreUnrecognizedInstructions bool // TransientMounts are a set of mounts from outside the build // to the inside that will not be part of the final image. Any // content created inside the mount's destinationPath will be @@ -67,7 +70,7 @@ type ClientExecutor struct { // AuthFn will handle authenticating any docker pulls if Image // is set to nil. - AuthFn func(name string) ([]credentialprovider.LazyAuthConfiguration, bool) + AuthFn func(name string) ([]dockertypes.AuthConfig, bool) // HostConfig is used to start the container (if necessary). HostConfig *docker.HostConfig // LogFn is an optional command to log information to the end user @@ -76,7 +79,10 @@ type ClientExecutor struct { // NewClientExecutor creates a client executor. func NewClientExecutor(client *docker.Client) *ClientExecutor { - return &ClientExecutor{Client: client} + return &ClientExecutor{ + Client: client, + LogFn: func(string, ...interface{}) {}, + } } // Build is a helper method to perform a Docker build against the @@ -86,11 +92,11 @@ func NewClientExecutor(client *docker.Client) *ClientExecutor { // any containers it creates directly, and set the e.Image.ID field // to the generated image. func (e *ClientExecutor) Build(r io.Reader, args map[string]string) error { - b := NewBuilder() + b := imagebuilder.NewBuilder() b.Args = args if e.Excludes == nil { - excludes, err := ParseDockerignore(e.Directory) + excludes, err := imagebuilder.ParseDockerignore(e.Directory) if err != nil { return err } @@ -111,7 +117,7 @@ func (e *ClientExecutor) Build(r io.Reader, args map[string]string) error { } // load the image if e.Image == nil { - if from == NoBaseImageSpecifier { + if from == imagebuilder.NoBaseImageSpecifier { if runtime.GOOS == "windows" { return fmt.Errorf("building from scratch images is not supported") } @@ -191,10 +197,10 @@ func (e *ClientExecutor) Build(r io.Reader, args map[string]string) error { // copy any source content into the temporary mount path if mustStart && len(e.TransientMounts) > 0 { - var copies []Copy + var copies []imagebuilder.Copy for i, mount := range e.TransientMounts { source := mount.SourcePath - copies = append(copies, Copy{ + copies = append(copies, imagebuilder.Copy{ Src: source, Dest: []string{path.Join("/tmp/__temporarymount", strconv.Itoa(i))}, }) @@ -375,7 +381,7 @@ func (e *ClientExecutor) LoadImage(from string) (*docker.Image, error) { // TODO: we may want to abstract looping over multiple credentials auth, _ := e.AuthFn(repository) if len(auth) == 0 { - auth = append(auth, credentialprovider.LazyAuthConfiguration{}) + auth = append(auth, dockertypes.AuthConfig{}) } if e.LogFn != nil { @@ -412,26 +418,34 @@ func (e *ClientExecutor) LoadImage(from string) (*docker.Image, error) { return e.Client.InspectImage(from) } +func (e *ClientExecutor) UnrecognizedInstruction(step *imagebuilder.Step) error { + if e.IgnoreUnrecognizedInstructions { + e.LogFn("warning: Unknown instruction: %s", strings.ToUpper(step.Command)) + return nil + } + return fmt.Errorf("Unknown instruction: %s", strings.ToUpper(step.Command)) +} + // Run executes a single Run command against the current container using exec(). // Since exec does not allow ENV or WORKINGDIR to be set, we force the execution of // the user command into a shell and perform those operations before. Since RUN // requires /bin/sh, we can use both 'cd' and 'export'. -func (e *ClientExecutor) Run(run Run, config docker.Config) error { +func (e *ClientExecutor) Run(run imagebuilder.Run, config docker.Config) error { args := make([]string, len(run.Args)) copy(args, run.Args) if runtime.GOOS == "windows" { if len(config.WorkingDir) > 0 { - args[0] = fmt.Sprintf("cd %s && %s", bashQuote(config.WorkingDir), args[0]) + args[0] = fmt.Sprintf("cd %s && %s", imagebuilder.BashQuote(config.WorkingDir), args[0]) } // TODO: implement windows ENV args = append([]string{"cmd", "/S", "/C"}, args...) } else { if len(config.WorkingDir) > 0 { - args[0] = fmt.Sprintf("cd %s && %s", bashQuote(config.WorkingDir), args[0]) + args[0] = fmt.Sprintf("cd %s && %s", imagebuilder.BashQuote(config.WorkingDir), args[0]) } if len(config.Env) > 0 { - args[0] = exportEnv(config.Env) + args[0] + args[0] = imagebuilder.ExportEnv(config.Env) + args[0] } args = append([]string{"/bin/sh", "-c"}, args...) } @@ -464,7 +478,7 @@ func (e *ClientExecutor) Run(run Run, config docker.Config) error { return nil } -func (e *ClientExecutor) Copy(copies ...Copy) error { +func (e *ClientExecutor) Copy(copies ...imagebuilder.Copy) error { container := e.Container for _, c := range copies { // TODO: reuse source diff --git a/pkg/util/docker/dockerfile/builder/copyinfo.go b/vendor/github.com/openshift/imagebuilder/dockerclient/copyinfo.go similarity index 95% rename from pkg/util/docker/dockerfile/builder/copyinfo.go rename to vendor/github.com/openshift/imagebuilder/dockerclient/copyinfo.go index 5a8d48d6fb1e..018aeef31ee1 100644 --- a/pkg/util/docker/dockerfile/builder/copyinfo.go +++ b/vendor/github.com/openshift/imagebuilder/dockerclient/copyinfo.go @@ -1,4 +1,4 @@ -package builder +package dockerclient import ( "fmt" @@ -150,3 +150,8 @@ func containsWildcards(name string) bool { } return false } + +// isURL returns true if the string appears to be a URL. +func isURL(s string) bool { + return strings.HasPrefix(s, "http://") || strings.HasPrefix(s, "https://") +} diff --git a/pkg/util/docker/dockerfile/builder/evaluator.go b/vendor/github.com/openshift/imagebuilder/evaluator.go similarity index 99% rename from pkg/util/docker/dockerfile/builder/evaluator.go rename to vendor/github.com/openshift/imagebuilder/evaluator.go index 57d7cf3be80e..e17eea23e636 100644 --- a/pkg/util/docker/dockerfile/builder/evaluator.go +++ b/vendor/github.com/openshift/imagebuilder/evaluator.go @@ -1,4 +1,4 @@ -package builder +package imagebuilder import ( "fmt" diff --git a/pkg/util/docker/dockerfile/builder/imageprogress/progress.go b/vendor/github.com/openshift/imagebuilder/imageprogress/progress.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/imageprogress/progress.go rename to vendor/github.com/openshift/imagebuilder/imageprogress/progress.go diff --git a/pkg/util/docker/dockerfile/builder/imageprogress/pull.go b/vendor/github.com/openshift/imagebuilder/imageprogress/pull.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/imageprogress/pull.go rename to vendor/github.com/openshift/imagebuilder/imageprogress/pull.go diff --git a/pkg/util/docker/dockerfile/builder/imageprogress/push.go b/vendor/github.com/openshift/imagebuilder/imageprogress/push.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/imageprogress/push.go rename to vendor/github.com/openshift/imagebuilder/imageprogress/push.go diff --git a/pkg/util/docker/dockerfile/builder/internals.go b/vendor/github.com/openshift/imagebuilder/internals.go similarity index 65% rename from pkg/util/docker/dockerfile/builder/internals.go rename to vendor/github.com/openshift/imagebuilder/internals.go index 311ed17fa2b9..11144d99107a 100644 --- a/pkg/util/docker/dockerfile/builder/internals.go +++ b/vendor/github.com/openshift/imagebuilder/internals.go @@ -1,4 +1,4 @@ -package builder +package imagebuilder import ( "fmt" @@ -8,40 +8,6 @@ import ( "strings" ) -// isURL returns true if the string appears to be a URL. -func isURL(s string) bool { - return strings.HasPrefix(s, "http://") || strings.HasPrefix(s, "https://") -} - -// exportEnv creates an export statement for a shell that contains all of the -// provided environment. -func exportEnv(env []string) string { - if len(env) == 0 { - return "" - } - out := "export" - for _, e := range env { - out += " " + bashQuote(e) - } - return out + "; " -} - -// bashQuote escapes the provided string and surrounds it with double quotes. -// TODO: verify that these are all we have to escape. -func bashQuote(env string) string { - out := []rune{'"'} - for _, r := range env { - switch r { - case '$', '\\', '"': - out = append(out, '\\', r) - default: - out = append(out, r) - } - } - out = append(out, '"') - return string(out) -} - // hasEnvName returns true if the provided environment contains the named ENV var. func hasEnvName(env []string, name string) bool { for _, e := range env { diff --git a/pkg/util/docker/dockerfile/builder/shell_parser.go b/vendor/github.com/openshift/imagebuilder/shell_parser.go similarity index 99% rename from pkg/util/docker/dockerfile/builder/shell_parser.go rename to vendor/github.com/openshift/imagebuilder/shell_parser.go index 2881bf2cb963..1b31dbc85c9a 100644 --- a/pkg/util/docker/dockerfile/builder/shell_parser.go +++ b/vendor/github.com/openshift/imagebuilder/shell_parser.go @@ -1,4 +1,4 @@ -package builder +package imagebuilder // This will take a single word and an array of env variables and // process all quotes (" and ') as well as $xxx and ${xxx} env variable diff --git a/pkg/util/docker/dockerfile/builder/signal/README.md b/vendor/github.com/openshift/imagebuilder/signal/README.md similarity index 100% rename from pkg/util/docker/dockerfile/builder/signal/README.md rename to vendor/github.com/openshift/imagebuilder/signal/README.md diff --git a/pkg/util/docker/dockerfile/builder/signal/signal.go b/vendor/github.com/openshift/imagebuilder/signal/signal.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/signal/signal.go rename to vendor/github.com/openshift/imagebuilder/signal/signal.go diff --git a/pkg/util/docker/dockerfile/builder/signal/signal_darwin.go b/vendor/github.com/openshift/imagebuilder/signal/signal_darwin.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/signal/signal_darwin.go rename to vendor/github.com/openshift/imagebuilder/signal/signal_darwin.go diff --git a/pkg/util/docker/dockerfile/builder/signal/signal_freebsd.go b/vendor/github.com/openshift/imagebuilder/signal/signal_freebsd.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/signal/signal_freebsd.go rename to vendor/github.com/openshift/imagebuilder/signal/signal_freebsd.go diff --git a/pkg/util/docker/dockerfile/builder/signal/signal_linux.go b/vendor/github.com/openshift/imagebuilder/signal/signal_linux.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/signal/signal_linux.go rename to vendor/github.com/openshift/imagebuilder/signal/signal_linux.go diff --git a/pkg/util/docker/dockerfile/builder/signal/signal_unix.go b/vendor/github.com/openshift/imagebuilder/signal/signal_unix.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/signal/signal_unix.go rename to vendor/github.com/openshift/imagebuilder/signal/signal_unix.go diff --git a/pkg/util/docker/dockerfile/builder/signal/signal_unsupported.go b/vendor/github.com/openshift/imagebuilder/signal/signal_unsupported.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/signal/signal_unsupported.go rename to vendor/github.com/openshift/imagebuilder/signal/signal_unsupported.go diff --git a/pkg/util/docker/dockerfile/builder/signal/signal_windows.go b/vendor/github.com/openshift/imagebuilder/signal/signal_windows.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/signal/signal_windows.go rename to vendor/github.com/openshift/imagebuilder/signal/signal_windows.go diff --git a/pkg/util/docker/dockerfile/builder/strslice/strslice.go b/vendor/github.com/openshift/imagebuilder/strslice/strslice.go similarity index 100% rename from pkg/util/docker/dockerfile/builder/strslice/strslice.go rename to vendor/github.com/openshift/imagebuilder/strslice/strslice.go diff --git a/pkg/util/docker/dockerfile/builder/LICENSE b/vendor/github.com/openshift/source-to-image/LICENSE similarity index 93% rename from pkg/util/docker/dockerfile/builder/LICENSE rename to vendor/github.com/openshift/source-to-image/LICENSE index ea21aad9d490..e06d2081865a 100644 --- a/pkg/util/docker/dockerfile/builder/LICENSE +++ b/vendor/github.com/openshift/source-to-image/LICENSE @@ -1,7 +1,6 @@ - - Apache License +Apache License Version 2.0, January 2004 - https://www.apache.org/licenses/ + http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION @@ -176,17 +175,28 @@ END OF TERMS AND CONDITIONS - Copyright 2013-2016 Docker, Inc. - Copyright 2016 The OpenShift Authors + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "{}" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright {yyyy} {name of copyright owner} Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - https://www.apache.org/licenses/LICENSE-2.0 + http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. + diff --git a/vendor/github.com/openshift/source-to-image/pkg/build/ignore/doc.go b/vendor/github.com/openshift/source-to-image/pkg/build/ignore/doc.go deleted file mode 100644 index 7883c76d94e1..000000000000 --- a/vendor/github.com/openshift/source-to-image/pkg/build/ignore/doc.go +++ /dev/null @@ -1,3 +0,0 @@ -// implements an interface around providing ignore file capabillities like seen in .dockerignore or .gitignore - -package ignore diff --git a/vendor/github.com/openshift/source-to-image/pkg/docker/test/client.go b/vendor/github.com/openshift/source-to-image/pkg/docker/test/client.go deleted file mode 100644 index 02d2cf69ef5e..000000000000 --- a/vendor/github.com/openshift/source-to-image/pkg/docker/test/client.go +++ /dev/null @@ -1,146 +0,0 @@ -package test - -import ( - "errors" - - "github.com/fsouza/go-dockerclient" -) - -// FakeDockerClient provides a Fake client for Docker testing -type FakeDockerClient struct { - Image *docker.Image - InspectImageResult []*docker.Image - Container *docker.Container - RemoveImageErr error - InspectImageErr []error - PullImageErr error - CreateContainerErr error - AttachToContainerErr error - StartContainerErr error - WaitContainerResult int - WaitContainerErr error - RemoveContainerErr error - CommitContainerErr error - CopyFromContainerErr error - BuildImageErr error - - RemoveImageName string - InspectImageName []string - PullImageOpts docker.PullImageOptions - PullImageAuth docker.AuthConfiguration - CreateContainerOpts docker.CreateContainerOptions - AttachToContainerOpts []docker.AttachToContainerOptions - StartContainerID string - StartContainerHostConfig *docker.HostConfig - WaitContainerID string - RemoveContainerOpts docker.RemoveContainerOptions - CommitContainerOpts docker.CommitContainerOptions - CopyFromContainerOpts docker.CopyFromContainerOptions - BuildImageOpts docker.BuildImageOptions -} - -// RemoveImage removes an image from the fake client -func (d *FakeDockerClient) RemoveImage(name string) error { - d.RemoveImageName = name - return d.RemoveImageErr -} - -func (d *FakeDockerClient) Ping() error { - return nil -} - -// InspectImage inspects the fake image -func (d *FakeDockerClient) InspectImage(name string) (*docker.Image, error) { - d.InspectImageName = append(d.InspectImageName, name) - i := len(d.InspectImageName) - 1 - var img *docker.Image - if i >= len(d.InspectImageResult) { - img = d.Image - } else { - img = d.InspectImageResult[i] - } - var err error - if i >= len(d.InspectImageErr) { - err = nil - } else { - err = d.InspectImageErr[i] - } - return img, err -} - -// PullImage pulls the fake image -func (d *FakeDockerClient) PullImage(opts docker.PullImageOptions, auth docker.AuthConfiguration) error { - d.PullImageOpts = opts - d.PullImageAuth = auth - return d.PullImageErr -} - -// CreateContainer creates a fake container -func (d *FakeDockerClient) CreateContainer(opts docker.CreateContainerOptions) (*docker.Container, error) { - d.CreateContainerOpts = opts - return d.Container, d.CreateContainerErr -} - -// StartContainer starts the fake container -func (d *FakeDockerClient) StartContainer(id string, hostConfig *docker.HostConfig) error { - d.StartContainerID = id - d.StartContainerHostConfig = hostConfig - return d.StartContainerErr -} - -func (d *FakeDockerClient) UploadToContainer(id string, opts docker.UploadToContainerOptions) error { - return nil -} - -// DownloadFromContainer downloads file (or directory) from the container. -func (d *FakeDockerClient) DownloadFromContainer(id string, opts docker.DownloadFromContainerOptions) error { - return errors.New("not implemented") -} - -// WaitContainer waits for a fake container to finish -func (d *FakeDockerClient) WaitContainer(id string) (int, error) { - d.WaitContainerID = id - return d.WaitContainerResult, d.WaitContainerErr -} - -// RemoveContainer removes the fake container -func (d *FakeDockerClient) RemoveContainer(opts docker.RemoveContainerOptions) error { - d.RemoveContainerOpts = opts - return d.RemoveContainerErr -} - -// CommitContainer commits the fake container -func (d *FakeDockerClient) CommitContainer(opts docker.CommitContainerOptions) (*docker.Image, error) { - d.CommitContainerOpts = opts - return d.Image, d.CommitContainerErr -} - -// CopyFromContainer copies from the fake container -func (d *FakeDockerClient) CopyFromContainer(opts docker.CopyFromContainerOptions) error { - d.CopyFromContainerOpts = opts - return d.CopyFromContainerErr -} - -// BuildImage builds image -func (d *FakeDockerClient) BuildImage(opts docker.BuildImageOptions) error { - d.BuildImageOpts = opts - return d.BuildImageErr -} - -func (d *FakeDockerClient) InspectContainer(id string) (*docker.Container, error) { - return nil, d.BuildImageErr -} - -func (d *FakeDockerClient) AttachToContainerNonBlocking(opts docker.AttachToContainerOptions) (docker.CloseWaiter, error) { - return fakeCloseWait{}, nil -} - -type fakeCloseWait struct{} - -func (cw fakeCloseWait) Close() error { - return nil -} - -func (cw fakeCloseWait) Wait() error { - return nil -}