diff --git a/Godeps/Godeps.json b/Godeps/Godeps.json index f8d90c82b3..8ecae6c4b6 100644 --- a/Godeps/Godeps.json +++ b/Godeps/Godeps.json @@ -1,7 +1,7 @@ { "ImportPath": "k8s.io/minikube", "GoVersion": "go1.7", - "GodepVersion": "v75", + "GodepVersion": "v77", "Packages": [ "./..." ], @@ -9,7 +9,7 @@ { "ImportPath": "bitbucket.org/ww/goautoneg", "Comment": "null-5", - "Rev": "'75cd24fc2f2c2a2088577d12123ddee5f54e0675'" + "Rev": "75cd24fc2f2c2a2088577d12123ddee5f54e0675" }, { "ImportPath": "cloud.google.com/go/compute/metadata", @@ -23,23 +23,28 @@ }, { "ImportPath": "github.com/Azure/azure-sdk-for-go/arm/compute", - "Comment": "v3.1.0-beta-24-g8316b90", - "Rev": "8316b9060f9c2443ba0864663245695d570a7fa2" + "Comment": "v7.0.1-beta", + "Rev": "0984e0641ae43b89283223034574d6465be93bf4" + }, + { + "ImportPath": "github.com/Azure/azure-sdk-for-go/arm/containerregistry", + "Comment": "v7.0.1-beta", + "Rev": "0984e0641ae43b89283223034574d6465be93bf4" }, { "ImportPath": "github.com/Azure/azure-sdk-for-go/arm/network", - "Comment": "v3.1.0-beta-24-g8316b90", - "Rev": "8316b9060f9c2443ba0864663245695d570a7fa2" + "Comment": "v7.0.1-beta", + "Rev": "0984e0641ae43b89283223034574d6465be93bf4" }, { "ImportPath": "github.com/Azure/azure-sdk-for-go/arm/storage", - "Comment": "v3.1.0-beta-24-g8316b90", - "Rev": "8316b9060f9c2443ba0864663245695d570a7fa2" + "Comment": "v7.0.1-beta", + "Rev": "0984e0641ae43b89283223034574d6465be93bf4" }, { "ImportPath": "github.com/Azure/azure-sdk-for-go/storage", - "Comment": "v3.1.0-beta-24-g8316b90", - "Rev": "8316b9060f9c2443ba0864663245695d570a7fa2" + "Comment": "v7.0.1-beta", + "Rev": "0984e0641ae43b89283223034574d6465be93bf4" }, { "ImportPath": "github.com/Azure/go-ansiterm", @@ -51,23 +56,28 @@ }, { "ImportPath": "github.com/Azure/go-autorest/autorest", - "Comment": "v7.0.6-4-g2492d97", - "Rev": "2492d97b402e00797833c03ac5fa1c572c7bb29a" + "Comment": "v7.2.2-8-ge0c77ec", + "Rev": "e0c77ecbe74311e03f2a629834d2110f031f1453" }, { "ImportPath": "github.com/Azure/go-autorest/autorest/azure", - "Comment": "v7.0.6-4-g2492d97", - "Rev": "2492d97b402e00797833c03ac5fa1c572c7bb29a" + "Comment": "v7.2.2-8-ge0c77ec", + "Rev": "e0c77ecbe74311e03f2a629834d2110f031f1453" }, { "ImportPath": "github.com/Azure/go-autorest/autorest/date", - "Comment": "v7.0.6-4-g2492d97", - "Rev": "2492d97b402e00797833c03ac5fa1c572c7bb29a" + "Comment": "v7.2.2-8-ge0c77ec", + "Rev": "e0c77ecbe74311e03f2a629834d2110f031f1453" }, { "ImportPath": "github.com/Azure/go-autorest/autorest/to", - "Comment": "v7.0.6-4-g2492d97", - "Rev": "2492d97b402e00797833c03ac5fa1c572c7bb29a" + "Comment": "v7.2.2-8-ge0c77ec", + "Rev": "e0c77ecbe74311e03f2a629834d2110f031f1453" + }, + { + "ImportPath": "github.com/Azure/go-autorest/autorest/validation", + "Comment": "v7.2.2-8-ge0c77ec", + "Rev": "e0c77ecbe74311e03f2a629834d2110f031f1453" }, { "ImportPath": "github.com/Microsoft/go-winio", @@ -675,12 +685,12 @@ }, { "ImportPath": "github.com/docker/distribution/digest", - "Comment": "v2.4.0-rc.1-38-gcd27f17", + "Comment": "v2.4.0-rc.1-38-gcd27f179", "Rev": "cd27f179f2c10c5d300e6d09025b538c475b0d51" }, { "ImportPath": "github.com/docker/distribution/reference", - "Comment": "v2.4.0-rc.1-38-gcd27f17", + "Comment": "v2.4.0-rc.1-38-gcd27f179", "Rev": "cd27f179f2c10c5d300e6d09025b538c475b0d51" }, { @@ -2122,10 +2132,6 @@ "ImportPath": "golang.org/x/sys/unix", "Rev": "8f0908ab3b2457e2e15403d3697c9ef5cb4b57a9" }, - { - "ImportPath": "golang.org/x/sys/windows", - "Rev": "8f0908ab3b2457e2e15403d3697c9ef5cb4b57a9" - }, { "ImportPath": "golang.org/x/sys/windows/registry", "Rev": "8f0908ab3b2457e2e15403d3697c9ef5cb4b57a9" @@ -2857,2838 +2863,2843 @@ }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-apiserver/app", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-apiserver/app/options", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-controller-manager/app", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-controller-manager/app/options", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-proxy/app", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/cmd/kube-proxy/app/options", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/cmd/kubelet/app", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/cmd/kubelet/app/options", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/admission", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/annotations", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/endpoints", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/errors", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/errors/storage", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/meta", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/meta/metatypes", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/pod", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/resource", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/service", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/unversioned", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/unversioned/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/v1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/api/validation/path", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apimachinery", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apimachinery/announced", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apimachinery/registered", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/abac", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/abac/latest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/abac/v0", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/abac/v1beta1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/apps", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/apps/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/apps/v1beta1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/apps/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authentication/v1beta1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authorization", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authorization/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authorization/v1beta1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/authorization/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/autoscaling", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/autoscaling/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/autoscaling/v1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/autoscaling/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch/v1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch/v2alpha1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/batch/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/certificates", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/certificates/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/certificates/v1alpha1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/certificates/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/componentconfig", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/componentconfig/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/extensions", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/extensions/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/extensions/v1beta1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/extensions/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/imagepolicy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/imagepolicy/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/policy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/policy/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/policy/v1beta1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/policy/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/rbac", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/rbac/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/rbac/v1alpha1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/rbac/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/storage", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/storage/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/storage/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/storage/v1beta1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apis/storage/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver/authenticator", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver/filters", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver/metrics", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver/openapi", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/apiserver/request", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authenticator", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authenticator/bearertoken", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authorizer", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authorizer/abac", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/authorizer/union", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/group", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/handlers", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/auth/user", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/capabilities", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/cache", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/chaosclient", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/leaderelection", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/leaderelection/resourcelock", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/listers/batch/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/listers/core/internalversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/metrics", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/record", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/restclient", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/retry", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/testing/core", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/transport", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/typed/discovery", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/typed/discovery/fake", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/typed/dynamic", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/auth", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/clientcmd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api/latest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api/v1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/aws", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/azure", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/cloudstack", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/gce", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/mesos", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/openstack", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/ovirt", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/photon", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/rackspace", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/certificates", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/cronjob", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/daemon", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/deployment", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/deployment/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/disruption", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/endpoint", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/garbagecollector", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/garbagecollector/metaonly", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/informers", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/job", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/namespace", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/node", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/petset", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/podautoscaler", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/podautoscaler/metrics", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/podgc", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/replicaset", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/replication", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/resourcequota", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/route", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/service", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/serviceaccount", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach/cache", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach/populator", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach/reconciler", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/attachdetach/statusupdater", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/controller/volume/persistentvolume", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/conversion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/conversion/queryparams", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/credentialprovider", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/credentialprovider/aws", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" + }, + { + "ImportPath": "k8s.io/kubernetes/pkg/credentialprovider/azure", + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/credentialprovider/gcp", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/fieldpath", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/fields", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/generated/openapi", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/authorizer", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/filters", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/mux", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/openapi", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/openapi/common", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/options", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/routes", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/routes/data/swagger", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/genericapiserver/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/healthz", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/httplog", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/api", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/runtime", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/stats", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/cadvisor", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/client", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/cm", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/cm/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/config", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/container", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/custommetrics", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/dockershim", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/dockershim/cm", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/dockershim/remote", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/dockertools", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/envvars", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/events", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/eviction", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/images", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/kuberuntime", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/leaky", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/lifecycle", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/metrics", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/cni", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/exec", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/hairpin", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/hostport", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/network/kubenet", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/pleg", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/pod", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/prober", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/prober/results", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/qos", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/remote", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/rkt", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server/portforward", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server/remotecommand", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server/stats", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/server/streaming", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/status", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/sysctl", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/types", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/cache", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/csr", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/format", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/ioutils", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/queue", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/util/sliceutils", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volumemanager", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volumemanager/cache", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volumemanager/populator", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/kubelet/volumemanager/reconciler", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/labels", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/master", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/master/ports", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/master/thirdparty", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/probe", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/probe/exec", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/probe/http", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/probe/tcp", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy/config", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy/healthcheck", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy/iptables", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy/userspace", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/proxy/winuserspace", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/quota", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/quota/evaluator/core", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/quota/generic", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/quota/install", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/apps/petset", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/apps/petset/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/apps/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/authentication/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/authentication/tokenreview", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/authorization/localsubjectaccessreview", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/authorization/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/authorization/selfsubjectaccessreview", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/authorization/subjectaccessreview", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/authorization/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/autoscaling/horizontalpodautoscaler", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/autoscaling/horizontalpodautoscaler/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/autoscaling/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/batch/cronjob", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/batch/cronjob/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/batch/job", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/batch/job/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/batch/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/cachesize", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/certificates/certificates", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/certificates/certificates/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/certificates/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/componentstatus", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/configmap", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/configmap/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/controller", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/controller/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/endpoint", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/endpoint/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/event", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/event/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/limitrange", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/limitrange/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/namespace", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/namespace/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/node", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/node/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/node/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/persistentvolume", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/persistentvolume/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/persistentvolumeclaim", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/persistentvolumeclaim/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/pod", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/pod/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/pod/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/podtemplate", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/podtemplate/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/rangeallocation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/resourcequota", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/resourcequota/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/secret", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/secret/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/service", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/service/allocator", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/service/allocator/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/service/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/service/ipallocator", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/service/ipallocator/controller", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/service/portallocator", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/serviceaccount", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/core/serviceaccount/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/controller/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/daemonset", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/daemonset/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/deployment", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/deployment/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/ingress", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/ingress/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/networkpolicy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/networkpolicy/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/replicaset", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/replicaset/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/thirdpartyresource", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/thirdpartyresource/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/thirdpartyresourcedata", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/extensions/thirdpartyresourcedata/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/generic", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/generic/registry", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/generic/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/policy/poddisruptionbudget", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/policy/poddisruptionbudget/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/policy/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/clusterrole", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/clusterrole/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/clusterrole/policybased", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/clusterrolebinding", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/clusterrolebinding/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/clusterrolebinding/policybased", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/role", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/role/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/role/policybased", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/rolebinding", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/rolebinding/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/rbac/rolebinding/policybased", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/storage/rest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/storage/storageclass", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/registry/storage/storageclass/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/routes", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/json", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/protobuf", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/recognizer", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/streaming", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/runtime/serializer/versioning", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/apparmor", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/apparmor", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/capabilities", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/group", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/seccomp", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/selinux", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/sysctl", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/user", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/security/podsecuritypolicy/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/securitycontext", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/selection", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/serviceaccount", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/ssh", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd/metrics", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/etcd3", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/storagebackend", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/storage/storagebackend/factory", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/types", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/async", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/bandwidth", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/cache", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/cert", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/chmod", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/chown", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/clock", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/config", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/configz", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/dbus", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/diff", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/ebtables", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/env", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/errors", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/exec", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/flag", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/flock", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/flowcontrol", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/flushwriter", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/framer", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/goroutinemap", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/goroutinemap/exponentialbackoff", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/hash", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/homedir", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/httpstream", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/httpstream/spdy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/integer", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/interrupt", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/intstr", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/io", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/iptables", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/json", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/jsonpath", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/keymutex", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/labels", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/limitwriter", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/maps", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/metrics", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/mount", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/net", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/net/sets", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/netsh", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/node", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/oom", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/parsers", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/pod", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/procfs", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/proxy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/rand", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/replicaset", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/resourcecontainer", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/rlimit", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/runtime", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/selinux", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/sets", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/slice", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/strategicpatch", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/strings", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/sysctl", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/system", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/term", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/uuid", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/validation/field", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/wait", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/workqueue", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/workqueue/prometheus", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/wsstream", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/util/yaml", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/version", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/aws_ebs", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/azure_dd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/azure_file", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/cephfs", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/cinder", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/configmap", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/downwardapi", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/empty_dir", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/fc", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/flexvolume", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/flocker", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/gce_pd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/git_repo", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/glusterfs", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/host_path", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/iscsi", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/nfs", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/photon_pd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/quobyte", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/rbd", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/secret", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util/nestedpendingoperations", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util/operationexecutor", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util/types", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/util/volumehelper", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/volume/vsphere_volume", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/watch", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/pkg/watch/versioned", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/cmd/kube-scheduler/app", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/cmd/kube-scheduler/app/options", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/admit", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/alwayspullimages", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/antiaffinity", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/deny", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/exec", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/gc", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/imagepolicy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/initialresources", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/limitranger", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/namespace/autoprovision", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/namespace/exists", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/namespace/lifecycle", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/persistentvolume/label", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/podnodeselector", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/resourcequota", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/security/podsecuritypolicy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/securitycontext/scdeny", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/serviceaccount", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/admission/storageclass/default", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/password/keystone", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/password/passwordfile", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/anonymous", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/basicauth", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/headerrequest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/union", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/request/x509", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/anytoken", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/oidc", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/tokenfile", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authenticator/token/webhook", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authorizer/rbac", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authorizer/rbac/bootstrappolicy", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/auth/authorizer/webhook", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/client/auth", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/client/auth/gcp", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/client/auth/oidc", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/predicates", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithmprovider", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/algorithmprovider/defaults", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/api", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/api/latest", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/api/v1", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/api/validation", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/factory", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/metrics", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/scheduler/schedulercache", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/plugin/pkg/webhook", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/third_party/forked/golang/expansion", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/third_party/forked/golang/json", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/third_party/forked/golang/netutil", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/third_party/forked/golang/reflect", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" }, { "ImportPath": "k8s.io/kubernetes/third_party/forked/golang/template", - "Comment": "v1.5.1", - "Rev": "82450d03cb057bab0950214ef122b67c83fb11df" + "Comment": "v1.5.2", + "Rev": "08e099554f3c31f6e6f07b448ab3ed78d0520507" } ] } diff --git a/docs/minikube_start.md b/docs/minikube_start.md index 50bf0e817d..7b59aecb40 100644 --- a/docs/minikube_start.md +++ b/docs/minikube_start.md @@ -29,7 +29,7 @@ minikube start --iso-url string Location of the minikube iso (default "https://storage.googleapis.com/minikube/iso/minikube-v1.0.3.iso") --keep-context This will keep the existing kubectl context and will create a minikube context. --kubernetes-version string The kubernetes version that the minikube VM will use (ex: v1.2.3) - OR a URI which contains a localkube binary (ex: https://storage.googleapis.com/minikube/k8sReleases/v1.3.0/localkube-linux-amd64) (default "v1.5.1") + OR a URI which contains a localkube binary (ex: https://storage.googleapis.com/minikube/k8sReleases/v1.3.0/localkube-linux-amd64) (default "v1.5.2") --kvm-network string The KVM network name. (only supported with KVM driver) (default "default") --memory int Amount of RAM allocated to the minikube VM (default 2048) --network-plugin string The name of the network plugin diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/availabilitysets.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/availabilitysets.go index 013a6af9ac..34a4d2df82 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/availabilitysets.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/availabilitysets.go @@ -21,6 +21,7 @@ package compute import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) @@ -41,12 +42,19 @@ func NewAvailabilitySetsClientWithBaseURI(baseURI string, subscriptionID string) return AvailabilitySetsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the operation to create or update the availability set. +// CreateOrUpdate create or update an availability set. // -// resourceGroupName is the name of the resource group. name is parameters -// supplied to the Create Availability Set operation. parameters is -// parameters supplied to the Create Availability Set operation. +// resourceGroupName is the name of the resource group. name is the name of +// the availability set. parameters is parameters supplied to the Create +// Availability Set operation. func (client AvailabilitySetsClient) CreateOrUpdate(resourceGroupName string, name string, parameters AvailabilitySet) (result AvailabilitySet, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.AvailabilitySetProperties", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.AvailabilitySetProperties.Statuses", Name: validation.ReadOnly, Rule: true, Chain: nil}}}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.AvailabilitySetsClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, name, parameters) if err != nil { return result, autorest.NewErrorWithError(err, "compute.AvailabilitySetsClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -107,7 +115,7 @@ func (client AvailabilitySetsClient) CreateOrUpdateResponder(resp *http.Response return } -// Delete the operation to delete the availability set. +// Delete delete an availability set. // // resourceGroupName is the name of the resource group. availabilitySetName is // the name of the availability set. @@ -169,7 +177,7 @@ func (client AvailabilitySetsClient) DeleteResponder(resp *http.Response) (resul return } -// Get the operation to get the availability set. +// Get retrieves information about an availability set. // // resourceGroupName is the name of the resource group. availabilitySetName is // the name of the availability set. @@ -232,7 +240,7 @@ func (client AvailabilitySetsClient) GetResponder(resp *http.Response) (result A return } -// List the operation to list the availability sets. +// List lists all availability sets in a resource group. // // resourceGroupName is the name of the resource group. func (client AvailabilitySetsClient) List(resourceGroupName string) (result AvailabilitySetListResult, err error) { diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/models.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/models.go index e38a3a1222..13dbe637c4 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/models.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/models.go @@ -365,15 +365,15 @@ type APIErrorBase struct { Message *string `json:"message,omitempty"` } -// AvailabilitySet is create or update Availability Set parameters. +// AvailabilitySet is create or update availability set parameters. type AvailabilitySet struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *AvailabilitySetProperties `json:"properties,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *AvailabilitySetProperties `json:"properties,omitempty"` } // AvailabilitySetListResult is the List Availability Set operation response. @@ -477,7 +477,7 @@ type KeyVaultSecretReference struct { SourceVault *SubResource `json:"sourceVault,omitempty"` } -// LinuxConfiguration is describes Windows Configuration of the OS Profile. +// LinuxConfiguration is describes Windows configuration of the OS Profile. type LinuxConfiguration struct { DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty"` SSH *SSHConfiguration `json:"ssh,omitempty"` @@ -522,8 +522,8 @@ type LongRunningOperationProperties struct { // NetworkInterfaceReference is describes a network interface reference. type NetworkInterfaceReference struct { - ID *string `json:"id,omitempty"` - Properties *NetworkInterfaceReferenceProperties `json:"properties,omitempty"` + ID *string `json:"id,omitempty"` + *NetworkInterfaceReferenceProperties `json:"properties,omitempty"` } // NetworkInterfaceReferenceProperties is describes a network interface @@ -581,7 +581,7 @@ type PurchasePlan struct { Product *string `json:"product,omitempty"` } -// Resource is +// Resource is the resource model definition. type Resource struct { ID *string `json:"id,omitempty"` Name *string `json:"name,omitempty"` @@ -661,15 +661,15 @@ type VirtualHardDisk struct { // VirtualMachine is describes a Virtual Machine. type VirtualMachine struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Plan *Plan `json:"plan,omitempty"` - Properties *VirtualMachineProperties `json:"properties,omitempty"` - Resources *[]VirtualMachineExtension `json:"resources,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + Plan *Plan `json:"plan,omitempty"` + *VirtualMachineProperties `json:"properties,omitempty"` + Resources *[]VirtualMachineExtension `json:"resources,omitempty"` } // VirtualMachineAgentInstanceView is the instance view of the VM Agent @@ -689,9 +689,9 @@ type VirtualMachineCaptureParameters struct { // VirtualMachineCaptureResult is resource Id. type VirtualMachineCaptureResult struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Properties *VirtualMachineCaptureResultProperties `json:"properties,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + *VirtualMachineCaptureResultProperties `json:"properties,omitempty"` } // VirtualMachineCaptureResultProperties is compute-specific operation @@ -702,13 +702,13 @@ type VirtualMachineCaptureResultProperties struct { // VirtualMachineExtension is describes a Virtual Machine Extension. type VirtualMachineExtension struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *VirtualMachineExtensionProperties `json:"properties,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *VirtualMachineExtensionProperties `json:"properties,omitempty"` } // VirtualMachineExtensionHandlerInstanceView is the instance view of a @@ -721,13 +721,13 @@ type VirtualMachineExtensionHandlerInstanceView struct { // VirtualMachineExtensionImage is describes a Virtual Machine Extension Image. type VirtualMachineExtensionImage struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *VirtualMachineExtensionImageProperties `json:"properties,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *VirtualMachineExtensionImageProperties `json:"properties,omitempty"` } // VirtualMachineExtensionImageProperties is describes the properties of a @@ -766,12 +766,12 @@ type VirtualMachineExtensionProperties struct { // VirtualMachineImage is describes a Virtual Machine Image. type VirtualMachineImage struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *VirtualMachineImageProperties `json:"properties,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *VirtualMachineImageProperties `json:"properties,omitempty"` } // VirtualMachineImageProperties is describes the properties of a Virtual @@ -837,22 +837,22 @@ type VirtualMachineProperties struct { // VirtualMachineScaleSet is describes a Virtual Machine Scale Set. type VirtualMachineScaleSet struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Sku *Sku `json:"sku,omitempty"` - Properties *VirtualMachineScaleSetProperties `json:"properties,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + Sku *Sku `json:"sku,omitempty"` + *VirtualMachineScaleSetProperties `json:"properties,omitempty"` } // VirtualMachineScaleSetExtension is describes a Virtual Machine Scale Set // Extension. type VirtualMachineScaleSetExtension struct { - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Properties *VirtualMachineScaleSetExtensionProperties `json:"properties,omitempty"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + *VirtualMachineScaleSetExtensionProperties `json:"properties,omitempty"` } // VirtualMachineScaleSetExtensionProfile is describes a virtual machine scale @@ -891,9 +891,9 @@ type VirtualMachineScaleSetInstanceViewStatusesSummary struct { // VirtualMachineScaleSetIPConfiguration is describes a virtual machine scale // set network profile's IP configuration. type VirtualMachineScaleSetIPConfiguration struct { - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Properties *VirtualMachineScaleSetIPConfigurationProperties `json:"properties,omitempty"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + *VirtualMachineScaleSetIPConfigurationProperties `json:"properties,omitempty"` } // VirtualMachineScaleSetIPConfigurationProperties is describes a virtual @@ -968,9 +968,9 @@ func (client VirtualMachineScaleSetListWithLinkResult) VirtualMachineScaleSetLis // VirtualMachineScaleSetNetworkConfiguration is describes a virtual machine // scale set network profile's network configurations. type VirtualMachineScaleSetNetworkConfiguration struct { - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Properties *VirtualMachineScaleSetNetworkConfigurationProperties `json:"properties,omitempty"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + *VirtualMachineScaleSetNetworkConfigurationProperties `json:"properties,omitempty"` } // VirtualMachineScaleSetNetworkConfigurationProperties is describes a virtual @@ -1015,7 +1015,7 @@ type VirtualMachineScaleSetProperties struct { UpgradePolicy *UpgradePolicy `json:"upgradePolicy,omitempty"` VirtualMachineProfile *VirtualMachineScaleSetVMProfile `json:"virtualMachineProfile,omitempty"` ProvisioningState *string `json:"provisioningState,omitempty"` - OverProvision *bool `json:"overProvision,omitempty"` + Overprovision *bool `json:"overprovision,omitempty"` } // VirtualMachineScaleSetSku is describes an available virtual machine scale @@ -1044,17 +1044,17 @@ type VirtualMachineScaleSetStorageProfile struct { // VirtualMachineScaleSetVM is describes a virtual machine scale set virtual // machine. type VirtualMachineScaleSetVM struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - InstanceID *string `json:"instanceId,omitempty"` - Sku *Sku `json:"sku,omitempty"` - Properties *VirtualMachineScaleSetVMProperties `json:"properties,omitempty"` - Plan *Plan `json:"plan,omitempty"` - Resources *[]VirtualMachineExtension `json:"resources,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + InstanceID *string `json:"instanceId,omitempty"` + Sku *Sku `json:"sku,omitempty"` + *VirtualMachineScaleSetVMProperties `json:"properties,omitempty"` + Plan *Plan `json:"plan,omitempty"` + Resources *[]VirtualMachineExtension `json:"resources,omitempty"` } // VirtualMachineScaleSetVMExtensionsSummary is extensions summary for virtual @@ -1064,14 +1064,14 @@ type VirtualMachineScaleSetVMExtensionsSummary struct { StatusesSummary *[]VirtualMachineStatusCodeCount `json:"statusesSummary,omitempty"` } -// VirtualMachineScaleSetVMInstanceIDs is specifies the list of virtual -// machine scale set instance IDs. +// VirtualMachineScaleSetVMInstanceIDs is specifies a list of virtual machine +// instance IDs from the VM scale set. type VirtualMachineScaleSetVMInstanceIDs struct { InstanceIds *[]string `json:"instanceIds,omitempty"` } -// VirtualMachineScaleSetVMInstanceRequiredIDs is specifies the list of -// virtual machine scale set instance IDs. +// VirtualMachineScaleSetVMInstanceRequiredIDs is specifies a list of virtual +// machine instance IDs from the VM scale set. type VirtualMachineScaleSetVMInstanceRequiredIDs struct { InstanceIds *[]string `json:"instanceIds,omitempty"` } diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/usageoperations.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/usageoperations.go index 922ae1d98d..5fb5bd6f55 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/usageoperations.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/usageoperations.go @@ -21,6 +21,7 @@ package compute import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) @@ -41,10 +42,18 @@ func NewUsageOperationsClientWithBaseURI(baseURI string, subscriptionID string) return UsageOperationsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// List lists compute usages for a subscription. +// List gets, for the specified location, the current compute resource usage +// information as well as the limits for compute resources under the +// subscription. // -// location is the location upon which resource usage is queried. +// location is the location for which resource usage is queried. func (client UsageOperationsClient) List(location string) (result ListUsagesResult, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: location, + Constraints: []validation.Constraint{{Target: "location", Name: validation.Pattern, Rule: `^[-\w\._]+$`, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.UsageOperationsClient", "List") + } + req, err := client.ListPreparer(location) if err != nil { return result, autorest.NewErrorWithError(err, "compute.UsageOperationsClient", "List", nil, "Failure preparing request") @@ -106,7 +115,7 @@ func (client UsageOperationsClient) ListResponder(resp *http.Response) (result L func (client UsageOperationsClient) ListNextResults(lastResults ListUsagesResult) (result ListUsagesResult, err error) { req, err := lastResults.ListUsagesResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "compute.UsageOperationsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "compute.UsageOperationsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -115,12 +124,12 @@ func (client UsageOperationsClient) ListNextResults(lastResults ListUsagesResult resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "compute.UsageOperationsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "compute.UsageOperationsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "compute.UsageOperationsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "compute.UsageOperationsClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/version.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/version.go index dffee825d1..3c4783ed6f 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/version.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/version.go @@ -23,9 +23,9 @@ import ( ) const ( - major = "3" - minor = "2" - patch = "0" + major = "7" + minor = "0" + patch = "1" // Always begin a "tag" with a dash (as per http://semver.org) tag = "-beta" semVerFormat = "%s.%s.%s%s" diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachineextensions.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachineextensions.go index 826687b045..d94a2b9683 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachineextensions.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachineextensions.go @@ -21,6 +21,7 @@ package compute import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) @@ -52,6 +53,13 @@ func NewVirtualMachineExtensionsClientWithBaseURI(baseURI string, subscriptionID // extensionParameters is parameters supplied to the Create Virtual Machine // Extension operation. func (client VirtualMachineExtensionsClient) CreateOrUpdate(resourceGroupName string, vmName string, vmExtensionName string, extensionParameters VirtualMachineExtension, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: extensionParameters, + Constraints: []validation.Constraint{{Target: "extensionParameters.VirtualMachineExtensionProperties", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "extensionParameters.VirtualMachineExtensionProperties.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}}}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.VirtualMachineExtensionsClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, vmName, vmExtensionName, extensionParameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "compute.VirtualMachineExtensionsClient", "CreateOrUpdate", nil, "Failure preparing request") diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachineimages.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachineimages.go index 50d9614602..db18777893 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachineimages.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachineimages.go @@ -43,6 +43,9 @@ func NewVirtualMachineImagesClientWithBaseURI(baseURI string, subscriptionID str // Get gets a virtual machine image. // +// location is the name of a supported Azure region. publisherName is a valid +// image publisher. offer is a valid image publisher offer. skus is a valid +// image SKU. version is a valid image SKU version. func (client VirtualMachineImagesClient) Get(location string, publisherName string, offer string, skus string, version string) (result VirtualMachineImage, err error) { req, err := client.GetPreparer(location, publisherName, offer, skus, version) if err != nil { @@ -105,9 +108,12 @@ func (client VirtualMachineImagesClient) GetResponder(resp *http.Response) (resu return } -// List gets a list of virtual machine images. +// List gets a list of all virtual machine image versions for the specified +// location, publisher, offer, and SKU. // -// filter is the filter to apply on the operation. +// location is the name of a supported Azure region. publisherName is a valid +// image publisher. offer is a valid image publisher offer. skus is a valid +// image SKU. filter is the filter to apply on the operation. func (client VirtualMachineImagesClient) List(location string, publisherName string, offer string, skus string, filter string, top *int32, orderby string) (result ListVirtualMachineImageResource, err error) { req, err := client.ListPreparer(location, publisherName, offer, skus, filter, top, orderby) if err != nil { @@ -178,8 +184,11 @@ func (client VirtualMachineImagesClient) ListResponder(resp *http.Response) (res return } -// ListOffers gets a list of virtual machine image offers. +// ListOffers gets a list of virtual machine image offers for the specified +// location and publisher. // +// location is the name of a supported Azure region. publisherName is a valid +// image publisher. func (client VirtualMachineImagesClient) ListOffers(location string, publisherName string) (result ListVirtualMachineImageResource, err error) { req, err := client.ListOffersPreparer(location, publisherName) if err != nil { @@ -239,8 +248,10 @@ func (client VirtualMachineImagesClient) ListOffersResponder(resp *http.Response return } -// ListPublishers gets a list of virtual machine image publishers. +// ListPublishers gets a list of virtual machine image publishers for the +// specified Azure location. // +// location is the name of a supported Azure region. func (client VirtualMachineImagesClient) ListPublishers(location string) (result ListVirtualMachineImageResource, err error) { req, err := client.ListPublishersPreparer(location) if err != nil { @@ -299,8 +310,11 @@ func (client VirtualMachineImagesClient) ListPublishersResponder(resp *http.Resp return } -// ListSkus gets a list of virtual machine image skus. +// ListSkus gets a list of virtual machine image SKUs for the specified +// location, publisher, and offer. // +// location is the name of a supported Azure region. publisherName is a valid +// image publisher. offer is a valid image publisher offer. func (client VirtualMachineImagesClient) ListSkus(location string, publisherName string, offer string) (result ListVirtualMachineImageResource, err error) { req, err := client.ListSkusPreparer(location, publisherName, offer) if err != nil { diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachines.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachines.go index a55c845de8..626319737c 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachines.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachines.go @@ -21,6 +21,7 @@ package compute import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) @@ -51,6 +52,14 @@ func NewVirtualMachinesClientWithBaseURI(baseURI string, subscriptionID string) // the virtual machine. parameters is parameters supplied to the Capture // Virtual Machine operation. func (client VirtualMachinesClient) Capture(resourceGroupName string, vmName string, parameters VirtualMachineCaptureParameters, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.VhdPrefix", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.DestinationContainerName", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.OverwriteVhds", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.VirtualMachinesClient", "Capture") + } + req, err := client.CapturePreparer(resourceGroupName, vmName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "Capture", nil, "Failure preparing request") @@ -121,6 +130,33 @@ func (client VirtualMachinesClient) CaptureResponder(resp *http.Response) (resul // the virtual machine. parameters is parameters supplied to the Create // Virtual Machine operation. func (client VirtualMachinesClient) CreateOrUpdate(resourceGroupName string, vmName string, parameters VirtualMachine, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.VirtualMachineProperties", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineProperties.StorageProfile", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.EncryptionSettings", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.EncryptionSettings.DiskEncryptionKey", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.EncryptionSettings.DiskEncryptionKey.SecretURL", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.EncryptionSettings.DiskEncryptionKey.SourceVault", Name: validation.Null, Rule: true, Chain: nil}, + }}, + {Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.EncryptionSettings.KeyEncryptionKey", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.EncryptionSettings.KeyEncryptionKey.KeyURL", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.EncryptionSettings.KeyEncryptionKey.SourceVault", Name: validation.Null, Rule: true, Chain: nil}, + }}, + }}, + {Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.Name", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.VirtualMachineProperties.StorageProfile.OsDisk.Vhd", Name: validation.Null, Rule: true, Chain: nil}, + }}, + }}, + {Target: "parameters.VirtualMachineProperties.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.VirtualMachineProperties.InstanceView", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.VirtualMachineProperties.VMID", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}, + {Target: "parameters.Resources", Name: validation.ReadOnly, Rule: true, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.VirtualMachinesClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, vmName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -182,9 +218,9 @@ func (client VirtualMachinesClient) CreateOrUpdateResponder(resp *http.Response) return } -// Deallocate shuts down the Virtual Machine and releases the compute -// resources. You are not billed for the compute resources that this Virtual -// Machine uses. This method may poll for completion. Polling can be canceled +// Deallocate shuts down the virtual machine and releases the compute +// resources. You are not billed for the compute resources that this virtual +// machine uses. This method may poll for completion. Polling can be canceled // by passing the cancel channel argument. The channel will be used to cancel // polling and any outstanding HTTP requests. // @@ -317,7 +353,7 @@ func (client VirtualMachinesClient) DeleteResponder(resp *http.Response) (result return } -// Generalize sets the state of the VM as Generalized. +// Generalize sets the state of the virtual machine to generalized. // // resourceGroupName is the name of the resource group. vmName is the name of // the virtual machine. @@ -379,7 +415,8 @@ func (client VirtualMachinesClient) GeneralizeResponder(resp *http.Response) (re return } -// Get the operation to get a virtual machine. +// Get retrieves information about the model view or the instance view of a +// virtual machine. // // resourceGroupName is the name of the resource group. vmName is the name of // the virtual machine. expand is the expand expression to apply on the @@ -446,7 +483,9 @@ func (client VirtualMachinesClient) GetResponder(resp *http.Response) (result Vi return } -// List the operation to list virtual machines under a resource group. +// List lists all of the virtual machines in the specified resource group. Use +// the nextLink property in the response to get the next page of virtual +// machines. // // resourceGroupName is the name of the resource group. func (client VirtualMachinesClient) List(resourceGroupName string) (result VirtualMachineListResult, err error) { @@ -511,7 +550,7 @@ func (client VirtualMachinesClient) ListResponder(resp *http.Response) (result V func (client VirtualMachinesClient) ListNextResults(lastResults VirtualMachineListResult) (result VirtualMachineListResult, err error) { req, err := lastResults.VirtualMachineListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -520,20 +559,20 @@ func (client VirtualMachinesClient) ListNextResults(lastResults VirtualMachineLi resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "List", resp, "Failure responding to next results request") } return } -// ListAll gets the list of Virtual Machines in the subscription. Use nextLink -// property in the response to get the next page of Virtual Machines. Do this -// till nextLink is not null to fetch all the Virtual Machines. +// ListAll lists all of the virtual machines in the specified subscription. +// Use the nextLink property in the response to get the next page of virtual +// machines. func (client VirtualMachinesClient) ListAll() (result VirtualMachineListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -595,7 +634,7 @@ func (client VirtualMachinesClient) ListAllResponder(resp *http.Response) (resul func (client VirtualMachinesClient) ListAllNextResults(lastResults VirtualMachineListResult) (result VirtualMachineListResult, err error) { req, err := lastResults.VirtualMachineListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -604,19 +643,19 @@ func (client VirtualMachinesClient) ListAllNextResults(lastResults VirtualMachin resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "compute.VirtualMachinesClient", "ListAll", resp, "Failure responding to next results request") } return } -// ListAvailableSizes lists all available virtual machine sizes it can be -// resized to for a virtual machine. +// ListAvailableSizes lists all available virtual machine sizes to which the +// specified virtual machine can be resized. // // resourceGroupName is the name of the resource group. vmName is the name of // the virtual machine. @@ -679,10 +718,12 @@ func (client VirtualMachinesClient) ListAvailableSizesResponder(resp *http.Respo return } -// PowerOff the operation to power off (stop) a virtual machine. This method -// may poll for completion. Polling can be canceled by passing the cancel -// channel argument. The channel will be used to cancel polling and any -// outstanding HTTP requests. +// PowerOff the operation to power off (stop) a virtual machine. The virtual +// machine can be restarted with the same provisioned resources. You are +// still charged for this virtual machine. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. vmName is the name of // the virtual machine. diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinescalesets.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinescalesets.go index 649e008ee6..648e9fa4ae 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinescalesets.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinescalesets.go @@ -21,6 +21,7 @@ package compute import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) @@ -41,16 +42,28 @@ func NewVirtualMachineScaleSetsClientWithBaseURI(baseURI string, subscriptionID return VirtualMachineScaleSetsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate allows you to create or update a virtual machine scale set -// by providing parameters or a path to pre-configured parameter file. This -// method may poll for completion. Polling can be canceled by passing the -// cancel channel argument. The channel will be used to cancel polling and -// any outstanding HTTP requests. +// CreateOrUpdate create or update a VM scale set. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // -// resourceGroupName is the name of the resource group. name is parameters -// supplied to the Create Virtual Machine Scale Set operation. parameters is -// parameters supplied to the Create Virtual Machine Scale Set operation. +// resourceGroupName is the name of the resource group. name is the name of +// the VM scale set to create or update. parameters is the scale set object. func (client VirtualMachineScaleSetsClient) CreateOrUpdate(resourceGroupName string, name string, parameters VirtualMachineScaleSet, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.VirtualMachineScaleSetProperties", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineScaleSetProperties.VirtualMachineProfile", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineScaleSetProperties.VirtualMachineProfile.StorageProfile", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineScaleSetProperties.VirtualMachineProfile.StorageProfile.OsDisk", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualMachineScaleSetProperties.VirtualMachineProfile.StorageProfile.OsDisk.Name", Name: validation.Null, Rule: true, Chain: nil}}}, + }}, + }}, + {Target: "parameters.VirtualMachineScaleSetProperties.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.VirtualMachineScaleSetsClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, name, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -112,16 +125,16 @@ func (client VirtualMachineScaleSetsClient) CreateOrUpdateResponder(resp *http.R return } -// Deallocate allows you to deallocate virtual machines in a virtual machine -// scale set. Shuts down the virtual machines and releases the compute -// resources. You are not billed for the compute resources that this virtual -// machine scale set uses. This method may poll for completion. Polling can -// be canceled by passing the cancel channel argument. The channel will be -// used to cancel polling and any outstanding HTTP requests. +// Deallocate deallocates specific virtual machines in a VM scale set. Shuts +// down the virtual machines and releases the compute resources. You are not +// billed for the compute resources that this virtual machine scale set +// deallocates. This method may poll for completion. Polling can be canceled +// by passing the cancel channel argument. The channel will be used to cancel +// polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. vmInstanceIDs is the list of -// virtual machine scale set instance IDs. +// name of the VM scale set. vmInstanceIDs is a list of virtual machine +// instance IDs from the VM scale set. func (client VirtualMachineScaleSetsClient) Deallocate(resourceGroupName string, vmScaleSetName string, vmInstanceIDs *VirtualMachineScaleSetVMInstanceIDs, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.DeallocatePreparer(resourceGroupName, vmScaleSetName, vmInstanceIDs, cancel) if err != nil { @@ -187,13 +200,12 @@ func (client VirtualMachineScaleSetsClient) DeallocateResponder(resp *http.Respo return } -// Delete allows you to delete a virtual machine scale set. This method may -// poll for completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// Delete deletes a VM scale set. This method may poll for completion. Polling +// can be canceled by passing the cancel channel argument. The channel will +// be used to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. +// name of the VM scale set. func (client VirtualMachineScaleSetsClient) Delete(resourceGroupName string, vmScaleSetName string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.DeletePreparer(resourceGroupName, vmScaleSetName, cancel) if err != nil { @@ -254,15 +266,21 @@ func (client VirtualMachineScaleSetsClient) DeleteResponder(resp *http.Response) return } -// DeleteInstances allows you to delete virtual machines in a virtual machine -// scale set. This method may poll for completion. Polling can be canceled by -// passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// DeleteInstances deletes virtual machines in a VM scale set. This method may +// poll for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. vmInstanceIDs is the list of -// virtual machine scale set instance IDs. +// name of the VM scale set. vmInstanceIDs is a list of virtual machine +// instance IDs from the VM scale set. func (client VirtualMachineScaleSetsClient) DeleteInstances(resourceGroupName string, vmScaleSetName string, vmInstanceIDs VirtualMachineScaleSetVMInstanceRequiredIDs, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: vmInstanceIDs, + Constraints: []validation.Constraint{{Target: "vmInstanceIDs.InstanceIds", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.VirtualMachineScaleSetsClient", "DeleteInstances") + } + req, err := client.DeleteInstancesPreparer(resourceGroupName, vmScaleSetName, vmInstanceIDs, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "DeleteInstances", nil, "Failure preparing request") @@ -327,7 +345,7 @@ func (client VirtualMachineScaleSetsClient) DeleteInstancesResponder(resp *http. // Get display information about a virtual machine scale set. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. +// name of the VM scale set. func (client VirtualMachineScaleSetsClient) Get(resourceGroupName string, vmScaleSetName string) (result VirtualMachineScaleSet, err error) { req, err := client.GetPreparer(resourceGroupName, vmScaleSetName) if err != nil { @@ -387,10 +405,10 @@ func (client VirtualMachineScaleSetsClient) GetResponder(resp *http.Response) (r return } -// GetInstanceView displays status of a virtual machine scale set instance. +// GetInstanceView gets the status of a VM scale set instance. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. +// name of the VM scale set. func (client VirtualMachineScaleSetsClient) GetInstanceView(resourceGroupName string, vmScaleSetName string) (result VirtualMachineScaleSetInstanceView, err error) { req, err := client.GetInstanceViewPreparer(resourceGroupName, vmScaleSetName) if err != nil { @@ -450,7 +468,7 @@ func (client VirtualMachineScaleSetsClient) GetInstanceViewResponder(resp *http. return } -// List lists all virtual machine scale sets under a resource group. +// List gets a list of all VM scale sets under a resource group. // // resourceGroupName is the name of the resource group. func (client VirtualMachineScaleSetsClient) List(resourceGroupName string) (result VirtualMachineScaleSetListResult, err error) { @@ -515,7 +533,7 @@ func (client VirtualMachineScaleSetsClient) ListResponder(resp *http.Response) ( func (client VirtualMachineScaleSetsClient) ListNextResults(lastResults VirtualMachineScaleSetListResult) (result VirtualMachineScaleSetListResult, err error) { req, err := lastResults.VirtualMachineScaleSetListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -524,21 +542,21 @@ func (client VirtualMachineScaleSetsClient) ListNextResults(lastResults VirtualM resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "List", resp, "Failure responding to next results request") } return } -// ListAll lists all Virtual Machine Scale Sets in the subscription. Use -// nextLink property in the response to get the next page of Virtual Machine -// Scale Sets. Do this till nextLink is not null to fetch all the Virtual -// Machine Scale Sets. +// ListAll gets a list of all VM Scale Sets in the subscription, regardless of +// the associated resource group. Use nextLink property in the response to +// get the next page of VM Scale Sets. Do this till nextLink is not null to +// fetch all the VM Scale Sets. func (client VirtualMachineScaleSetsClient) ListAll() (result VirtualMachineScaleSetListWithLinkResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -600,7 +618,7 @@ func (client VirtualMachineScaleSetsClient) ListAllResponder(resp *http.Response func (client VirtualMachineScaleSetsClient) ListAllNextResults(lastResults VirtualMachineScaleSetListWithLinkResult) (result VirtualMachineScaleSetListWithLinkResult, err error) { req, err := lastResults.VirtualMachineScaleSetListWithLinkResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -609,23 +627,22 @@ func (client VirtualMachineScaleSetsClient) ListAllNextResults(lastResults Virtu resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListAll", resp, "Failure responding to next results request") } return } -// ListSkus displays available skus for your virtual machine scale set -// including the minimum and maximum vm instances allowed for a particular -// sku. +// ListSkus gets a list of SKUs available for your VM scale set, including the +// minimum and maximum VM instances allowed for each SKU. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. +// name of the VM scale set. func (client VirtualMachineScaleSetsClient) ListSkus(resourceGroupName string, vmScaleSetName string) (result VirtualMachineScaleSetListSkusResult, err error) { req, err := client.ListSkusPreparer(resourceGroupName, vmScaleSetName) if err != nil { @@ -689,7 +706,7 @@ func (client VirtualMachineScaleSetsClient) ListSkusResponder(resp *http.Respons func (client VirtualMachineScaleSetsClient) ListSkusNextResults(lastResults VirtualMachineScaleSetListSkusResult) (result VirtualMachineScaleSetListSkusResult, err error) { req, err := lastResults.VirtualMachineScaleSetListSkusResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListSkus", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListSkus", nil, "Failure preparing next results request") } if req == nil { return @@ -698,27 +715,27 @@ func (client VirtualMachineScaleSetsClient) ListSkusNextResults(lastResults Virt resp, err := client.ListSkusSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListSkus", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListSkus", resp, "Failure sending next results request") } result, err = client.ListSkusResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListSkus", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "ListSkus", resp, "Failure responding to next results request") } return } -// PowerOff allows you to power off (stop) virtual machines in a virtual -// machine scale set. Note that resources are still attached and you are -// getting charged for the resources. Use deallocate to release resources. +// PowerOff power off (stop) one or more virtual machines in a VM scale set. +// Note that resources are still attached and you are getting charged for the +// resources. Instead, use deallocate to release resources and avoid charges. // This method may poll for completion. Polling can be canceled by passing // the cancel channel argument. The channel will be used to cancel polling // and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. vmInstanceIDs is the list of -// virtual machine scale set instance IDs. +// name of the VM scale set. vmInstanceIDs is a list of virtual machine +// instance IDs from the VM scale set. func (client VirtualMachineScaleSetsClient) PowerOff(resourceGroupName string, vmScaleSetName string, vmInstanceIDs *VirtualMachineScaleSetVMInstanceIDs, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.PowerOffPreparer(resourceGroupName, vmScaleSetName, vmInstanceIDs, cancel) if err != nil { @@ -784,14 +801,13 @@ func (client VirtualMachineScaleSetsClient) PowerOffResponder(resp *http.Respons return } -// Reimage allows you to re-image(update the version of the installed -// operating system) virtual machines in a virtual machine scale set. This -// method may poll for completion. Polling can be canceled by passing the -// cancel channel argument. The channel will be used to cancel polling and -// any outstanding HTTP requests. +// Reimage reimages (upgrade the operating system) one or more virtual +// machines in a VM scale set. This method may poll for completion. Polling +// can be canceled by passing the cancel channel argument. The channel will +// be used to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. +// name of the VM scale set. func (client VirtualMachineScaleSetsClient) Reimage(resourceGroupName string, vmScaleSetName string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.ReimagePreparer(resourceGroupName, vmScaleSetName, cancel) if err != nil { @@ -852,14 +868,14 @@ func (client VirtualMachineScaleSetsClient) ReimageResponder(resp *http.Response return } -// Restart allows you to restart virtual machines in a virtual machine scale -// set. This method may poll for completion. Polling can be canceled by -// passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// Restart restarts one or more virtual machines in a VM scale set. This +// method may poll for completion. Polling can be canceled by passing the +// cancel channel argument. The channel will be used to cancel polling and +// any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. vmInstanceIDs is the list of -// virtual machine scale set instance IDs. +// name of the VM scale set. vmInstanceIDs is a list of virtual machine +// instance IDs from the VM scale set. func (client VirtualMachineScaleSetsClient) Restart(resourceGroupName string, vmScaleSetName string, vmInstanceIDs *VirtualMachineScaleSetVMInstanceIDs, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.RestartPreparer(resourceGroupName, vmScaleSetName, vmInstanceIDs, cancel) if err != nil { @@ -925,14 +941,14 @@ func (client VirtualMachineScaleSetsClient) RestartResponder(resp *http.Response return } -// Start allows you to start virtual machines in a virtual machine scale set. -// This method may poll for completion. Polling can be canceled by passing -// the cancel channel argument. The channel will be used to cancel polling -// and any outstanding HTTP requests. +// Start starts one or more virtual machines in a VM scale set. This method +// may poll for completion. Polling can be canceled by passing the cancel +// channel argument. The channel will be used to cancel polling and any +// outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. vmInstanceIDs is the list of -// virtual machine scale set instance IDs. +// name of the VM scale set. vmInstanceIDs is a list of virtual machine +// instance IDs from the VM scale set. func (client VirtualMachineScaleSetsClient) Start(resourceGroupName string, vmScaleSetName string, vmInstanceIDs *VirtualMachineScaleSetVMInstanceIDs, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.StartPreparer(resourceGroupName, vmScaleSetName, vmInstanceIDs, cancel) if err != nil { @@ -998,15 +1014,21 @@ func (client VirtualMachineScaleSetsClient) StartResponder(resp *http.Response) return } -// UpdateInstances allows you to manually upgrade virtual machines in a -// virtual machine scale set. This method may poll for completion. Polling +// UpdateInstances upgrades one or more virtual machines to the latest SKU set +// in the VM scale set model. This method may poll for completion. Polling // can be canceled by passing the cancel channel argument. The channel will // be used to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. vmInstanceIDs is the list of -// virtual machine scale set instance IDs. +// name of the VM scale set. vmInstanceIDs is a list of virtual machine +// instance IDs from the VM scale set. func (client VirtualMachineScaleSetsClient) UpdateInstances(resourceGroupName string, vmScaleSetName string, vmInstanceIDs VirtualMachineScaleSetVMInstanceRequiredIDs, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: vmInstanceIDs, + Constraints: []validation.Constraint{{Target: "vmInstanceIDs.InstanceIds", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.VirtualMachineScaleSetsClient", "UpdateInstances") + } + req, err := client.UpdateInstancesPreparer(resourceGroupName, vmScaleSetName, vmInstanceIDs, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetsClient", "UpdateInstances", nil, "Failure preparing request") diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinescalesetvms.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinescalesetvms.go index 1db4a13600..f0b309510e 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinescalesetvms.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinescalesetvms.go @@ -41,16 +41,16 @@ func NewVirtualMachineScaleSetVMsClientWithBaseURI(baseURI string, subscriptionI return VirtualMachineScaleSetVMsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// Deallocate allows you to deallocate a virtual machine scale set virtual -// machine. Shuts down the virtual machine and releases the compute -// resources. You are not billed for the compute resources that this virtual -// machine uses. This method may poll for completion. Polling can be canceled -// by passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// Deallocate deallocates a specific virtual machine in a VM scale set. Shuts +// down the virtual machine and releases the compute resources it uses. You +// are not billed for the compute resources of this virtual machine once it +// is deallocated. This method may poll for completion. Polling can be +// canceled by passing the cancel channel argument. The channel will be used +// to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. instanceID is the instance id of -// the virtual machine. +// name of the VM scale set. instanceID is the instance ID of the virtual +// machine. func (client VirtualMachineScaleSetVMsClient) Deallocate(resourceGroupName string, vmScaleSetName string, instanceID string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.DeallocatePreparer(resourceGroupName, vmScaleSetName, instanceID, cancel) if err != nil { @@ -112,14 +112,14 @@ func (client VirtualMachineScaleSetVMsClient) DeallocateResponder(resp *http.Res return } -// Delete allows you to delete a virtual machine scale set. This method may -// poll for completion. Polling can be canceled by passing the cancel channel +// Delete deletes a virtual machine from a VM scale set. This method may poll +// for completion. Polling can be canceled by passing the cancel channel // argument. The channel will be used to cancel polling and any outstanding // HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. instanceID is the instance id of -// the virtual machine. +// name of the VM scale set. instanceID is the instance ID of the virtual +// machine. func (client VirtualMachineScaleSetVMsClient) Delete(resourceGroupName string, vmScaleSetName string, instanceID string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.DeletePreparer(resourceGroupName, vmScaleSetName, instanceID, cancel) if err != nil { @@ -181,11 +181,11 @@ func (client VirtualMachineScaleSetVMsClient) DeleteResponder(resp *http.Respons return } -// Get displays information about a virtual machine scale set virtual machine. +// Get gets a virtual machine from a VM scale set. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. instanceID is the instance id of -// the virtual machine. +// name of the VM scale set. instanceID is the instance ID of the virtual +// machine. func (client VirtualMachineScaleSetVMsClient) Get(resourceGroupName string, vmScaleSetName string, instanceID string) (result VirtualMachineScaleSetVM, err error) { req, err := client.GetPreparer(resourceGroupName, vmScaleSetName, instanceID) if err != nil { @@ -246,12 +246,11 @@ func (client VirtualMachineScaleSetVMsClient) GetResponder(resp *http.Response) return } -// GetInstanceView displays the status of a virtual machine scale set virtual -// machine. +// GetInstanceView gets the status of a virtual machine from a VM scale set. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. instanceID is the instance id of -// the virtual machine. +// name of the VM scale set. instanceID is the instance ID of the virtual +// machine. func (client VirtualMachineScaleSetVMsClient) GetInstanceView(resourceGroupName string, vmScaleSetName string, instanceID string) (result VirtualMachineScaleSetVMInstanceView, err error) { req, err := client.GetInstanceViewPreparer(resourceGroupName, vmScaleSetName, instanceID) if err != nil { @@ -312,13 +311,12 @@ func (client VirtualMachineScaleSetVMsClient) GetInstanceViewResponder(resp *htt return } -// List lists all virtual machines in a VM scale sets. +// List gets a list of all virtual machines in a VM scale sets. // // resourceGroupName is the name of the resource group. -// virtualMachineScaleSetName is the name of the virtual machine scale set. -// filter is the filter to apply on the operation. selectParameter is the -// list parameters. expand is the expand expression to apply on the -// operation. +// virtualMachineScaleSetName is the name of the VM scale set. filter is the +// filter to apply to the operation. selectParameter is the list parameters. +// expand is the expand expression to apply to the operation. func (client VirtualMachineScaleSetVMsClient) List(resourceGroupName string, virtualMachineScaleSetName string, filter string, selectParameter string, expand string) (result VirtualMachineScaleSetVMListResult, err error) { req, err := client.ListPreparer(resourceGroupName, virtualMachineScaleSetName, filter, selectParameter, expand) if err != nil { @@ -391,7 +389,7 @@ func (client VirtualMachineScaleSetVMsClient) ListResponder(resp *http.Response) func (client VirtualMachineScaleSetVMsClient) ListNextResults(lastResults VirtualMachineScaleSetVMListResult) (result VirtualMachineScaleSetVMListResult, err error) { req, err := lastResults.VirtualMachineScaleSetVMListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetVMsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetVMsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -400,25 +398,27 @@ func (client VirtualMachineScaleSetVMsClient) ListNextResults(lastResults Virtua resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetVMsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetVMsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetVMsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "compute.VirtualMachineScaleSetVMsClient", "List", resp, "Failure responding to next results request") } return } -// PowerOff allows you to power off (stop) a virtual machine in a VM scale -// set. This method may poll for completion. Polling can be canceled by -// passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// PowerOff power off (stop) a virtual machine in a VM scale set. Note that +// resources are still attached and you are getting charged for the +// resources. Instead, use deallocate to release resources and avoid charges. +// This method may poll for completion. Polling can be canceled by passing +// the cancel channel argument. The channel will be used to cancel polling +// and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. instanceID is the instance id of -// the virtual machine. +// name of the VM scale set. instanceID is the instance ID of the virtual +// machine. func (client VirtualMachineScaleSetVMsClient) PowerOff(resourceGroupName string, vmScaleSetName string, instanceID string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.PowerOffPreparer(resourceGroupName, vmScaleSetName, instanceID, cancel) if err != nil { @@ -480,15 +480,14 @@ func (client VirtualMachineScaleSetVMsClient) PowerOffResponder(resp *http.Respo return } -// Reimage allows you to re-image(update the version of the installed -// operating system) a virtual machine scale set instance. This method may -// poll for completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// Reimage reimages (upgrade the operating system) a specific virtual machine +// in a VM scale set. This method may poll for completion. Polling can be +// canceled by passing the cancel channel argument. The channel will be used +// to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. instanceID is the instance id of -// the virtual machine. +// name of the VM scale set. instanceID is the instance ID of the virtual +// machine. func (client VirtualMachineScaleSetVMsClient) Reimage(resourceGroupName string, vmScaleSetName string, instanceID string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.ReimagePreparer(resourceGroupName, vmScaleSetName, instanceID, cancel) if err != nil { @@ -550,14 +549,14 @@ func (client VirtualMachineScaleSetVMsClient) ReimageResponder(resp *http.Respon return } -// Restart allows you to restart a virtual machine in a VM scale set. This -// method may poll for completion. Polling can be canceled by passing the -// cancel channel argument. The channel will be used to cancel polling and -// any outstanding HTTP requests. +// Restart restarts a virtual machine in a VM scale set. This method may poll +// for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. instanceID is the instance id of -// the virtual machine. +// name of the VM scale set. instanceID is the instance ID of the virtual +// machine. func (client VirtualMachineScaleSetVMsClient) Restart(resourceGroupName string, vmScaleSetName string, instanceID string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.RestartPreparer(resourceGroupName, vmScaleSetName, instanceID, cancel) if err != nil { @@ -619,14 +618,14 @@ func (client VirtualMachineScaleSetVMsClient) RestartResponder(resp *http.Respon return } -// Start allows you to start a virtual machine in a VM scale set. This method -// may poll for completion. Polling can be canceled by passing the cancel -// channel argument. The channel will be used to cancel polling and any -// outstanding HTTP requests. +// Start starts a virtual machine in a VM scale set. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. vmScaleSetName is the -// name of the virtual machine scale set. instanceID is the instance id of -// the virtual machine. +// name of the VM scale set. instanceID is the instance ID of the virtual +// machine. func (client VirtualMachineScaleSetVMsClient) Start(resourceGroupName string, vmScaleSetName string, instanceID string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.StartPreparer(resourceGroupName, vmScaleSetName, instanceID, cancel) if err != nil { diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinesizes.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinesizes.go index 3cdeecedbf..507e9f157e 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinesizes.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/compute/virtualmachinesizes.go @@ -21,6 +21,7 @@ package compute import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) @@ -46,6 +47,12 @@ func NewVirtualMachineSizesClientWithBaseURI(baseURI string, subscriptionID stri // // location is the location upon which virtual-machine-sizes is queried. func (client VirtualMachineSizesClient) List(location string) (result VirtualMachineSizeListResult, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: location, + Constraints: []validation.Constraint{{Target: "location", Name: validation.Pattern, Rule: `^[-\w\._]+$`, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "compute.VirtualMachineSizesClient", "List") + } + req, err := client.ListPreparer(location) if err != nil { return result, autorest.NewErrorWithError(err, "compute.VirtualMachineSizesClient", "List", nil, "Failure preparing request") diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/client.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/client.go new file mode 100644 index 0000000000..2257c451fb --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/client.go @@ -0,0 +1,57 @@ +// Package containerregistry implements the Azure ARM Containerregistry +// service API version 2016-06-27-preview. +// +package containerregistry + +// Copyright (c) Microsoft and contributors. All rights reserved. +// +// 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 +// 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. +// +// Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0 +// Changes may cause incorrect behavior and will be lost if the code is +// regenerated. + +import ( + "github.com/Azure/go-autorest/autorest" +) + +const ( + // APIVersion is the version of the Containerregistry + APIVersion = "2016-06-27-preview" + + // DefaultBaseURI is the default URI used for the service Containerregistry + DefaultBaseURI = "https://management.azure.com" +) + +// ManagementClient is the base client for Containerregistry. +type ManagementClient struct { + autorest.Client + BaseURI string + APIVersion string + SubscriptionID string +} + +// New creates an instance of the ManagementClient client. +func New(subscriptionID string) ManagementClient { + return NewWithBaseURI(DefaultBaseURI, subscriptionID) +} + +// NewWithBaseURI creates an instance of the ManagementClient client. +func NewWithBaseURI(baseURI string, subscriptionID string) ManagementClient { + return ManagementClient{ + Client: autorest.NewClientWithUserAgent(UserAgent()), + BaseURI: baseURI, + APIVersion: APIVersion, + SubscriptionID: subscriptionID, + } +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/models.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/models.go new file mode 100644 index 0000000000..ecf1ca8f64 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/models.go @@ -0,0 +1,118 @@ +package containerregistry + +// Copyright (c) Microsoft and contributors. All rights reserved. +// +// 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 +// 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. +// +// Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0 +// Changes may cause incorrect behavior and will be lost if the code is +// regenerated. + +import ( + "github.com/Azure/go-autorest/autorest" + "github.com/Azure/go-autorest/autorest/date" + "github.com/Azure/go-autorest/autorest/to" + "net/http" +) + +// Registry is an object that represents a container registry. +type Registry struct { + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *RegistryProperties `json:"properties,omitempty"` +} + +// RegistryCredentials is the result of a request to get the administrator +// login credentials for a container registry. +type RegistryCredentials struct { + autorest.Response `json:"-"` + Username *string `json:"username,omitempty"` + Password *string `json:"password,omitempty"` +} + +// RegistryListResult is the result of a request to list container registries. +type RegistryListResult struct { + autorest.Response `json:"-"` + Value *[]Registry `json:"value,omitempty"` + NextLink *string `json:"nextLink,omitempty"` +} + +// RegistryListResultPreparer prepares a request to retrieve the next set of results. It returns +// nil if no more results exist. +func (client RegistryListResult) RegistryListResultPreparer() (*http.Request, error) { + if client.NextLink == nil || len(to.String(client.NextLink)) <= 0 { + return nil, nil + } + return autorest.Prepare(&http.Request{}, + autorest.AsJSON(), + autorest.AsGet(), + autorest.WithBaseURL(to.String(client.NextLink))) +} + +// RegistryNameCheckRequest is a request to check whether the container +// registry name is available. +type RegistryNameCheckRequest struct { + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` +} + +// RegistryNameStatus is the result of a request to check the availability of +// a container registry name. +type RegistryNameStatus struct { + autorest.Response `json:"-"` + NameAvailable *bool `json:"nameAvailable,omitempty"` + Reason *string `json:"reason,omitempty"` + Message *string `json:"message,omitempty"` +} + +// RegistryProperties is the properties of a container registry. +type RegistryProperties struct { + LoginServer *string `json:"loginServer,omitempty"` + CreationDate *date.Time `json:"creationDate,omitempty"` + AdminUserEnabled *bool `json:"adminUserEnabled,omitempty"` + StorageAccount *StorageAccountProperties `json:"storageAccount,omitempty"` +} + +// RegistryPropertiesUpdateParameters is the parameters for updating the +// properties of a container registry. +type RegistryPropertiesUpdateParameters struct { + AdminUserEnabled *bool `json:"adminUserEnabled,omitempty"` + StorageAccount *StorageAccountProperties `json:"storageAccount,omitempty"` +} + +// RegistryUpdateParameters is the parameters for updating a container +// registry. +type RegistryUpdateParameters struct { + Tags *map[string]*string `json:"tags,omitempty"` + *RegistryPropertiesUpdateParameters `json:"properties,omitempty"` +} + +// Resource is an Azure resource. +type Resource struct { + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` +} + +// StorageAccountProperties is the properties of a storage account for a +// container registry. +type StorageAccountProperties struct { + Name *string `json:"name,omitempty"` + AccessKey *string `json:"accessKey,omitempty"` +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/registries.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/registries.go new file mode 100644 index 0000000000..c658cccf58 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/registries.go @@ -0,0 +1,685 @@ +package containerregistry + +// Copyright (c) Microsoft and contributors. All rights reserved. +// +// 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 +// 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. +// +// Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0 +// Changes may cause incorrect behavior and will be lost if the code is +// regenerated. + +import ( + "github.com/Azure/go-autorest/autorest" + "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" + "net/http" +) + +// RegistriesClient is the client for the Registries methods of the +// Containerregistry service. +type RegistriesClient struct { + ManagementClient +} + +// NewRegistriesClient creates an instance of the RegistriesClient client. +func NewRegistriesClient(subscriptionID string) RegistriesClient { + return NewRegistriesClientWithBaseURI(DefaultBaseURI, subscriptionID) +} + +// NewRegistriesClientWithBaseURI creates an instance of the RegistriesClient +// client. +func NewRegistriesClientWithBaseURI(baseURI string, subscriptionID string) RegistriesClient { + return RegistriesClient{NewWithBaseURI(baseURI, subscriptionID)} +} + +// CheckNameAvailability checks whether the container registry name is +// available for use. The name must contain only alphanumeric characters, be +// globally unique, and between 5 and 60 characters in length. +// +// registryNameCheckRequest is the object containing information for the +// availability request. +func (client RegistriesClient) CheckNameAvailability(registryNameCheckRequest RegistryNameCheckRequest) (result RegistryNameStatus, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: registryNameCheckRequest, + Constraints: []validation.Constraint{{Target: "registryNameCheckRequest.Name", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "registryNameCheckRequest.Type", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "containerregistry.RegistriesClient", "CheckNameAvailability") + } + + req, err := client.CheckNameAvailabilityPreparer(registryNameCheckRequest) + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "CheckNameAvailability", nil, "Failure preparing request") + } + + resp, err := client.CheckNameAvailabilitySender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "CheckNameAvailability", resp, "Failure sending request") + } + + result, err = client.CheckNameAvailabilityResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "CheckNameAvailability", resp, "Failure responding to request") + } + + return +} + +// CheckNameAvailabilityPreparer prepares the CheckNameAvailability request. +func (client RegistriesClient) CheckNameAvailabilityPreparer(registryNameCheckRequest RegistryNameCheckRequest) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsJSON(), + autorest.AsPost(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/checkNameAvailability", pathParameters), + autorest.WithJSON(registryNameCheckRequest), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// CheckNameAvailabilitySender sends the CheckNameAvailability request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) CheckNameAvailabilitySender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// CheckNameAvailabilityResponder handles the response to the CheckNameAvailability request. The method always +// closes the http.Response Body. +func (client RegistriesClient) CheckNameAvailabilityResponder(resp *http.Response) (result RegistryNameStatus, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} + +// CreateOrUpdate creates or updates a container registry with the specified +// parameters. +// +// resourceGroupName is the name of the resource group to which the container +// registry belongs. registryName is the name of the container registry. +// registry is the parameters for creating or updating a container registry. +func (client RegistriesClient) CreateOrUpdate(resourceGroupName string, registryName string, registry Registry) (result Registry, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: registry, + Constraints: []validation.Constraint{{Target: "registry.RegistryProperties", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "registry.RegistryProperties.StorageAccount", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "registry.RegistryProperties.StorageAccount.Name", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "registry.RegistryProperties.StorageAccount.AccessKey", Name: validation.Null, Rule: true, Chain: nil}, + }}, + {Target: "registry.RegistryProperties.LoginServer", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "registry.RegistryProperties.CreationDate", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "containerregistry.RegistriesClient", "CreateOrUpdate") + } + + req, err := client.CreateOrUpdatePreparer(resourceGroupName, registryName, registry) + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "CreateOrUpdate", nil, "Failure preparing request") + } + + resp, err := client.CreateOrUpdateSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "CreateOrUpdate", resp, "Failure sending request") + } + + result, err = client.CreateOrUpdateResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "CreateOrUpdate", resp, "Failure responding to request") + } + + return +} + +// CreateOrUpdatePreparer prepares the CreateOrUpdate request. +func (client RegistriesClient) CreateOrUpdatePreparer(resourceGroupName string, registryName string, registry Registry) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "registryName": autorest.Encode("path", registryName), + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsJSON(), + autorest.AsPut(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}", pathParameters), + autorest.WithJSON(registry), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// CreateOrUpdateSender sends the CreateOrUpdate request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) CreateOrUpdateSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// CreateOrUpdateResponder handles the response to the CreateOrUpdate request. The method always +// closes the http.Response Body. +func (client RegistriesClient) CreateOrUpdateResponder(resp *http.Response) (result Registry, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} + +// Delete deletes a container registry. +// +// resourceGroupName is the name of the resource group to which the container +// registry belongs. registryName is the name of the container registry. +func (client RegistriesClient) Delete(resourceGroupName string, registryName string) (result autorest.Response, err error) { + req, err := client.DeletePreparer(resourceGroupName, registryName) + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "Delete", nil, "Failure preparing request") + } + + resp, err := client.DeleteSender(req) + if err != nil { + result.Response = resp + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "Delete", resp, "Failure sending request") + } + + result, err = client.DeleteResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "Delete", resp, "Failure responding to request") + } + + return +} + +// DeletePreparer prepares the Delete request. +func (client RegistriesClient) DeletePreparer(resourceGroupName string, registryName string) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "registryName": autorest.Encode("path", registryName), + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsDelete(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}", pathParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// DeleteSender sends the Delete request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) DeleteSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// DeleteResponder handles the response to the Delete request. The method always +// closes the http.Response Body. +func (client RegistriesClient) DeleteResponder(resp *http.Response) (result autorest.Response, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByClosing()) + result.Response = resp + return +} + +// GetCredentials gets the administrator login credentials for the specified +// container registry. +// +// resourceGroupName is the name of the resource group to which the container +// registry belongs. registryName is the name of the container registry. +func (client RegistriesClient) GetCredentials(resourceGroupName string, registryName string) (result RegistryCredentials, err error) { + req, err := client.GetCredentialsPreparer(resourceGroupName, registryName) + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "GetCredentials", nil, "Failure preparing request") + } + + resp, err := client.GetCredentialsSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "GetCredentials", resp, "Failure sending request") + } + + result, err = client.GetCredentialsResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "GetCredentials", resp, "Failure responding to request") + } + + return +} + +// GetCredentialsPreparer prepares the GetCredentials request. +func (client RegistriesClient) GetCredentialsPreparer(resourceGroupName string, registryName string) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "registryName": autorest.Encode("path", registryName), + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsPost(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/getCredentials", pathParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// GetCredentialsSender sends the GetCredentials request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) GetCredentialsSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// GetCredentialsResponder handles the response to the GetCredentials request. The method always +// closes the http.Response Body. +func (client RegistriesClient) GetCredentialsResponder(resp *http.Response) (result RegistryCredentials, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} + +// GetProperties gets the properties of the specified container registry. +// +// resourceGroupName is the name of the resource group to which the container +// registry belongs. registryName is the name of the container registry. +func (client RegistriesClient) GetProperties(resourceGroupName string, registryName string) (result Registry, err error) { + req, err := client.GetPropertiesPreparer(resourceGroupName, registryName) + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "GetProperties", nil, "Failure preparing request") + } + + resp, err := client.GetPropertiesSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "GetProperties", resp, "Failure sending request") + } + + result, err = client.GetPropertiesResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "GetProperties", resp, "Failure responding to request") + } + + return +} + +// GetPropertiesPreparer prepares the GetProperties request. +func (client RegistriesClient) GetPropertiesPreparer(resourceGroupName string, registryName string) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "registryName": autorest.Encode("path", registryName), + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsGet(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}", pathParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// GetPropertiesSender sends the GetProperties request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) GetPropertiesSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// GetPropertiesResponder handles the response to the GetProperties request. The method always +// closes the http.Response Body. +func (client RegistriesClient) GetPropertiesResponder(resp *http.Response) (result Registry, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} + +// List lists all the available container registries under the specified +// subscription. +func (client RegistriesClient) List() (result RegistryListResult, err error) { + req, err := client.ListPreparer() + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "List", nil, "Failure preparing request") + } + + resp, err := client.ListSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "List", resp, "Failure sending request") + } + + result, err = client.ListResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "List", resp, "Failure responding to request") + } + + return +} + +// ListPreparer prepares the List request. +func (client RegistriesClient) ListPreparer() (*http.Request, error) { + pathParameters := map[string]interface{}{ + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsGet(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/providers/Microsoft.ContainerRegistry/registries", pathParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// ListSender sends the List request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) ListSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// ListResponder handles the response to the List request. The method always +// closes the http.Response Body. +func (client RegistriesClient) ListResponder(resp *http.Response) (result RegistryListResult, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} + +// ListNextResults retrieves the next set of results, if any. +func (client RegistriesClient) ListNextResults(lastResults RegistryListResult) (result RegistryListResult, err error) { + req, err := lastResults.RegistryListResultPreparer() + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "List", nil, "Failure preparing next results request") + } + if req == nil { + return + } + + resp, err := client.ListSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "List", resp, "Failure sending next results request") + } + + result, err = client.ListResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "List", resp, "Failure responding to next results request") + } + + return +} + +// ListByResourceGroup lists all the available container registries under the +// specified resource group. +// +// resourceGroupName is the name of the resource group to which the container +// registry belongs. +func (client RegistriesClient) ListByResourceGroup(resourceGroupName string) (result RegistryListResult, err error) { + req, err := client.ListByResourceGroupPreparer(resourceGroupName) + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "ListByResourceGroup", nil, "Failure preparing request") + } + + resp, err := client.ListByResourceGroupSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "ListByResourceGroup", resp, "Failure sending request") + } + + result, err = client.ListByResourceGroupResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "ListByResourceGroup", resp, "Failure responding to request") + } + + return +} + +// ListByResourceGroupPreparer prepares the ListByResourceGroup request. +func (client RegistriesClient) ListByResourceGroupPreparer(resourceGroupName string) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsGet(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries", pathParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// ListByResourceGroupSender sends the ListByResourceGroup request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) ListByResourceGroupSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// ListByResourceGroupResponder handles the response to the ListByResourceGroup request. The method always +// closes the http.Response Body. +func (client RegistriesClient) ListByResourceGroupResponder(resp *http.Response) (result RegistryListResult, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} + +// ListByResourceGroupNextResults retrieves the next set of results, if any. +func (client RegistriesClient) ListByResourceGroupNextResults(lastResults RegistryListResult) (result RegistryListResult, err error) { + req, err := lastResults.RegistryListResultPreparer() + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "ListByResourceGroup", nil, "Failure preparing next results request") + } + if req == nil { + return + } + + resp, err := client.ListByResourceGroupSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "ListByResourceGroup", resp, "Failure sending next results request") + } + + result, err = client.ListByResourceGroupResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "ListByResourceGroup", resp, "Failure responding to next results request") + } + + return +} + +// RegenerateCredentials regenerates the administrator login credentials for +// the specified container registry. +// +// resourceGroupName is the name of the resource group to which the container +// registry belongs. registryName is the name of the container registry. +func (client RegistriesClient) RegenerateCredentials(resourceGroupName string, registryName string) (result RegistryCredentials, err error) { + req, err := client.RegenerateCredentialsPreparer(resourceGroupName, registryName) + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "RegenerateCredentials", nil, "Failure preparing request") + } + + resp, err := client.RegenerateCredentialsSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "RegenerateCredentials", resp, "Failure sending request") + } + + result, err = client.RegenerateCredentialsResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "RegenerateCredentials", resp, "Failure responding to request") + } + + return +} + +// RegenerateCredentialsPreparer prepares the RegenerateCredentials request. +func (client RegistriesClient) RegenerateCredentialsPreparer(resourceGroupName string, registryName string) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "registryName": autorest.Encode("path", registryName), + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsPost(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}/regenerateCredentials", pathParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// RegenerateCredentialsSender sends the RegenerateCredentials request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) RegenerateCredentialsSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// RegenerateCredentialsResponder handles the response to the RegenerateCredentials request. The method always +// closes the http.Response Body. +func (client RegistriesClient) RegenerateCredentialsResponder(resp *http.Response) (result RegistryCredentials, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} + +// Update updates a container registry with the specified parameters. +// +// resourceGroupName is the name of the resource group to which the container +// registry belongs. registryName is the name of the container registry. +// registryUpdateParameters is the parameters for updating a container +// registry. +func (client RegistriesClient) Update(resourceGroupName string, registryName string, registryUpdateParameters RegistryUpdateParameters) (result Registry, err error) { + req, err := client.UpdatePreparer(resourceGroupName, registryName, registryUpdateParameters) + if err != nil { + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "Update", nil, "Failure preparing request") + } + + resp, err := client.UpdateSender(req) + if err != nil { + result.Response = autorest.Response{Response: resp} + return result, autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "Update", resp, "Failure sending request") + } + + result, err = client.UpdateResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "containerregistry.RegistriesClient", "Update", resp, "Failure responding to request") + } + + return +} + +// UpdatePreparer prepares the Update request. +func (client RegistriesClient) UpdatePreparer(resourceGroupName string, registryName string, registryUpdateParameters RegistryUpdateParameters) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "registryName": autorest.Encode("path", registryName), + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + + preparer := autorest.CreatePreparer( + autorest.AsJSON(), + autorest.AsPatch(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerRegistry/registries/{registryName}", pathParameters), + autorest.WithJSON(registryUpdateParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{}) +} + +// UpdateSender sends the Update request. The method will close the +// http.Response Body if it receives an error. +func (client RegistriesClient) UpdateSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, req) +} + +// UpdateResponder handles the response to the Update request. The method always +// closes the http.Response Body. +func (client RegistriesClient) UpdateResponder(resp *http.Response) (result Registry, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK), + autorest.ByUnmarshallingJSON(&result), + autorest.ByClosing()) + result.Response = autorest.Response{Response: resp} + return +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/version.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/version.go new file mode 100644 index 0000000000..e0d70c1b51 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/containerregistry/version.go @@ -0,0 +1,43 @@ +package containerregistry + +// Copyright (c) Microsoft and contributors. All rights reserved. +// +// 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 +// 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. +// +// Code generated by Microsoft (R) AutoRest Code Generator 0.17.0.0 +// Changes may cause incorrect behavior and will be lost if the code is +// regenerated. + +import ( + "fmt" +) + +const ( + major = "7" + minor = "0" + patch = "1" + // Always begin a "tag" with a dash (as per http://semver.org) + tag = "-beta" + semVerFormat = "%s.%s.%s%s" + userAgentFormat = "Azure-SDK-for-Go/%s arm-%s/%s" +) + +// UserAgent returns the UserAgent string to use when sending http.Requests. +func UserAgent() string { + return fmt.Sprintf(userAgentFormat, Version(), "containerregistry", "2016-06-27-preview") +} + +// Version returns the semantic version (see http://semver.org) of the client. +func Version() string { + return fmt.Sprintf(semVerFormat, major, minor, patch, tag) +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/applicationgateways.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/applicationgateways.go index 3c481c5df2..872fbbf7c5 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/applicationgateways.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/applicationgateways.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // ApplicationGatewaysClient is the the Microsoft Azure Network management API // provides a RESTful set of web services that interact with Microsoft Azure -// Networks service to manage your network resrources. The API has entities +// Networks service to manage your network resources. The API has entities // that capture the relationship between an end user and the Microsoft Azure // Networks service. type ApplicationGatewaysClient struct { @@ -45,15 +46,96 @@ func NewApplicationGatewaysClientWithBaseURI(baseURI string, subscriptionID stri return ApplicationGatewaysClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put ApplicationGateway operation creates/updates a -// ApplicationGateway This method may poll for completion. Polling can be +// BackendHealth gets the backend health of the specified application gateway +// in a resource group. This method may poll for completion. Polling can be // canceled by passing the cancel channel argument. The channel will be used // to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. applicationGatewayName -// is the name of the ApplicationGateway. parameters is parameters supplied -// to the create/delete ApplicationGateway operation +// is the name of the application gateway. expand is expands +// BackendAddressPool and BackendHttpSettings referenced in backend health. +func (client ApplicationGatewaysClient) BackendHealth(resourceGroupName string, applicationGatewayName string, expand string, cancel <-chan struct{}) (result autorest.Response, err error) { + req, err := client.BackendHealthPreparer(resourceGroupName, applicationGatewayName, expand, cancel) + if err != nil { + return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "BackendHealth", nil, "Failure preparing request") + } + + resp, err := client.BackendHealthSender(req) + if err != nil { + result.Response = resp + return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "BackendHealth", resp, "Failure sending request") + } + + result, err = client.BackendHealthResponder(resp) + if err != nil { + err = autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "BackendHealth", resp, "Failure responding to request") + } + + return +} + +// BackendHealthPreparer prepares the BackendHealth request. +func (client ApplicationGatewaysClient) BackendHealthPreparer(resourceGroupName string, applicationGatewayName string, expand string, cancel <-chan struct{}) (*http.Request, error) { + pathParameters := map[string]interface{}{ + "applicationGatewayName": autorest.Encode("path", applicationGatewayName), + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + } + + queryParameters := map[string]interface{}{ + "api-version": client.APIVersion, + } + if len(expand) > 0 { + queryParameters["$expand"] = autorest.Encode("query", expand) + } + + preparer := autorest.CreatePreparer( + autorest.AsPost(), + autorest.WithBaseURL(client.BaseURI), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/applicationGateways/{applicationGatewayName}/backendhealth", pathParameters), + autorest.WithQueryParameters(queryParameters)) + return preparer.Prepare(&http.Request{Cancel: cancel}) +} + +// BackendHealthSender sends the BackendHealth request. The method will close the +// http.Response Body if it receives an error. +func (client ApplicationGatewaysClient) BackendHealthSender(req *http.Request) (*http.Response, error) { + return autorest.SendWithSender(client, + req, + azure.DoPollForAsynchronous(client.PollingDelay)) +} + +// BackendHealthResponder handles the response to the BackendHealth request. The method always +// closes the http.Response Body. +func (client ApplicationGatewaysClient) BackendHealthResponder(resp *http.Response) (result autorest.Response, err error) { + err = autorest.Respond( + resp, + client.ByInspecting(), + azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), + autorest.ByClosing()) + result.Response = resp + return +} + +// CreateOrUpdate creates or updates the specified application gateway. This +// method may poll for completion. Polling can be canceled by passing the +// cancel channel argument. The channel will be used to cancel polling and +// any outstanding HTTP requests. +// +// resourceGroupName is the name of the resource group. applicationGatewayName +// is the name of the application gateway. parameters is parameters supplied +// to the create or update application gateway operation. func (client ApplicationGatewaysClient) CreateOrUpdate(resourceGroupName string, applicationGatewayName string, parameters ApplicationGateway, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.ApplicationGatewayPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.ApplicationGatewayPropertiesFormat.WebApplicationFirewallConfiguration.Enabled", Name: validation.Null, Rule: true, Chain: nil}}}, + {Target: "parameters.ApplicationGatewayPropertiesFormat.OperationalState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.ApplicationGatewaysClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, applicationGatewayName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -115,13 +197,13 @@ func (client ApplicationGatewaysClient) CreateOrUpdateResponder(resp *http.Respo return } -// Delete the delete applicationgateway operation deletes the specified -// applicationgateway. This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// Delete deletes the specified application gateway. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. applicationGatewayName -// is the name of the applicationgateway. +// is the name of the application gateway. func (client ApplicationGatewaysClient) Delete(resourceGroupName string, applicationGatewayName string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.DeletePreparer(resourceGroupName, applicationGatewayName, cancel) if err != nil { @@ -182,11 +264,10 @@ func (client ApplicationGatewaysClient) DeleteResponder(resp *http.Response) (re return } -// Get the Get applicationgateway operation retreives information about the -// specified applicationgateway. +// Get gets the specified application gateway. // // resourceGroupName is the name of the resource group. applicationGatewayName -// is the name of the applicationgateway. +// is the name of the application gateway. func (client ApplicationGatewaysClient) Get(resourceGroupName string, applicationGatewayName string) (result ApplicationGateway, err error) { req, err := client.GetPreparer(resourceGroupName, applicationGatewayName) if err != nil { @@ -246,8 +327,7 @@ func (client ApplicationGatewaysClient) GetResponder(resp *http.Response) (resul return } -// List the List ApplicationGateway operation retrieves all the -// applicationgateways in a resource group. +// List lists all application gateways in a resource group. // // resourceGroupName is the name of the resource group. func (client ApplicationGatewaysClient) List(resourceGroupName string) (result ApplicationGatewayListResult, err error) { @@ -312,7 +392,7 @@ func (client ApplicationGatewaysClient) ListResponder(resp *http.Response) (resu func (client ApplicationGatewaysClient) ListNextResults(lastResults ApplicationGatewayListResult) (result ApplicationGatewayListResult, err error) { req, err := lastResults.ApplicationGatewayListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -321,19 +401,18 @@ func (client ApplicationGatewaysClient) ListNextResults(lastResults ApplicationG resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "List", resp, "Failure responding to next results request") } return } -// ListAll the List applicationgateway operation retrieves all the -// applicationgateways in a subscription. +// ListAll gets all the application gateways in a subscription. func (client ApplicationGatewaysClient) ListAll() (result ApplicationGatewayListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -395,7 +474,7 @@ func (client ApplicationGatewaysClient) ListAllResponder(resp *http.Response) (r func (client ApplicationGatewaysClient) ListAllNextResults(lastResults ApplicationGatewayListResult) (result ApplicationGatewayListResult, err error) { req, err := lastResults.ApplicationGatewayListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -404,22 +483,21 @@ func (client ApplicationGatewaysClient) ListAllNextResults(lastResults Applicati resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.ApplicationGatewaysClient", "ListAll", resp, "Failure responding to next results request") } return } -// Start the Start ApplicationGateway operation starts application gatewayin -// the specified resource group through Network resource provider. This -// method may poll for completion. Polling can be canceled by passing the -// cancel channel argument. The channel will be used to cancel polling and -// any outstanding HTTP requests. +// Start starts the specified application gateway. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. applicationGatewayName // is the name of the application gateway. @@ -483,11 +561,10 @@ func (client ApplicationGatewaysClient) StartResponder(resp *http.Response) (res return } -// Stop the STOP ApplicationGateway operation stops application gatewayin the -// specified resource group through Network resource provider. This method -// may poll for completion. Polling can be canceled by passing the cancel -// channel argument. The channel will be used to cancel polling and any -// outstanding HTTP requests. +// Stop stops the specified application gateway in a resource group. This +// method may poll for completion. Polling can be canceled by passing the +// cancel channel argument. The channel will be used to cancel polling and +// any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. applicationGatewayName // is the name of the application gateway. diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/client.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/client.go index 6a5e007a27..74e3d7e491 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/client.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/client.go @@ -1,10 +1,10 @@ // Package network implements the Azure ARM Network service API version -// 2016-06-01. +// 2016-09-01. // // The Microsoft Azure Network management API provides a RESTful set of web // services that interact with Microsoft Azure Networks service to manage -// your network resrources. The API has entities that capture the -// relationship between an end user and the Microsoft Azure Networks service. +// your network resources. The API has entities that capture the relationship +// between an end user and the Microsoft Azure Networks service. package network // Copyright (c) Microsoft and contributors. All rights reserved. @@ -33,7 +33,7 @@ import ( const ( // APIVersion is the version of the Network - APIVersion = "2016-06-01" + APIVersion = "2016-09-01" // DefaultBaseURI is the default URI used for the service Network DefaultBaseURI = "https://management.azure.com" @@ -65,7 +65,7 @@ func NewWithBaseURI(baseURI string, subscriptionID string) ManagementClient { // CheckDNSNameAvailability checks whether a domain name in the cloudapp.net // zone is available for use. // -// location is the location of the domain name domainNameLabel is the domain +// location is the location of the domain name. domainNameLabel is the domain // name to be verified. It must conform to the following regular expression: // ^[a-z][a-z0-9-]{1,61}[a-z0-9]$. func (client ManagementClient) CheckDNSNameAvailability(location string, domainNameLabel string) (result DNSNameAvailabilityResult, err error) { diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuitauthorizations.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuitauthorizations.go index df5e8792df..eb0a2a075c 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuitauthorizations.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuitauthorizations.go @@ -26,8 +26,8 @@ import ( // ExpressRouteCircuitAuthorizationsClient is the the Microsoft Azure Network // management API provides a RESTful set of web services that interact with -// Microsoft Azure Networks service to manage your network resrources. The -// API has entities that capture the relationship between an end user and the +// Microsoft Azure Networks service to manage your network resources. The API +// has entities that capture the relationship between an end user and the // Microsoft Azure Networks service. type ExpressRouteCircuitAuthorizationsClient struct { ManagementClient @@ -45,16 +45,15 @@ func NewExpressRouteCircuitAuthorizationsClientWithBaseURI(baseURI string, subsc return ExpressRouteCircuitAuthorizationsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put Authorization operation creates/updates an -// authorization in thespecified ExpressRouteCircuits This method may poll -// for completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// CreateOrUpdate creates or updates an authorization in the specified express +// route circuit. This method may poll for completion. Polling can be +// canceled by passing the cancel channel argument. The channel will be used +// to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the // name of the express route circuit. authorizationName is the name of the // authorization. authorizationParameters is parameters supplied to the -// create/update ExpressRouteCircuitAuthorization operation +// create or update express route circuit authorization operation. func (client ExpressRouteCircuitAuthorizationsClient) CreateOrUpdate(resourceGroupName string, circuitName string, authorizationName string, authorizationParameters ExpressRouteCircuitAuthorization, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.CreateOrUpdatePreparer(resourceGroupName, circuitName, authorizationName, authorizationParameters, cancel) if err != nil { @@ -118,11 +117,10 @@ func (client ExpressRouteCircuitAuthorizationsClient) CreateOrUpdateResponder(re return } -// Delete the delete authorization operation deletes the specified -// authorization from the specified ExpressRouteCircuit. This method may poll -// for completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// Delete deletes the specified authorization from the specified express route +// circuit. This method may poll for completion. Polling can be canceled by +// passing the cancel channel argument. The channel will be used to cancel +// polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the // name of the express route circuit. authorizationName is the name of the @@ -188,8 +186,8 @@ func (client ExpressRouteCircuitAuthorizationsClient) DeleteResponder(resp *http return } -// Get the GET authorization operation retrieves the specified authorization -// from the specified ExpressRouteCircuit. +// Get gets the specified authorization from the specified express route +// circuit. // // resourceGroupName is the name of the resource group. circuitName is the // name of the express route circuit. authorizationName is the name of the @@ -254,11 +252,10 @@ func (client ExpressRouteCircuitAuthorizationsClient) GetResponder(resp *http.Re return } -// List the List authorization operation retrieves all the authorizations in -// an ExpressRouteCircuit. +// List gets all authorizations in an express route circuit. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the curcuit. +// name of the circuit. func (client ExpressRouteCircuitAuthorizationsClient) List(resourceGroupName string, circuitName string) (result AuthorizationListResult, err error) { req, err := client.ListPreparer(resourceGroupName, circuitName) if err != nil { @@ -322,7 +319,7 @@ func (client ExpressRouteCircuitAuthorizationsClient) ListResponder(resp *http.R func (client ExpressRouteCircuitAuthorizationsClient) ListNextResults(lastResults AuthorizationListResult) (result AuthorizationListResult, err error) { req, err := lastResults.AuthorizationListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitAuthorizationsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitAuthorizationsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -331,12 +328,12 @@ func (client ExpressRouteCircuitAuthorizationsClient) ListNextResults(lastResult resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitAuthorizationsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitAuthorizationsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.ExpressRouteCircuitAuthorizationsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.ExpressRouteCircuitAuthorizationsClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuitpeerings.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuitpeerings.go index 28c0935062..a459574b89 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuitpeerings.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuitpeerings.go @@ -26,8 +26,8 @@ import ( // ExpressRouteCircuitPeeringsClient is the the Microsoft Azure Network // management API provides a RESTful set of web services that interact with -// Microsoft Azure Networks service to manage your network resrources. The -// API has entities that capture the relationship between an end user and the +// Microsoft Azure Networks service to manage your network resources. The API +// has entities that capture the relationship between an end user and the // Microsoft Azure Networks service. type ExpressRouteCircuitPeeringsClient struct { ManagementClient @@ -45,15 +45,15 @@ func NewExpressRouteCircuitPeeringsClientWithBaseURI(baseURI string, subscriptio return ExpressRouteCircuitPeeringsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put Pering operation creates/updates an peering in the -// specified ExpressRouteCircuits This method may poll for completion. -// Polling can be canceled by passing the cancel channel argument. The -// channel will be used to cancel polling and any outstanding HTTP requests. +// CreateOrUpdate creates or updates a peering in the specified express route +// circuits. This method may poll for completion. Polling can be canceled by +// passing the cancel channel argument. The channel will be used to cancel +// polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the // name of the express route circuit. peeringName is the name of the peering. -// peeringParameters is parameters supplied to the create/update -// ExpressRouteCircuit Peering operation +// peeringParameters is parameters supplied to the create or update express +// route circuit peering operation. func (client ExpressRouteCircuitPeeringsClient) CreateOrUpdate(resourceGroupName string, circuitName string, peeringName string, peeringParameters ExpressRouteCircuitPeering, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.CreateOrUpdatePreparer(resourceGroupName, circuitName, peeringName, peeringParameters, cancel) if err != nil { @@ -117,10 +117,10 @@ func (client ExpressRouteCircuitPeeringsClient) CreateOrUpdateResponder(resp *ht return } -// Delete the delete peering operation deletes the specified peering from the -// ExpressRouteCircuit. This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// Delete deletes the specified peering from the specified express route +// circuit. This method may poll for completion. Polling can be canceled by +// passing the cancel channel argument. The channel will be used to cancel +// polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the // name of the express route circuit. peeringName is the name of the peering. @@ -185,8 +185,8 @@ func (client ExpressRouteCircuitPeeringsClient) DeleteResponder(resp *http.Respo return } -// Get the GET peering operation retrieves the specified authorization from -// the ExpressRouteCircuit. +// Get gets the specified authorization from the specified express route +// circuit. // // resourceGroupName is the name of the resource group. circuitName is the // name of the express route circuit. peeringName is the name of the peering. @@ -250,11 +250,10 @@ func (client ExpressRouteCircuitPeeringsClient) GetResponder(resp *http.Response return } -// List the List peering operation retrieves all the peerings in an -// ExpressRouteCircuit. +// List gets all peerings in a specified express route circuit. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the curcuit. +// name of the express route circuit. func (client ExpressRouteCircuitPeeringsClient) List(resourceGroupName string, circuitName string) (result ExpressRouteCircuitPeeringListResult, err error) { req, err := client.ListPreparer(resourceGroupName, circuitName) if err != nil { @@ -318,7 +317,7 @@ func (client ExpressRouteCircuitPeeringsClient) ListResponder(resp *http.Respons func (client ExpressRouteCircuitPeeringsClient) ListNextResults(lastResults ExpressRouteCircuitPeeringListResult) (result ExpressRouteCircuitPeeringListResult, err error) { req, err := lastResults.ExpressRouteCircuitPeeringListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitPeeringsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitPeeringsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -327,12 +326,12 @@ func (client ExpressRouteCircuitPeeringsClient) ListNextResults(lastResults Expr resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitPeeringsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitPeeringsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.ExpressRouteCircuitPeeringsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.ExpressRouteCircuitPeeringsClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuits.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuits.go index 979bee99e4..6572e92b62 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuits.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressroutecircuits.go @@ -26,7 +26,7 @@ import ( // ExpressRouteCircuitsClient is the the Microsoft Azure Network management // API provides a RESTful set of web services that interact with Microsoft -// Azure Networks service to manage your network resrources. The API has +// Azure Networks service to manage your network resources. The API has // entities that capture the relationship between an end user and the // Microsoft Azure Networks service. type ExpressRouteCircuitsClient struct { @@ -45,14 +45,14 @@ func NewExpressRouteCircuitsClientWithBaseURI(baseURI string, subscriptionID str return ExpressRouteCircuitsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put ExpressRouteCircuit operation creates/updates a -// ExpressRouteCircuit This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// CreateOrUpdate creates or updates an express route circuit. This method may +// poll for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the circuit. parameters is parameters supplied to the -// create/delete ExpressRouteCircuit operation +// name of the circuit. parameters is parameters supplied to the create or +// update express route circuit operation. func (client ExpressRouteCircuitsClient) CreateOrUpdate(resourceGroupName string, circuitName string, parameters ExpressRouteCircuit, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.CreateOrUpdatePreparer(resourceGroupName, circuitName, parameters, cancel) if err != nil { @@ -115,13 +115,13 @@ func (client ExpressRouteCircuitsClient) CreateOrUpdateResponder(resp *http.Resp return } -// Delete the delete ExpressRouteCircuit operation deletes the specified -// ExpressRouteCircuit. This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// Delete deletes the specified express route circuit. This method may poll +// for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the express route Circuit. +// name of the express route circuit. func (client ExpressRouteCircuitsClient) Delete(resourceGroupName string, circuitName string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.DeletePreparer(resourceGroupName, circuitName, cancel) if err != nil { @@ -182,11 +182,10 @@ func (client ExpressRouteCircuitsClient) DeleteResponder(resp *http.Response) (r return } -// Get the Get ExpressRouteCircuit operation retreives information about the -// specified ExpressRouteCircuit. +// Get gets information about the specified express route circuit. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the circuit. +// name of express route circuit. func (client ExpressRouteCircuitsClient) Get(resourceGroupName string, circuitName string) (result ExpressRouteCircuit, err error) { req, err := client.GetPreparer(resourceGroupName, circuitName) if err != nil { @@ -246,11 +245,11 @@ func (client ExpressRouteCircuitsClient) GetResponder(resp *http.Response) (resu return } -// GetPeeringStats the Liststats ExpressRouteCircuit operation retrieves all -// the stats from a ExpressRouteCircuits in a resource group. +// GetPeeringStats gets all stats from an express route circuit in a resource +// group. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the circuit. peeringName is the name of the peering. +// name of the express route circuit. peeringName is the name of the peering. func (client ExpressRouteCircuitsClient) GetPeeringStats(resourceGroupName string, circuitName string, peeringName string) (result ExpressRouteCircuitStats, err error) { req, err := client.GetPeeringStatsPreparer(resourceGroupName, circuitName, peeringName) if err != nil { @@ -311,11 +310,11 @@ func (client ExpressRouteCircuitsClient) GetPeeringStatsResponder(resp *http.Res return } -// GetStats the Liststats ExpressRouteCircuit operation retrieves all the -// stats from a ExpressRouteCircuits in a resource group. +// GetStats gets all the stats from an express route circuit in a resource +// group. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the circuit. +// name of the express route circuit. func (client ExpressRouteCircuitsClient) GetStats(resourceGroupName string, circuitName string) (result ExpressRouteCircuitStats, err error) { req, err := client.GetStatsPreparer(resourceGroupName, circuitName) if err != nil { @@ -375,8 +374,7 @@ func (client ExpressRouteCircuitsClient) GetStatsResponder(resp *http.Response) return } -// List the List ExpressRouteCircuit operation retrieves all the -// ExpressRouteCircuits in a resource group. +// List gets all the express route circuits in a resource group. // // resourceGroupName is the name of the resource group. func (client ExpressRouteCircuitsClient) List(resourceGroupName string) (result ExpressRouteCircuitListResult, err error) { @@ -441,7 +439,7 @@ func (client ExpressRouteCircuitsClient) ListResponder(resp *http.Response) (res func (client ExpressRouteCircuitsClient) ListNextResults(lastResults ExpressRouteCircuitListResult) (result ExpressRouteCircuitListResult, err error) { req, err := lastResults.ExpressRouteCircuitListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -450,19 +448,18 @@ func (client ExpressRouteCircuitsClient) ListNextResults(lastResults ExpressRout resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "List", resp, "Failure responding to next results request") } return } -// ListAll the List ExpressRouteCircuit operation retrieves all the -// ExpressRouteCircuits in a subscription. +// ListAll gets all the express route circuits in a subscription. func (client ExpressRouteCircuitsClient) ListAll() (result ExpressRouteCircuitListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -524,7 +521,7 @@ func (client ExpressRouteCircuitsClient) ListAllResponder(resp *http.Response) ( func (client ExpressRouteCircuitsClient) ListAllNextResults(lastResults ExpressRouteCircuitListResult) (result ExpressRouteCircuitListResult, err error) { req, err := lastResults.ExpressRouteCircuitListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -533,27 +530,26 @@ func (client ExpressRouteCircuitsClient) ListAllNextResults(lastResults ExpressR resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.ExpressRouteCircuitsClient", "ListAll", resp, "Failure responding to next results request") } return } -// ListArpTable the ListArpTable from ExpressRouteCircuit operation retrieves -// the currently advertised arp table associated with the -// ExpressRouteCircuits in a resource group. This method may poll for +// ListArpTable gets the currently advertised ARP table associated with the +// express route circuit in a resource group. This method may poll for // completion. Polling can be canceled by passing the cancel channel // argument. The channel will be used to cancel polling and any outstanding // HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the circuit. peeringName is the name of the peering. devicePath is -// the path of the device. +// name of the express route circuit. peeringName is the name of the peering. +// devicePath is the path of the device. func (client ExpressRouteCircuitsClient) ListArpTable(resourceGroupName string, circuitName string, peeringName string, devicePath string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.ListArpTablePreparer(resourceGroupName, circuitName, peeringName, devicePath, cancel) if err != nil { @@ -616,16 +612,15 @@ func (client ExpressRouteCircuitsClient) ListArpTableResponder(resp *http.Respon return } -// ListRoutesTable the ListRoutesTable from ExpressRouteCircuit operation -// retrieves the currently advertised routes table associated with the -// ExpressRouteCircuits in a resource group. This method may poll for +// ListRoutesTable gets the currently advertised routes table associated with +// the express route circuit in a resource group. This method may poll for // completion. Polling can be canceled by passing the cancel channel // argument. The channel will be used to cancel polling and any outstanding // HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the circuit. peeringName is the name of the peering. devicePath is -// the path of the device. +// name of the express route circuit. peeringName is the name of the peering. +// devicePath is the path of the device. func (client ExpressRouteCircuitsClient) ListRoutesTable(resourceGroupName string, circuitName string, peeringName string, devicePath string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.ListRoutesTablePreparer(resourceGroupName, circuitName, peeringName, devicePath, cancel) if err != nil { @@ -688,16 +683,15 @@ func (client ExpressRouteCircuitsClient) ListRoutesTableResponder(resp *http.Res return } -// ListRoutesTableSummary the ListRoutesTable from ExpressRouteCircuit -// operation retrieves the currently advertised routes table associated with -// the ExpressRouteCircuits in a resource group. This method may poll for -// completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// ListRoutesTableSummary gets the currently advertised routes table summary +// associated with the express route circuit in a resource group. This method +// may poll for completion. Polling can be canceled by passing the cancel +// channel argument. The channel will be used to cancel polling and any +// outstanding HTTP requests. // // resourceGroupName is the name of the resource group. circuitName is the -// name of the circuit. peeringName is the name of the peering. devicePath is -// the path of the device. +// name of the express route circuit. peeringName is the name of the peering. +// devicePath is the path of the device. func (client ExpressRouteCircuitsClient) ListRoutesTableSummary(resourceGroupName string, circuitName string, peeringName string, devicePath string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.ListRoutesTableSummaryPreparer(resourceGroupName, circuitName, peeringName, devicePath, cancel) if err != nil { diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressrouteserviceproviders.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressrouteserviceproviders.go index 4943835d09..9d0450ecf0 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressrouteserviceproviders.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/expressrouteserviceproviders.go @@ -26,8 +26,8 @@ import ( // ExpressRouteServiceProvidersClient is the the Microsoft Azure Network // management API provides a RESTful set of web services that interact with -// Microsoft Azure Networks service to manage your network resrources. The -// API has entities that capture the relationship between an end user and the +// Microsoft Azure Networks service to manage your network resources. The API +// has entities that capture the relationship between an end user and the // Microsoft Azure Networks service. type ExpressRouteServiceProvidersClient struct { ManagementClient @@ -45,8 +45,7 @@ func NewExpressRouteServiceProvidersClientWithBaseURI(baseURI string, subscripti return ExpressRouteServiceProvidersClient{NewWithBaseURI(baseURI, subscriptionID)} } -// List the List ExpressRouteServiceProvider operation retrieves all the -// available ExpressRouteServiceProviders. +// List gets all the available express route service providers. func (client ExpressRouteServiceProvidersClient) List() (result ExpressRouteServiceProviderListResult, err error) { req, err := client.ListPreparer() if err != nil { @@ -108,7 +107,7 @@ func (client ExpressRouteServiceProvidersClient) ListResponder(resp *http.Respon func (client ExpressRouteServiceProvidersClient) ListNextResults(lastResults ExpressRouteServiceProviderListResult) (result ExpressRouteServiceProviderListResult, err error) { req, err := lastResults.ExpressRouteServiceProviderListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.ExpressRouteServiceProvidersClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteServiceProvidersClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -117,12 +116,12 @@ func (client ExpressRouteServiceProvidersClient) ListNextResults(lastResults Exp resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.ExpressRouteServiceProvidersClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.ExpressRouteServiceProvidersClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.ExpressRouteServiceProvidersClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.ExpressRouteServiceProvidersClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/interfaces.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/interfaces.go index d198f37f49..9fbf7cddd4 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/interfaces.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/interfaces.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // InterfacesClient is the the Microsoft Azure Network management API provides // a RESTful set of web services that interact with Microsoft Azure Networks -// service to manage your network resrources. The API has entities that +// service to manage your network resources. The API has entities that // capture the relationship between an end user and the Microsoft Azure // Networks service. type InterfacesClient struct { @@ -44,15 +45,28 @@ func NewInterfacesClientWithBaseURI(baseURI string, subscriptionID string) Inter return InterfacesClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put NetworkInterface operation creates/updates a -// networkInterface This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// CreateOrUpdate creates or updates a network interface. This method may poll +// for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. networkInterfaceName // is the name of the network interface. parameters is parameters supplied to -// the create/update NetworkInterface operation +// the create or update network interface operation. func (client InterfacesClient) CreateOrUpdate(resourceGroupName string, networkInterfaceName string, parameters Interface, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.InterfacePropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.InterfacePropertiesFormat.NetworkSecurityGroup", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.InterfacePropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.InterfacePropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat.NetworkInterfaces", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.InterfacePropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat.Subnets", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}, + }}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.InterfacesClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, networkInterfaceName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -114,10 +128,10 @@ func (client InterfacesClient) CreateOrUpdateResponder(resp *http.Response) (res return } -// Delete the delete netwokInterface operation deletes the specified -// netwokInterface. This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// Delete deletes the specified network interface. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. networkInterfaceName // is the name of the network interface. @@ -181,11 +195,10 @@ func (client InterfacesClient) DeleteResponder(resp *http.Response) (result auto return } -// Get the Get ntework interface operation retreives information about the -// specified network interface. +// Get gets information about the specified network interface. // // resourceGroupName is the name of the resource group. networkInterfaceName -// is the name of the network interface. expand is expand references +// is the name of the network interface. expand is expands referenced // resources. func (client InterfacesClient) Get(resourceGroupName string, networkInterfaceName string, expand string) (result Interface, err error) { req, err := client.GetPreparer(resourceGroupName, networkInterfaceName, expand) @@ -249,11 +262,10 @@ func (client InterfacesClient) GetResponder(resp *http.Response) (result Interfa return } -// GetEffectiveRouteTable the get effective routetable operation retrieves all -// the route tables applied on a networkInterface. This method may poll for -// completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// GetEffectiveRouteTable gets all route tables applied to a network +// interface. This method may poll for completion. Polling can be canceled by +// passing the cancel channel argument. The channel will be used to cancel +// polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. networkInterfaceName // is the name of the network interface. @@ -317,14 +329,13 @@ func (client InterfacesClient) GetEffectiveRouteTableResponder(resp *http.Respon return } -// GetVirtualMachineScaleSetNetworkInterface the Get ntework interface -// operation retreives information about the specified network interface in a -// virtual machine scale set. +// GetVirtualMachineScaleSetNetworkInterface get the specified network +// interface in a virtual machine scale set. // // resourceGroupName is the name of the resource group. // virtualMachineScaleSetName is the name of the virtual machine scale set. // virtualmachineIndex is the virtual machine index. networkInterfaceName is -// the name of the network interface. expand is expand references resources. +// the name of the network interface. expand is expands referenced resources. func (client InterfacesClient) GetVirtualMachineScaleSetNetworkInterface(resourceGroupName string, virtualMachineScaleSetName string, virtualmachineIndex string, networkInterfaceName string, expand string) (result Interface, err error) { req, err := client.GetVirtualMachineScaleSetNetworkInterfacePreparer(resourceGroupName, virtualMachineScaleSetName, virtualmachineIndex, networkInterfaceName, expand) if err != nil { @@ -389,8 +400,7 @@ func (client InterfacesClient) GetVirtualMachineScaleSetNetworkInterfaceResponde return } -// List the List networkInterfaces operation retrieves all the -// networkInterfaces in a resource group. +// List gets all network interfaces in a resource group. // // resourceGroupName is the name of the resource group. func (client InterfacesClient) List(resourceGroupName string) (result InterfaceListResult, err error) { @@ -455,7 +465,7 @@ func (client InterfacesClient) ListResponder(resp *http.Response) (result Interf func (client InterfacesClient) ListNextResults(lastResults InterfaceListResult) (result InterfaceListResult, err error) { req, err := lastResults.InterfaceListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -464,19 +474,18 @@ func (client InterfacesClient) ListNextResults(lastResults InterfaceListResult) resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.InterfacesClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.InterfacesClient", "List", resp, "Failure responding to next results request") } return } -// ListAll the List networkInterfaces operation retrieves all the -// networkInterfaces in a subscription. +// ListAll gets all network interfaces in a subscription. func (client InterfacesClient) ListAll() (result InterfaceListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -538,7 +547,7 @@ func (client InterfacesClient) ListAllResponder(resp *http.Response) (result Int func (client InterfacesClient) ListAllNextResults(lastResults InterfaceListResult) (result InterfaceListResult, err error) { req, err := lastResults.InterfaceListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -547,22 +556,21 @@ func (client InterfacesClient) ListAllNextResults(lastResults InterfaceListResul resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.InterfacesClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.InterfacesClient", "ListAll", resp, "Failure responding to next results request") } return } -// ListEffectiveNetworkSecurityGroups the list effective network security -// group operation retrieves all the network security groups applied on a -// networkInterface. This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// ListEffectiveNetworkSecurityGroups gets all network security groups applied +// to a network interface. This method may poll for completion. Polling can +// be canceled by passing the cancel channel argument. The channel will be +// used to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. networkInterfaceName // is the name of the network interface. @@ -626,9 +634,8 @@ func (client InterfacesClient) ListEffectiveNetworkSecurityGroupsResponder(resp return } -// ListVirtualMachineScaleSetNetworkInterfaces the list network interface -// operation retrieves information about all network interfaces in a virtual -// machine scale set. +// ListVirtualMachineScaleSetNetworkInterfaces gets all network interfaces in +// a virtual machine scale set. // // resourceGroupName is the name of the resource group. // virtualMachineScaleSetName is the name of the virtual machine scale set. @@ -695,7 +702,7 @@ func (client InterfacesClient) ListVirtualMachineScaleSetNetworkInterfacesRespon func (client InterfacesClient) ListVirtualMachineScaleSetNetworkInterfacesNextResults(lastResults InterfaceListResult) (result InterfaceListResult, err error) { req, err := lastResults.InterfaceListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetNetworkInterfaces", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetNetworkInterfaces", nil, "Failure preparing next results request") } if req == nil { return @@ -704,20 +711,19 @@ func (client InterfacesClient) ListVirtualMachineScaleSetNetworkInterfacesNextRe resp, err := client.ListVirtualMachineScaleSetNetworkInterfacesSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetNetworkInterfaces", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetNetworkInterfaces", resp, "Failure sending next results request") } result, err = client.ListVirtualMachineScaleSetNetworkInterfacesResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetNetworkInterfaces", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetNetworkInterfaces", resp, "Failure responding to next results request") } return } -// ListVirtualMachineScaleSetVMNetworkInterfaces the list network interface -// operation retrieves information about all network interfaces in a virtual -// machine from a virtual machine scale set. +// ListVirtualMachineScaleSetVMNetworkInterfaces gets information about all +// network interfaces in a virtual machine in a virtual machine scale set. // // resourceGroupName is the name of the resource group. // virtualMachineScaleSetName is the name of the virtual machine scale set. @@ -786,7 +792,7 @@ func (client InterfacesClient) ListVirtualMachineScaleSetVMNetworkInterfacesResp func (client InterfacesClient) ListVirtualMachineScaleSetVMNetworkInterfacesNextResults(lastResults InterfaceListResult) (result InterfaceListResult, err error) { req, err := lastResults.InterfaceListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetVMNetworkInterfaces", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetVMNetworkInterfaces", nil, "Failure preparing next results request") } if req == nil { return @@ -795,12 +801,12 @@ func (client InterfacesClient) ListVirtualMachineScaleSetVMNetworkInterfacesNext resp, err := client.ListVirtualMachineScaleSetVMNetworkInterfacesSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetVMNetworkInterfaces", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetVMNetworkInterfaces", resp, "Failure sending next results request") } result, err = client.ListVirtualMachineScaleSetVMNetworkInterfacesResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetVMNetworkInterfaces", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.InterfacesClient", "ListVirtualMachineScaleSetVMNetworkInterfaces", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/loadbalancers.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/loadbalancers.go index 80b99183ce..30012ff35b 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/loadbalancers.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/loadbalancers.go @@ -26,7 +26,7 @@ import ( // LoadBalancersClient is the the Microsoft Azure Network management API // provides a RESTful set of web services that interact with Microsoft Azure -// Networks service to manage your network resrources. The API has entities +// Networks service to manage your network resources. The API has entities // that capture the relationship between an end user and the Microsoft Azure // Networks service. type LoadBalancersClient struct { @@ -45,14 +45,14 @@ func NewLoadBalancersClientWithBaseURI(baseURI string, subscriptionID string) Lo return LoadBalancersClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put LoadBalancer operation creates/updates a -// LoadBalancer This method may poll for completion. Polling can be canceled -// by passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// CreateOrUpdate creates or updates a load balancer. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. loadBalancerName is -// the name of the loadBalancer. parameters is parameters supplied to the -// create/delete LoadBalancer operation +// the name of the load balancer. parameters is parameters supplied to the +// create or update load balancer operation. func (client LoadBalancersClient) CreateOrUpdate(resourceGroupName string, loadBalancerName string, parameters LoadBalancer, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.CreateOrUpdatePreparer(resourceGroupName, loadBalancerName, parameters, cancel) if err != nil { @@ -115,13 +115,13 @@ func (client LoadBalancersClient) CreateOrUpdateResponder(resp *http.Response) ( return } -// Delete the delete loadbalancer operation deletes the specified -// loadbalancer. This method may poll for completion. Polling can be canceled -// by passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// Delete deletes the specified load balancer. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. loadBalancerName is -// the name of the loadBalancer. +// the name of the load balancer. func (client LoadBalancersClient) Delete(resourceGroupName string, loadBalancerName string, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.DeletePreparer(resourceGroupName, loadBalancerName, cancel) if err != nil { @@ -182,11 +182,10 @@ func (client LoadBalancersClient) DeleteResponder(resp *http.Response) (result a return } -// Get the Get ntework interface operation retreives information about the -// specified network interface. +// Get gets the specified load balancer. // // resourceGroupName is the name of the resource group. loadBalancerName is -// the name of the loadBalancer. expand is expand references resources. +// the name of the load balancer. expand is expands referenced resources. func (client LoadBalancersClient) Get(resourceGroupName string, loadBalancerName string, expand string) (result LoadBalancer, err error) { req, err := client.GetPreparer(resourceGroupName, loadBalancerName, expand) if err != nil { @@ -249,8 +248,7 @@ func (client LoadBalancersClient) GetResponder(resp *http.Response) (result Load return } -// List the List loadBalancer operation retrieves all the loadbalancers in a -// resource group. +// List gets all the load balancers in a resource group. // // resourceGroupName is the name of the resource group. func (client LoadBalancersClient) List(resourceGroupName string) (result LoadBalancerListResult, err error) { @@ -315,7 +313,7 @@ func (client LoadBalancersClient) ListResponder(resp *http.Response) (result Loa func (client LoadBalancersClient) ListNextResults(lastResults LoadBalancerListResult) (result LoadBalancerListResult, err error) { req, err := lastResults.LoadBalancerListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.LoadBalancersClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.LoadBalancersClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -324,19 +322,18 @@ func (client LoadBalancersClient) ListNextResults(lastResults LoadBalancerListRe resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.LoadBalancersClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.LoadBalancersClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.LoadBalancersClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.LoadBalancersClient", "List", resp, "Failure responding to next results request") } return } -// ListAll the List loadBalancer operation retrieves all the loadbalancers in -// a subscription. +// ListAll gets all the load balancers in a subscription. func (client LoadBalancersClient) ListAll() (result LoadBalancerListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -398,7 +395,7 @@ func (client LoadBalancersClient) ListAllResponder(resp *http.Response) (result func (client LoadBalancersClient) ListAllNextResults(lastResults LoadBalancerListResult) (result LoadBalancerListResult, err error) { req, err := lastResults.LoadBalancerListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.LoadBalancersClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.LoadBalancersClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -407,12 +404,12 @@ func (client LoadBalancersClient) ListAllNextResults(lastResults LoadBalancerLis resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.LoadBalancersClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.LoadBalancersClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.LoadBalancersClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.LoadBalancersClient", "ListAll", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/localnetworkgateways.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/localnetworkgateways.go index 679e9b35c4..fd48306f24 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/localnetworkgateways.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/localnetworkgateways.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // LocalNetworkGatewaysClient is the the Microsoft Azure Network management // API provides a RESTful set of web services that interact with Microsoft -// Azure Networks service to manage your network resrources. The API has +// Azure Networks service to manage your network resources. The API has // entities that capture the relationship between an end user and the // Microsoft Azure Networks service. type LocalNetworkGatewaysClient struct { @@ -45,17 +46,25 @@ func NewLocalNetworkGatewaysClientWithBaseURI(baseURI string, subscriptionID str return LocalNetworkGatewaysClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put LocalNetworkGateway operation creates/updates a -// local network gateway in the specified resource group through Network -// resource provider. This method may poll for completion. Polling can be +// CreateOrUpdate creates or updates a local network gateway in the specified +// resource group. This method may poll for completion. Polling can be // canceled by passing the cancel channel argument. The channel will be used // to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. // localNetworkGatewayName is the name of the local network gateway. -// parameters is parameters supplied to the Begin Create or update Local -// Network Gateway operation through Network resource provider. +// parameters is parameters supplied to the create or update local network +// gateway operation. func (client LocalNetworkGatewaysClient) CreateOrUpdate(resourceGroupName string, localNetworkGatewayName string, parameters LocalNetworkGateway, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.LocalNetworkGatewayPropertiesFormat", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.LocalNetworkGatewayPropertiesFormat.LocalNetworkAddressSpace", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.LocalNetworkGatewayPropertiesFormat.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.LocalNetworkGatewaysClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, localNetworkGatewayName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.LocalNetworkGatewaysClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -117,8 +126,7 @@ func (client LocalNetworkGatewaysClient) CreateOrUpdateResponder(resp *http.Resp return } -// Delete the Delete LocalNetworkGateway operation deletes the specifed local -// network Gateway through Network resource provider. This method may poll +// Delete deletes the specified local network gateway. This method may poll // for completion. Polling can be canceled by passing the cancel channel // argument. The channel will be used to cancel polling and any outstanding // HTTP requests. @@ -185,8 +193,7 @@ func (client LocalNetworkGatewaysClient) DeleteResponder(resp *http.Response) (r return } -// Get the Get LocalNetworkGateway operation retrieves information about the -// specified local network gateway through Network resource provider. +// Get gets the specified local network gateway in a resource group. // // resourceGroupName is the name of the resource group. // localNetworkGatewayName is the name of the local network gateway. @@ -249,8 +256,7 @@ func (client LocalNetworkGatewaysClient) GetResponder(resp *http.Response) (resu return } -// List the List LocalNetworkGateways operation retrieves all the local -// network gateways stored. +// List gets all the local network gateways in a resource group. // // resourceGroupName is the name of the resource group. func (client LocalNetworkGatewaysClient) List(resourceGroupName string) (result LocalNetworkGatewayListResult, err error) { @@ -315,7 +321,7 @@ func (client LocalNetworkGatewaysClient) ListResponder(resp *http.Response) (res func (client LocalNetworkGatewaysClient) ListNextResults(lastResults LocalNetworkGatewayListResult) (result LocalNetworkGatewayListResult, err error) { req, err := lastResults.LocalNetworkGatewayListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.LocalNetworkGatewaysClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.LocalNetworkGatewaysClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -324,12 +330,12 @@ func (client LocalNetworkGatewaysClient) ListNextResults(lastResults LocalNetwor resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.LocalNetworkGatewaysClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.LocalNetworkGatewaysClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.LocalNetworkGatewaysClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.LocalNetworkGatewaysClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/models.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/models.go index c09c581127..bb514f796b 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/models.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/models.go @@ -24,6 +24,25 @@ import ( "net/http" ) +// ApplicationGatewayBackendHealthServerHealth enumerates the values for +// application gateway backend health server health. +type ApplicationGatewayBackendHealthServerHealth string + +const ( + // Down specifies the down state for application gateway backend health + // server health. + Down ApplicationGatewayBackendHealthServerHealth = "Down" + // Partial specifies the partial state for application gateway backend + // health server health. + Partial ApplicationGatewayBackendHealthServerHealth = "Partial" + // Unknown specifies the unknown state for application gateway backend + // health server health. + Unknown ApplicationGatewayBackendHealthServerHealth = "Unknown" + // Up specifies the up state for application gateway backend health server + // health. + Up ApplicationGatewayBackendHealthServerHealth = "Up" +) + // ApplicationGatewayCookieBasedAffinity enumerates the values for application // gateway cookie based affinity. type ApplicationGatewayCookieBasedAffinity string @@ -37,6 +56,19 @@ const ( Enabled ApplicationGatewayCookieBasedAffinity = "Enabled" ) +// ApplicationGatewayFirewallMode enumerates the values for application +// gateway firewall mode. +type ApplicationGatewayFirewallMode string + +const ( + // Detection specifies the detection state for application gateway + // firewall mode. + Detection ApplicationGatewayFirewallMode = "Detection" + // Prevention specifies the prevention state for application gateway + // firewall mode. + Prevention ApplicationGatewayFirewallMode = "Prevention" +) + // ApplicationGatewayOperationalState enumerates the values for application // gateway operational state. type ApplicationGatewayOperationalState string @@ -94,6 +126,11 @@ const ( // StandardSmall specifies the standard small state for application // gateway sku name. StandardSmall ApplicationGatewaySkuName = "Standard_Small" + // WAFLarge specifies the waf large state for application gateway sku name. + WAFLarge ApplicationGatewaySkuName = "WAF_Large" + // WAFMedium specifies the waf medium state for application gateway sku + // name. + WAFMedium ApplicationGatewaySkuName = "WAF_Medium" ) // ApplicationGatewaySslProtocol enumerates the values for application gateway @@ -118,6 +155,8 @@ type ApplicationGatewayTier string const ( // Standard specifies the standard state for application gateway tier. Standard ApplicationGatewayTier = "Standard" + // WAF specifies the waf state for application gateway tier. + WAF ApplicationGatewayTier = "WAF" ) // AuthorizationUseStatus enumerates the values for authorization use status. @@ -390,18 +429,22 @@ const ( type VirtualNetworkGatewayConnectionStatus string const ( - // Connected specifies the connected state for virtual network gateway - // connection status. - Connected VirtualNetworkGatewayConnectionStatus = "Connected" - // Connecting specifies the connecting state for virtual network gateway - // connection status. - Connecting VirtualNetworkGatewayConnectionStatus = "Connecting" - // NotConnected specifies the not connected state for virtual network + // VirtualNetworkGatewayConnectionStatusConnected specifies the virtual + // network gateway connection status connected state for virtual network // gateway connection status. - NotConnected VirtualNetworkGatewayConnectionStatus = "NotConnected" - // Unknown specifies the unknown state for virtual network gateway - // connection status. - Unknown VirtualNetworkGatewayConnectionStatus = "Unknown" + VirtualNetworkGatewayConnectionStatusConnected VirtualNetworkGatewayConnectionStatus = "Connected" + // VirtualNetworkGatewayConnectionStatusConnecting specifies the virtual + // network gateway connection status connecting state for virtual network + // gateway connection status. + VirtualNetworkGatewayConnectionStatusConnecting VirtualNetworkGatewayConnectionStatus = "Connecting" + // VirtualNetworkGatewayConnectionStatusNotConnected specifies the virtual + // network gateway connection status not connected state for virtual + // network gateway connection status. + VirtualNetworkGatewayConnectionStatusNotConnected VirtualNetworkGatewayConnectionStatus = "NotConnected" + // VirtualNetworkGatewayConnectionStatusUnknown specifies the virtual + // network gateway connection status unknown state for virtual network + // gateway connection status. + VirtualNetworkGatewayConnectionStatusUnknown VirtualNetworkGatewayConnectionStatus = "Unknown" ) // VirtualNetworkGatewayConnectionType enumerates the values for virtual @@ -438,6 +481,10 @@ const ( // VirtualNetworkGatewaySkuNameStandard specifies the virtual network // gateway sku name standard state for virtual network gateway sku name. VirtualNetworkGatewaySkuNameStandard VirtualNetworkGatewaySkuName = "Standard" + // VirtualNetworkGatewaySkuNameUltraPerformance specifies the virtual + // network gateway sku name ultra performance state for virtual network + // gateway sku name. + VirtualNetworkGatewaySkuNameUltraPerformance VirtualNetworkGatewaySkuName = "UltraPerformance" ) // VirtualNetworkGatewaySkuTier enumerates the values for virtual network @@ -455,6 +502,10 @@ const ( // VirtualNetworkGatewaySkuTierStandard specifies the virtual network // gateway sku tier standard state for virtual network gateway sku tier. VirtualNetworkGatewaySkuTierStandard VirtualNetworkGatewaySkuTier = "Standard" + // VirtualNetworkGatewaySkuTierUltraPerformance specifies the virtual + // network gateway sku tier ultra performance state for virtual network + // gateway sku tier. + VirtualNetworkGatewaySkuTierUltraPerformance VirtualNetworkGatewaySkuTier = "UltraPerformance" ) // VirtualNetworkGatewayType enumerates the values for virtual network gateway @@ -475,15 +526,15 @@ const ( type VirtualNetworkPeeringState string const ( - // VirtualNetworkPeeringStateConnected specifies the virtual network - // peering state connected state for virtual network peering state. - VirtualNetworkPeeringStateConnected VirtualNetworkPeeringState = "Connected" - // VirtualNetworkPeeringStateDisconnected specifies the virtual network - // peering state disconnected state for virtual network peering state. - VirtualNetworkPeeringStateDisconnected VirtualNetworkPeeringState = "Disconnected" - // VirtualNetworkPeeringStateInitiated specifies the virtual network - // peering state initiated state for virtual network peering state. - VirtualNetworkPeeringStateInitiated VirtualNetworkPeeringState = "Initiated" + // Connected specifies the connected state for virtual network peering + // state. + Connected VirtualNetworkPeeringState = "Connected" + // Disconnected specifies the disconnected state for virtual network + // peering state. + Disconnected VirtualNetworkPeeringState = "Disconnected" + // Initiated specifies the initiated state for virtual network peering + // state. + Initiated VirtualNetworkPeeringState = "Initiated" ) // VpnType enumerates the values for vpn type. @@ -497,73 +548,103 @@ const ( ) // AddressSpace is addressSpace contains an array of IP address ranges that -// can be used by subnets +// can be used by subnets of the virtual network. type AddressSpace struct { AddressPrefixes *[]string `json:"addressPrefixes,omitempty"` } -// ApplicationGateway is applicationGateways resource +// ApplicationGateway is application gateway resource type ApplicationGateway struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *ApplicationGatewayPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *ApplicationGatewayPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewayAuthenticationCertificate is authentication certificates -// of application gateway +// of an application gateway. type ApplicationGatewayAuthenticationCertificate struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayAuthenticationCertificatePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayAuthenticationCertificatePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// ApplicationGatewayAuthenticationCertificatePropertiesFormat is properties -// of Authentication certificates of application gateway +// ApplicationGatewayAuthenticationCertificatePropertiesFormat is +// authentication certificates properties of an application gateway. type ApplicationGatewayAuthenticationCertificatePropertiesFormat struct { Data *string `json:"data,omitempty"` ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewayBackendAddress is backend Address of application gateway +// ApplicationGatewayBackendAddress is backend address of an application +// gateway. type ApplicationGatewayBackendAddress struct { Fqdn *string `json:"fqdn,omitempty"` IPAddress *string `json:"ipAddress,omitempty"` } -// ApplicationGatewayBackendAddressPool is backend Address Pool of application -// gateway +// ApplicationGatewayBackendAddressPool is backend Address Pool of an +// application gateway. type ApplicationGatewayBackendAddressPool struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayBackendAddressPoolPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayBackendAddressPoolPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewayBackendAddressPoolPropertiesFormat is properties of -// Backend Address Pool of application gateway +// Backend Address Pool of an application gateway. type ApplicationGatewayBackendAddressPoolPropertiesFormat struct { BackendIPConfigurations *[]InterfaceIPConfiguration `json:"backendIPConfigurations,omitempty"` BackendAddresses *[]ApplicationGatewayBackendAddress `json:"backendAddresses,omitempty"` ProvisioningState *string `json:"provisioningState,omitempty"` } +// ApplicationGatewayBackendHealth is list of +// ApplicationGatewayBackendHealthPool resources. +type ApplicationGatewayBackendHealth struct { + autorest.Response `json:"-"` + BackendAddressPools *[]ApplicationGatewayBackendHealthPool `json:"backendAddressPools,omitempty"` +} + +// ApplicationGatewayBackendHealthHTTPSettings is application gateway +// BackendHealthHttp settings. +type ApplicationGatewayBackendHealthHTTPSettings struct { + BackendHTTPSettings *ApplicationGatewayBackendHTTPSettings `json:"backendHttpSettings,omitempty"` + Servers *[]ApplicationGatewayBackendHealthServer `json:"servers,omitempty"` +} + +// ApplicationGatewayBackendHealthPool is application gateway BackendHealth +// pool. +type ApplicationGatewayBackendHealthPool struct { + BackendAddressPool *ApplicationGatewayBackendAddressPool `json:"backendAddressPool,omitempty"` + BackendHTTPSettingsCollection *[]ApplicationGatewayBackendHealthHTTPSettings `json:"backendHttpSettingsCollection,omitempty"` +} + +// ApplicationGatewayBackendHealthServer is application gateway backendhealth +// http settings. +type ApplicationGatewayBackendHealthServer struct { + Address *string `json:"address,omitempty"` + IPConfiguration *SubResource `json:"ipConfiguration,omitempty"` + Health ApplicationGatewayBackendHealthServerHealth `json:"health,omitempty"` +} + // ApplicationGatewayBackendHTTPSettings is backend address pool settings of -// application gateway +// an application gateway. type ApplicationGatewayBackendHTTPSettings struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayBackendHTTPSettingsPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayBackendHTTPSettingsPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewayBackendHTTPSettingsPropertiesFormat is properties of -// Backend address pool settings of application gateway +// Backend address pool settings of an application gateway. type ApplicationGatewayBackendHTTPSettingsPropertiesFormat struct { Port *int32 `json:"port,omitempty"` Protocol ApplicationGatewayProtocol `json:"protocol,omitempty"` @@ -575,16 +656,16 @@ type ApplicationGatewayBackendHTTPSettingsPropertiesFormat struct { } // ApplicationGatewayFrontendIPConfiguration is frontend IP configuration of -// application gateway +// an application gateway. type ApplicationGatewayFrontendIPConfiguration struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayFrontendIPConfigurationPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayFrontendIPConfigurationPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewayFrontendIPConfigurationPropertiesFormat is properties of -// Frontend IP configuration of application gateway +// Frontend IP configuration of an application gateway. type ApplicationGatewayFrontendIPConfigurationPropertiesFormat struct { PrivateIPAddress *string `json:"privateIPAddress,omitempty"` PrivateIPAllocationMethod IPAllocationMethod `json:"privateIPAllocationMethod,omitempty"` @@ -593,31 +674,31 @@ type ApplicationGatewayFrontendIPConfigurationPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewayFrontendPort is frontend Port of application gateway +// ApplicationGatewayFrontendPort is frontend port of an application gateway. type ApplicationGatewayFrontendPort struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayFrontendPortPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayFrontendPortPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewayFrontendPortPropertiesFormat is properties of Frontend -// Port of application gateway +// port of an application gateway. type ApplicationGatewayFrontendPortPropertiesFormat struct { Port *int32 `json:"port,omitempty"` ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewayHTTPListener is http listener of application gateway +// ApplicationGatewayHTTPListener is http listener of an application gateway. type ApplicationGatewayHTTPListener struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayHTTPListenerPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayHTTPListenerPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// ApplicationGatewayHTTPListenerPropertiesFormat is properties of Http -// listener of application gateway +// ApplicationGatewayHTTPListenerPropertiesFormat is properties of HTTP +// listener of an application gateway. type ApplicationGatewayHTTPListenerPropertiesFormat struct { FrontendIPConfiguration *SubResource `json:"frontendIPConfiguration,omitempty"` FrontendPort *SubResource `json:"frontendPort,omitempty"` @@ -628,23 +709,24 @@ type ApplicationGatewayHTTPListenerPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewayIPConfiguration is iP configuration of application gateway +// ApplicationGatewayIPConfiguration is iP configuration of an application +// gateway. Currently 1 public and 1 private IP configuration is allowed. type ApplicationGatewayIPConfiguration struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayIPConfigurationPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayIPConfigurationPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewayIPConfigurationPropertiesFormat is properties of IP -// configuration of application gateway +// configuration of an application gateway. type ApplicationGatewayIPConfigurationPropertiesFormat struct { Subnet *SubResource `json:"subnet,omitempty"` ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewayListResult is response for ListApplicationGateways Api -// service call +// ApplicationGatewayListResult is response for ListApplicationGateways API +// service call. type ApplicationGatewayListResult struct { autorest.Response `json:"-"` Value *[]ApplicationGateway `json:"value,omitempty"` @@ -663,17 +745,17 @@ func (client ApplicationGatewayListResult) ApplicationGatewayListResultPreparer( autorest.WithBaseURL(to.String(client.NextLink))) } -// ApplicationGatewayPathRule is path rule of URL path map of application -// gateway +// ApplicationGatewayPathRule is path rule of URL path map of an application +// gateway. type ApplicationGatewayPathRule struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayPathRulePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayPathRulePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// ApplicationGatewayPathRulePropertiesFormat is properties of probe of -// application gateway +// ApplicationGatewayPathRulePropertiesFormat is properties of probe of an +// application gateway. type ApplicationGatewayPathRulePropertiesFormat struct { Paths *[]string `json:"paths,omitempty"` BackendAddressPool *SubResource `json:"backendAddressPool,omitempty"` @@ -681,16 +763,16 @@ type ApplicationGatewayPathRulePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewayProbe is probe of application gateway +// ApplicationGatewayProbe is probe of the application gateway. type ApplicationGatewayProbe struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayProbePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayProbePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// ApplicationGatewayProbePropertiesFormat is properties of probe of -// application gateway +// ApplicationGatewayProbePropertiesFormat is properties of probe of an +// application gateway. type ApplicationGatewayProbePropertiesFormat struct { Protocol ApplicationGatewayProtocol `json:"protocol,omitempty"` Host *string `json:"host,omitempty"` @@ -701,37 +783,38 @@ type ApplicationGatewayProbePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewayPropertiesFormat is properties of Application Gateway +// ApplicationGatewayPropertiesFormat is properties of the application gateway. type ApplicationGatewayPropertiesFormat struct { - Sku *ApplicationGatewaySku `json:"sku,omitempty"` - SslPolicy *ApplicationGatewaySslPolicy `json:"sslPolicy,omitempty"` - OperationalState ApplicationGatewayOperationalState `json:"operationalState,omitempty"` - GatewayIPConfigurations *[]ApplicationGatewayIPConfiguration `json:"gatewayIPConfigurations,omitempty"` - AuthenticationCertificates *[]ApplicationGatewayAuthenticationCertificate `json:"authenticationCertificates,omitempty"` - SslCertificates *[]ApplicationGatewaySslCertificate `json:"sslCertificates,omitempty"` - FrontendIPConfigurations *[]ApplicationGatewayFrontendIPConfiguration `json:"frontendIPConfigurations,omitempty"` - FrontendPorts *[]ApplicationGatewayFrontendPort `json:"frontendPorts,omitempty"` - Probes *[]ApplicationGatewayProbe `json:"probes,omitempty"` - BackendAddressPools *[]ApplicationGatewayBackendAddressPool `json:"backendAddressPools,omitempty"` - BackendHTTPSettingsCollection *[]ApplicationGatewayBackendHTTPSettings `json:"backendHttpSettingsCollection,omitempty"` - HTTPListeners *[]ApplicationGatewayHTTPListener `json:"httpListeners,omitempty"` - URLPathMaps *[]ApplicationGatewayURLPathMap `json:"urlPathMaps,omitempty"` - RequestRoutingRules *[]ApplicationGatewayRequestRoutingRule `json:"requestRoutingRules,omitempty"` - ResourceGUID *string `json:"resourceGuid,omitempty"` - ProvisioningState *string `json:"provisioningState,omitempty"` + Sku *ApplicationGatewaySku `json:"sku,omitempty"` + SslPolicy *ApplicationGatewaySslPolicy `json:"sslPolicy,omitempty"` + OperationalState ApplicationGatewayOperationalState `json:"operationalState,omitempty"` + GatewayIPConfigurations *[]ApplicationGatewayIPConfiguration `json:"gatewayIPConfigurations,omitempty"` + AuthenticationCertificates *[]ApplicationGatewayAuthenticationCertificate `json:"authenticationCertificates,omitempty"` + SslCertificates *[]ApplicationGatewaySslCertificate `json:"sslCertificates,omitempty"` + FrontendIPConfigurations *[]ApplicationGatewayFrontendIPConfiguration `json:"frontendIPConfigurations,omitempty"` + FrontendPorts *[]ApplicationGatewayFrontendPort `json:"frontendPorts,omitempty"` + Probes *[]ApplicationGatewayProbe `json:"probes,omitempty"` + BackendAddressPools *[]ApplicationGatewayBackendAddressPool `json:"backendAddressPools,omitempty"` + BackendHTTPSettingsCollection *[]ApplicationGatewayBackendHTTPSettings `json:"backendHttpSettingsCollection,omitempty"` + HTTPListeners *[]ApplicationGatewayHTTPListener `json:"httpListeners,omitempty"` + URLPathMaps *[]ApplicationGatewayURLPathMap `json:"urlPathMaps,omitempty"` + RequestRoutingRules *[]ApplicationGatewayRequestRoutingRule `json:"requestRoutingRules,omitempty"` + WebApplicationFirewallConfiguration *ApplicationGatewayWebApplicationFirewallConfiguration `json:"webApplicationFirewallConfiguration,omitempty"` + ResourceGUID *string `json:"resourceGuid,omitempty"` + ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewayRequestRoutingRule is request routing rule of application -// gateway +// ApplicationGatewayRequestRoutingRule is request routing rule of an +// application gateway. type ApplicationGatewayRequestRoutingRule struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayRequestRoutingRulePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayRequestRoutingRulePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewayRequestRoutingRulePropertiesFormat is properties of -// Request routing rule of application gateway +// request routing rule of the application gateway. type ApplicationGatewayRequestRoutingRulePropertiesFormat struct { RuleType ApplicationGatewayRequestRoutingRuleType `json:"ruleType,omitempty"` BackendAddressPool *SubResource `json:"backendAddressPool,omitempty"` @@ -741,23 +824,24 @@ type ApplicationGatewayRequestRoutingRulePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewaySku is sKU of application gateway +// ApplicationGatewaySku is sKU of an application gateway type ApplicationGatewaySku struct { Name ApplicationGatewaySkuName `json:"name,omitempty"` Tier ApplicationGatewayTier `json:"tier,omitempty"` Capacity *int32 `json:"capacity,omitempty"` } -// ApplicationGatewaySslCertificate is sSL certificates of application gateway +// ApplicationGatewaySslCertificate is sSL certificates of an application +// gateway. type ApplicationGatewaySslCertificate struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewaySslCertificatePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewaySslCertificatePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewaySslCertificatePropertiesFormat is properties of SSL -// certificates of application gateway +// certificates of an application gateway. type ApplicationGatewaySslCertificatePropertiesFormat struct { Data *string `json:"data,omitempty"` Password *string `json:"password,omitempty"` @@ -765,21 +849,22 @@ type ApplicationGatewaySslCertificatePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// ApplicationGatewaySslPolicy is application gateway SSL policy +// ApplicationGatewaySslPolicy is application gateway SSL policy. type ApplicationGatewaySslPolicy struct { DisabledSslProtocols *[]ApplicationGatewaySslProtocol `json:"disabledSslProtocols,omitempty"` } -// ApplicationGatewayURLPathMap is urlPathMap of application gateway +// ApplicationGatewayURLPathMap is urlPathMaps give a url path to the backend +// mapping information for PathBasedRouting. type ApplicationGatewayURLPathMap struct { - ID *string `json:"id,omitempty"` - Properties *ApplicationGatewayURLPathMapPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ApplicationGatewayURLPathMapPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ApplicationGatewayURLPathMapPropertiesFormat is properties of UrlPathMap of -// application gateway +// the application gateway. type ApplicationGatewayURLPathMapPropertiesFormat struct { DefaultBackendAddressPool *SubResource `json:"defaultBackendAddressPool,omitempty"` DefaultBackendHTTPSettings *SubResource `json:"defaultBackendHttpSettings,omitempty"` @@ -787,8 +872,15 @@ type ApplicationGatewayURLPathMapPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// AuthorizationListResult is response for ListAuthorizations Api service -// callRetrieves all authorizations that belongs to an ExpressRouteCircuit +// ApplicationGatewayWebApplicationFirewallConfiguration is application +// gateway web application firewall configuration. +type ApplicationGatewayWebApplicationFirewallConfiguration struct { + Enabled *bool `json:"enabled,omitempty"` + FirewallMode ApplicationGatewayFirewallMode `json:"firewallMode,omitempty"` +} + +// AuthorizationListResult is response for ListAuthorizations API service call +// retrieves all authorizations that belongs to an ExpressRouteCircuit. type AuthorizationListResult struct { autorest.Response `json:"-"` Value *[]ExpressRouteCircuitAuthorization `json:"value,omitempty"` @@ -816,10 +908,10 @@ type AuthorizationPropertiesFormat struct { // AzureAsyncOperationResult is the response body contains the status of the // specified asynchronous operation, indicating whether it has succeeded, is -// inprogress, or has failed. Note that this status is distinct from the HTTP -// status code returned for the Get Operation Status operation itself. If the -// asynchronous operation succeeded, the response body includes the HTTP -// status code for the successful request. If the asynchronous operation +// in progress, or has failed. Note that this status is distinct from the +// HTTP status code returned for the Get Operation Status operation itself. +// If the asynchronous operation succeeded, the response body includes the +// HTTP status code for the successful request. If the asynchronous operation // failed, the response body includes the HTTP status code for the failed // request and error information regarding the failure. type AzureAsyncOperationResult struct { @@ -827,15 +919,16 @@ type AzureAsyncOperationResult struct { Error *Error `json:"error,omitempty"` } -// BackendAddressPool is pool of backend IP addresseses +// BackendAddressPool is pool of backend IP addresses. type BackendAddressPool struct { - ID *string `json:"id,omitempty"` - Properties *BackendAddressPoolPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *BackendAddressPoolPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// BackendAddressPoolPropertiesFormat is properties of BackendAddressPool +// BackendAddressPoolPropertiesFormat is properties of the backend address +// pool. type BackendAddressPoolPropertiesFormat struct { BackendIPConfigurations *[]InterfaceIPConfiguration `json:"backendIPConfigurations,omitempty"` LoadBalancingRules *[]SubResource `json:"loadBalancingRules,omitempty"` @@ -853,59 +946,52 @@ type BgpSettings struct { // ConnectionResetSharedKey is type ConnectionResetSharedKey struct { autorest.Response `json:"-"` - KeyLength *int64 `json:"keyLength,omitempty"` + KeyLength *int32 `json:"keyLength,omitempty"` } -// ConnectionSharedKey is response for GetConnectionSharedKey Api servive call +// ConnectionSharedKey is response for GetConnectionSharedKey API service call type ConnectionSharedKey struct { autorest.Response `json:"-"` Value *string `json:"value,omitempty"` } -// ConnectionSharedKeyResult is response for CheckConnectionSharedKey Api -// servive call -type ConnectionSharedKeyResult struct { - autorest.Response `json:"-"` - Value *string `json:"value,omitempty"` -} - -// DhcpOptions is dHCPOptions contains an array of DNS servers available to -// VMs deployed in the virtual networkStandard DHCP option for a subnet +// DhcpOptions is dhcpOptions contains an array of DNS servers available to +// VMs deployed in the virtual network. Standard DHCP option for a subnet // overrides VNET DHCP options. type DhcpOptions struct { DNSServers *[]string `json:"dnsServers,omitempty"` } -// DNSNameAvailabilityResult is response for CheckDnsNameAvailability Api -// servive call +// DNSNameAvailabilityResult is response for the CheckDnsNameAvailability API +// service call. type DNSNameAvailabilityResult struct { autorest.Response `json:"-"` Available *bool `json:"available,omitempty"` } -// EffectiveNetworkSecurityGroup is effective NetworkSecurityGroup +// EffectiveNetworkSecurityGroup is effective network security group. type EffectiveNetworkSecurityGroup struct { NetworkSecurityGroup *SubResource `json:"networkSecurityGroup,omitempty"` Association *EffectiveNetworkSecurityGroupAssociation `json:"association,omitempty"` EffectiveSecurityRules *[]EffectiveNetworkSecurityRule `json:"effectiveSecurityRules,omitempty"` } -// EffectiveNetworkSecurityGroupAssociation is effective NetworkSecurityGroup -// association +// EffectiveNetworkSecurityGroupAssociation is the effective network security +// group association. type EffectiveNetworkSecurityGroupAssociation struct { Subnet *SubResource `json:"subnet,omitempty"` NetworkInterface *SubResource `json:"networkInterface,omitempty"` } // EffectiveNetworkSecurityGroupListResult is response for list effective -// network security groups api servive call +// network security groups API service call. type EffectiveNetworkSecurityGroupListResult struct { autorest.Response `json:"-"` Value *[]EffectiveNetworkSecurityGroup `json:"value,omitempty"` NextLink *string `json:"nextLink,omitempty"` } -// EffectiveNetworkSecurityRule is effective NetworkSecurityRules +// EffectiveNetworkSecurityRule is effective network security rules. type EffectiveNetworkSecurityRule struct { Name *string `json:"name,omitempty"` Protocol SecurityRuleProtocol `json:"protocol,omitempty"` @@ -930,8 +1016,8 @@ type EffectiveRoute struct { NextHopType RouteNextHopType `json:"nextHopType,omitempty"` } -// EffectiveRouteListResult is response for list effective route api servive -// call +// EffectiveRouteListResult is response for list effective route API service +// call. type EffectiveRouteListResult struct { autorest.Response `json:"-"` Value *[]EffectiveRoute `json:"value,omitempty"` @@ -956,19 +1042,19 @@ type ErrorDetails struct { // ExpressRouteCircuit is expressRouteCircuit resource type ExpressRouteCircuit struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Sku *ExpressRouteCircuitSku `json:"sku,omitempty"` - Properties *ExpressRouteCircuitPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + Sku *ExpressRouteCircuitSku `json:"sku,omitempty"` + *ExpressRouteCircuitPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } -// ExpressRouteCircuitArpTable is the arp table associated with the -// ExpressRouteCircuit +// ExpressRouteCircuitArpTable is the ARP table associated with the +// ExpressRouteCircuit. type ExpressRouteCircuitArpTable struct { Age *int32 `json:"age,omitempty"` Interface *string `json:"interface,omitempty"` @@ -976,18 +1062,18 @@ type ExpressRouteCircuitArpTable struct { MacAddress *string `json:"macAddress,omitempty"` } -// ExpressRouteCircuitAuthorization is authorization in a ExpressRouteCircuit -// resource +// ExpressRouteCircuitAuthorization is authorization in an ExpressRouteCircuit +// resource. type ExpressRouteCircuitAuthorization struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Properties *AuthorizationPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + *AuthorizationPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// ExpressRouteCircuitListResult is response for ListExpressRouteCircuit Api -// service call +// ExpressRouteCircuitListResult is response for ListExpressRouteCircuit API +// service call. type ExpressRouteCircuitListResult struct { autorest.Response `json:"-"` Value *[]ExpressRouteCircuit `json:"value,omitempty"` @@ -1006,16 +1092,16 @@ func (client ExpressRouteCircuitListResult) ExpressRouteCircuitListResultPrepare autorest.WithBaseURL(to.String(client.NextLink))) } -// ExpressRouteCircuitPeering is peering in a ExpressRouteCircuit resource +// ExpressRouteCircuitPeering is peering in an ExpressRouteCircuit resource. type ExpressRouteCircuitPeering struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Properties *ExpressRouteCircuitPeeringPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + *ExpressRouteCircuitPeeringPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// ExpressRouteCircuitPeeringConfig is specfies the peering config +// ExpressRouteCircuitPeeringConfig is specifies the peering configuration. type ExpressRouteCircuitPeeringConfig struct { AdvertisedPublicPrefixes *[]string `json:"advertisedPublicPrefixes,omitempty"` AdvertisedPublicPrefixesState ExpressRouteCircuitPeeringAdvertisedPublicPrefixState `json:"advertisedPublicPrefixesState,omitempty"` @@ -1023,8 +1109,8 @@ type ExpressRouteCircuitPeeringConfig struct { RoutingRegistryName *string `json:"routingRegistryName,omitempty"` } -// ExpressRouteCircuitPeeringListResult is response for ListPeering Api -// service callRetrieves all Peerings that belongs to an ExpressRouteCircuit +// ExpressRouteCircuitPeeringListResult is response for ListPeering API +// service call retrieves all peerings that belong to an ExpressRouteCircuit. type ExpressRouteCircuitPeeringListResult struct { autorest.Response `json:"-"` Value *[]ExpressRouteCircuitPeering `json:"value,omitempty"` @@ -1062,7 +1148,7 @@ type ExpressRouteCircuitPeeringPropertiesFormat struct { LastModifiedBy *string `json:"lastModifiedBy,omitempty"` } -// ExpressRouteCircuitPropertiesFormat is properties of ExpressRouteCircuit +// ExpressRouteCircuitPropertiesFormat is properties of ExpressRouteCircuit. type ExpressRouteCircuitPropertiesFormat struct { AllowClassicOperations *bool `json:"allowClassicOperations,omitempty"` CircuitProvisioningState *string `json:"circuitProvisioningState,omitempty"` @@ -1087,7 +1173,7 @@ type ExpressRouteCircuitRoutesTable struct { } // ExpressRouteCircuitRoutesTableSummary is the routes table associated with -// the ExpressRouteCircuit +// the ExpressRouteCircuit. type ExpressRouteCircuitRoutesTableSummary struct { Neighbor *string `json:"neighbor,omitempty"` V *int32 `json:"v,omitempty"` @@ -1097,7 +1183,7 @@ type ExpressRouteCircuitRoutesTableSummary struct { } // ExpressRouteCircuitsArpTableListResult is response for ListArpTable -// associated with the Express Route Circuits Api +// associated with the Express Route Circuits API. type ExpressRouteCircuitsArpTableListResult struct { autorest.Response `json:"-"` Value *[]ExpressRouteCircuitArpTable `json:"value,omitempty"` @@ -1105,14 +1191,14 @@ type ExpressRouteCircuitsArpTableListResult struct { } // ExpressRouteCircuitServiceProviderProperties is contains -// ServiceProviderProperties in an ExpressRouteCircuit +// ServiceProviderProperties in an ExpressRouteCircuit. type ExpressRouteCircuitServiceProviderProperties struct { ServiceProviderName *string `json:"serviceProviderName,omitempty"` PeeringLocation *string `json:"peeringLocation,omitempty"` BandwidthInMbps *int32 `json:"bandwidthInMbps,omitempty"` } -// ExpressRouteCircuitSku is contains sku in an ExpressRouteCircuit +// ExpressRouteCircuitSku is contains SKU in an ExpressRouteCircuit. type ExpressRouteCircuitSku struct { Name *string `json:"name,omitempty"` Tier ExpressRouteCircuitSkuTier `json:"tier,omitempty"` @@ -1120,7 +1206,7 @@ type ExpressRouteCircuitSku struct { } // ExpressRouteCircuitsRoutesTableListResult is response for ListRoutesTable -// associated with the Express Route Circuits Api +// associated with the Express Route Circuits API. type ExpressRouteCircuitsRoutesTableListResult struct { autorest.Response `json:"-"` Value *[]ExpressRouteCircuitRoutesTable `json:"value,omitempty"` @@ -1128,14 +1214,14 @@ type ExpressRouteCircuitsRoutesTableListResult struct { } // ExpressRouteCircuitsRoutesTableSummaryListResult is response for -// ListRoutesTable associated with the Express Route Circuits Api +// ListRoutesTable associated with the Express Route Circuits API. type ExpressRouteCircuitsRoutesTableSummaryListResult struct { autorest.Response `json:"-"` Value *[]ExpressRouteCircuitRoutesTableSummary `json:"value,omitempty"` NextLink *string `json:"nextLink,omitempty"` } -// ExpressRouteCircuitStats is contains Stats associated with the peering +// ExpressRouteCircuitStats is contains stats associated with the peering. type ExpressRouteCircuitStats struct { autorest.Response `json:"-"` PrimarybytesIn *int64 `json:"primarybytesIn,omitempty"` @@ -1144,25 +1230,25 @@ type ExpressRouteCircuitStats struct { SecondarybytesOut *int64 `json:"secondarybytesOut,omitempty"` } -// ExpressRouteServiceProvider is expressRouteResourceProvider object +// ExpressRouteServiceProvider is a ExpressRouteResourceProvider object. type ExpressRouteServiceProvider struct { - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *ExpressRouteServiceProviderPropertiesFormat `json:"properties,omitempty"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *ExpressRouteServiceProviderPropertiesFormat `json:"properties,omitempty"` } -// ExpressRouteServiceProviderBandwidthsOffered is contains Bandwidths offered -// in ExpressRouteServiceProviders +// ExpressRouteServiceProviderBandwidthsOffered is contains bandwidths offered +// in ExpressRouteServiceProvider resources. type ExpressRouteServiceProviderBandwidthsOffered struct { OfferName *string `json:"offerName,omitempty"` ValueInMbps *int32 `json:"valueInMbps,omitempty"` } -// ExpressRouteServiceProviderListResult is response for -// ListExpressRouteServiceProvider Api service call +// ExpressRouteServiceProviderListResult is response for the +// ListExpressRouteServiceProvider API service call. type ExpressRouteServiceProviderListResult struct { autorest.Response `json:"-"` Value *[]ExpressRouteServiceProvider `json:"value,omitempty"` @@ -1182,23 +1268,23 @@ func (client ExpressRouteServiceProviderListResult) ExpressRouteServiceProviderL } // ExpressRouteServiceProviderPropertiesFormat is properties of -// ExpressRouteServiceProvider +// ExpressRouteServiceProvider. type ExpressRouteServiceProviderPropertiesFormat struct { PeeringLocations *[]string `json:"peeringLocations,omitempty"` BandwidthsOffered *[]ExpressRouteServiceProviderBandwidthsOffered `json:"bandwidthsOffered,omitempty"` ProvisioningState *string `json:"provisioningState,omitempty"` } -// FrontendIPConfiguration is frontend IP address of the load balancer +// FrontendIPConfiguration is frontend IP address of the load balancer. type FrontendIPConfiguration struct { - ID *string `json:"id,omitempty"` - Properties *FrontendIPConfigurationPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *FrontendIPConfigurationPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // FrontendIPConfigurationPropertiesFormat is properties of Frontend IP -// Configuration of the load balancer +// Configuration of the load balancer. type FrontendIPConfigurationPropertiesFormat struct { InboundNatRules *[]SubResource `json:"inboundNatRules,omitempty"` InboundNatPools *[]SubResource `json:"inboundNatPools,omitempty"` @@ -1211,15 +1297,15 @@ type FrontendIPConfigurationPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// InboundNatPool is inbound NAT pool of the loadbalancer +// InboundNatPool is inbound NAT pool of the load balancer. type InboundNatPool struct { - ID *string `json:"id,omitempty"` - Properties *InboundNatPoolPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *InboundNatPoolPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// InboundNatPoolPropertiesFormat is properties of Inbound NAT pool +// InboundNatPoolPropertiesFormat is properties of Inbound NAT pool. type InboundNatPoolPropertiesFormat struct { FrontendIPConfiguration *SubResource `json:"frontendIPConfiguration,omitempty"` Protocol TransportProtocol `json:"protocol,omitempty"` @@ -1229,15 +1315,15 @@ type InboundNatPoolPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// InboundNatRule is inbound NAT rule of the loadbalancer +// InboundNatRule is inbound NAT rule of the load balancer. type InboundNatRule struct { - ID *string `json:"id,omitempty"` - Properties *InboundNatRulePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *InboundNatRulePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// InboundNatRulePropertiesFormat is properties of Inbound NAT rule +// InboundNatRulePropertiesFormat is properties of the inbound NAT rule. type InboundNatRulePropertiesFormat struct { FrontendIPConfiguration *SubResource `json:"frontendIPConfiguration,omitempty"` BackendIPConfiguration *InterfaceIPConfiguration `json:"backendIPConfiguration,omitempty"` @@ -1249,19 +1335,19 @@ type InboundNatRulePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// Interface is a NetworkInterface in a resource group +// Interface is a network interface in a resource group. type Interface struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *InterfacePropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *InterfacePropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } -// InterfaceDNSSettings is dns settings of a network interface +// InterfaceDNSSettings is dNS settings of a network interface. type InterfaceDNSSettings struct { DNSServers *[]string `json:"dnsServers,omitempty"` AppliedDNSServers *[]string `json:"appliedDnsServers,omitempty"` @@ -1270,15 +1356,15 @@ type InterfaceDNSSettings struct { InternalDomainNameSuffix *string `json:"internalDomainNameSuffix,omitempty"` } -// InterfaceIPConfiguration is iPConfiguration in a NetworkInterface +// InterfaceIPConfiguration is iPConfiguration in a network interface. type InterfaceIPConfiguration struct { - ID *string `json:"id,omitempty"` - Properties *InterfaceIPConfigurationPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *InterfaceIPConfigurationPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// InterfaceIPConfigurationPropertiesFormat is properties of IPConfiguration +// InterfaceIPConfigurationPropertiesFormat is properties of IP configuration. type InterfaceIPConfigurationPropertiesFormat struct { ApplicationGatewayBackendAddressPools *[]ApplicationGatewayBackendAddressPool `json:"applicationGatewayBackendAddressPools,omitempty"` LoadBalancerBackendAddressPools *[]BackendAddressPool `json:"loadBalancerBackendAddressPools,omitempty"` @@ -1292,7 +1378,8 @@ type InterfaceIPConfigurationPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// InterfaceListResult is response for ListNetworkInterface Api service call +// InterfaceListResult is response for the ListNetworkInterface API service +// call. type InterfaceListResult struct { autorest.Response `json:"-"` Value *[]Interface `json:"value,omitempty"` @@ -1313,18 +1400,19 @@ func (client InterfaceListResult) InterfaceListResultPreparer() (*http.Request, // InterfacePropertiesFormat is networkInterface properties. type InterfacePropertiesFormat struct { - VirtualMachine *SubResource `json:"virtualMachine,omitempty"` - NetworkSecurityGroup *SecurityGroup `json:"networkSecurityGroup,omitempty"` - IPConfigurations *[]InterfaceIPConfiguration `json:"ipConfigurations,omitempty"` - DNSSettings *InterfaceDNSSettings `json:"dnsSettings,omitempty"` - MacAddress *string `json:"macAddress,omitempty"` - Primary *bool `json:"primary,omitempty"` - EnableIPForwarding *bool `json:"enableIPForwarding,omitempty"` - ResourceGUID *string `json:"resourceGuid,omitempty"` - ProvisioningState *string `json:"provisioningState,omitempty"` + VirtualMachine *SubResource `json:"virtualMachine,omitempty"` + NetworkSecurityGroup *SecurityGroup `json:"networkSecurityGroup,omitempty"` + IPConfigurations *[]InterfaceIPConfiguration `json:"ipConfigurations,omitempty"` + DNSSettings *InterfaceDNSSettings `json:"dnsSettings,omitempty"` + MacAddress *string `json:"macAddress,omitempty"` + Primary *bool `json:"primary,omitempty"` + EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty"` + EnableIPForwarding *bool `json:"enableIPForwarding,omitempty"` + ResourceGUID *string `json:"resourceGuid,omitempty"` + ProvisioningState *string `json:"provisioningState,omitempty"` } -// IPAddressAvailabilityResult is response for CheckIPAddressAvailability Api +// IPAddressAvailabilityResult is response for CheckIPAddressAvailability API // service call type IPAddressAvailabilityResult struct { autorest.Response `json:"-"` @@ -1334,13 +1422,13 @@ type IPAddressAvailabilityResult struct { // IPConfiguration is iPConfiguration type IPConfiguration struct { - ID *string `json:"id,omitempty"` - Properties *IPConfigurationPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *IPConfigurationPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// IPConfigurationPropertiesFormat is properties of IPConfiguration +// IPConfigurationPropertiesFormat is properties of IP configuration. type IPConfigurationPropertiesFormat struct { PrivateIPAddress *string `json:"privateIPAddress,omitempty"` PrivateIPAllocationMethod IPAllocationMethod `json:"privateIPAllocationMethod,omitempty"` @@ -1351,17 +1439,17 @@ type IPConfigurationPropertiesFormat struct { // LoadBalancer is loadBalancer resource type LoadBalancer struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *LoadBalancerPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *LoadBalancerPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } -// LoadBalancerListResult is response for ListLoadBalancers Api service call +// LoadBalancerListResult is response for ListLoadBalancers API service call. type LoadBalancerListResult struct { autorest.Response `json:"-"` Value *[]LoadBalancer `json:"value,omitempty"` @@ -1380,7 +1468,7 @@ func (client LoadBalancerListResult) LoadBalancerListResultPreparer() (*http.Req autorest.WithBaseURL(to.String(client.NextLink))) } -// LoadBalancerPropertiesFormat is properties of Load Balancer +// LoadBalancerPropertiesFormat is properties of the load balancer. type LoadBalancerPropertiesFormat struct { FrontendIPConfigurations *[]FrontendIPConfiguration `json:"frontendIPConfigurations,omitempty"` BackendAddressPools *[]BackendAddressPool `json:"backendAddressPools,omitempty"` @@ -1393,15 +1481,15 @@ type LoadBalancerPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// LoadBalancingRule is rules of the load balancer +// LoadBalancingRule is a loag balancing rule for a load balancer. type LoadBalancingRule struct { - ID *string `json:"id,omitempty"` - Properties *LoadBalancingRulePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *LoadBalancingRulePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// LoadBalancingRulePropertiesFormat is properties of the load balancer +// LoadBalancingRulePropertiesFormat is properties of the load balancer. type LoadBalancingRulePropertiesFormat struct { FrontendIPConfiguration *SubResource `json:"frontendIPConfiguration,omitempty"` BackendAddressPool *SubResource `json:"backendAddressPool,omitempty"` @@ -1417,18 +1505,18 @@ type LoadBalancingRulePropertiesFormat struct { // LocalNetworkGateway is a common class for general resource information type LocalNetworkGateway struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *LocalNetworkGatewayPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *LocalNetworkGatewayPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } -// LocalNetworkGatewayListResult is response for ListLocalNetworkGateways Api -// service call +// LocalNetworkGatewayListResult is response for ListLocalNetworkGateways API +// service call. type LocalNetworkGatewayListResult struct { autorest.Response `json:"-"` Value *[]LocalNetworkGateway `json:"value,omitempty"` @@ -1456,15 +1544,15 @@ type LocalNetworkGatewayPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// OutboundNatRule is outbound NAT pool of the loadbalancer +// OutboundNatRule is outbound NAT pool of the load balancer. type OutboundNatRule struct { - ID *string `json:"id,omitempty"` - Properties *OutboundNatRulePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *OutboundNatRulePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// OutboundNatRulePropertiesFormat is outbound NAT pool of the loadbalancer +// OutboundNatRulePropertiesFormat is outbound NAT pool of the load balancer. type OutboundNatRulePropertiesFormat struct { AllocatedOutboundPorts *int32 `json:"allocatedOutboundPorts,omitempty"` FrontendIPConfigurations *[]SubResource `json:"frontendIPConfigurations,omitempty"` @@ -1472,12 +1560,12 @@ type OutboundNatRulePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// Probe is load balancer Probe +// Probe is a load balancer probe. type Probe struct { - ID *string `json:"id,omitempty"` - Properties *ProbePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ProbePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // ProbePropertiesFormat is @@ -1491,28 +1579,28 @@ type ProbePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// PublicIPAddress is publicIPAddress resource +// PublicIPAddress is public IP address resource. type PublicIPAddress struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *PublicIPAddressPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *PublicIPAddressPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } -// PublicIPAddressDNSSettings is contains FQDN of the DNS record associated -// with the public IP address +// PublicIPAddressDNSSettings is contains the FQDN of the DNS record +// associated with the public IP address. type PublicIPAddressDNSSettings struct { DomainNameLabel *string `json:"domainNameLabel,omitempty"` Fqdn *string `json:"fqdn,omitempty"` ReverseFqdn *string `json:"reverseFqdn,omitempty"` } -// PublicIPAddressListResult is response for ListPublicIpAddresses Api service -// call +// PublicIPAddressListResult is response for ListPublicIpAddresses API service +// call. type PublicIPAddressListResult struct { autorest.Response `json:"-"` Value *[]PublicIPAddress `json:"value,omitempty"` @@ -1531,7 +1619,7 @@ func (client PublicIPAddressListResult) PublicIPAddressListResultPreparer() (*ht autorest.WithBaseURL(to.String(client.NextLink))) } -// PublicIPAddressPropertiesFormat is publicIpAddress properties +// PublicIPAddressPropertiesFormat is public IP address properties. type PublicIPAddressPropertiesFormat struct { PublicIPAllocationMethod IPAllocationMethod `json:"publicIPAllocationMethod,omitempty"` PublicIPAddressVersion IPVersion `json:"publicIPAddressVersion,omitempty"` @@ -1552,15 +1640,15 @@ type Resource struct { Tags *map[string]*string `json:"tags,omitempty"` } -// ResourceNavigationLink is resourceNavigationLink resource +// ResourceNavigationLink is resourceNavigationLink resource. type ResourceNavigationLink struct { - ID *string `json:"id,omitempty"` - Properties *ResourceNavigationLinkFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *ResourceNavigationLinkFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// ResourceNavigationLinkFormat is properties of ResourceNavigationLink +// ResourceNavigationLinkFormat is properties of ResourceNavigationLink. type ResourceNavigationLinkFormat struct { LinkedResourceType *string `json:"linkedResourceType,omitempty"` Link *string `json:"link,omitempty"` @@ -1569,14 +1657,14 @@ type ResourceNavigationLinkFormat struct { // Route is route resource type Route struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Properties *RoutePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + *RoutePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// RouteListResult is response for ListRoute Api servive call +// RouteListResult is response for the ListRoute API service call type RouteListResult struct { autorest.Response `json:"-"` Value *[]Route `json:"value,omitempty"` @@ -1603,19 +1691,19 @@ type RoutePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// RouteTable is routeTable resource +// RouteTable is route table resource. type RouteTable struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *RouteTablePropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *RouteTablePropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } -// RouteTableListResult is response for ListRouteTable Api servive call +// RouteTableListResult is response for the ListRouteTable API service call. type RouteTableListResult struct { autorest.Response `json:"-"` Value *[]RouteTable `json:"value,omitempty"` @@ -1641,20 +1729,20 @@ type RouteTablePropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// SecurityGroup is networkSecurityGroup resource +// SecurityGroup is networkSecurityGroup resource. type SecurityGroup struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *SecurityGroupPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *SecurityGroupPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } -// SecurityGroupListResult is response for ListNetworkSecurityGroups Api -// servive call +// SecurityGroupListResult is response for ListNetworkSecurityGroups API +// service call. type SecurityGroupListResult struct { autorest.Response `json:"-"` Value *[]SecurityGroup `json:"value,omitempty"` @@ -1673,7 +1761,7 @@ func (client SecurityGroupListResult) SecurityGroupListResultPreparer() (*http.R autorest.WithBaseURL(to.String(client.NextLink))) } -// SecurityGroupPropertiesFormat is network Security Group resource +// SecurityGroupPropertiesFormat is network Security Group resource. type SecurityGroupPropertiesFormat struct { SecurityRules *[]SecurityRule `json:"securityRules,omitempty"` DefaultSecurityRules *[]SecurityRule `json:"defaultSecurityRules,omitempty"` @@ -1683,17 +1771,17 @@ type SecurityGroupPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// SecurityRule is network security rule +// SecurityRule is network security rule. type SecurityRule struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Properties *SecurityRulePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + *SecurityRulePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// SecurityRuleListResult is response for ListSecurityRule Api service -// callRetrieves all security rules that belongs to a network security group +// SecurityRuleListResult is response for ListSecurityRule API service call. +// Retrieves all security rules that belongs to a network security group. type SecurityRuleListResult struct { autorest.Response `json:"-"` Value *[]SecurityRule `json:"value,omitempty"` @@ -1732,16 +1820,16 @@ type String struct { Value *string `json:"value,omitempty"` } -// Subnet is subnet in a VirtualNework resource +// Subnet is subnet in a virtual network resource. type Subnet struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Properties *SubnetPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + *SubnetPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// SubnetListResult is response for ListSubnets Api service callRetrieves all +// SubnetListResult is response for ListSubnets API service callRetrieves all // subnet that belongs to a virtual network type SubnetListResult struct { autorest.Response `json:"-"` @@ -1776,7 +1864,16 @@ type SubResource struct { ID *string `json:"id,omitempty"` } -// Usage is describes Network Resource Usage. +// TunnelConnectionHealth is virtualNetworkGatewayConnection properties +type TunnelConnectionHealth struct { + Tunnel *string `json:"tunnel,omitempty"` + ConnectionStatus VirtualNetworkGatewayConnectionStatus `json:"connectionStatus,omitempty"` + IngressBytesTransferred *int64 `json:"ingressBytesTransferred,omitempty"` + EgressBytesTransferred *int64 `json:"egressBytesTransferred,omitempty"` + LastConnectionEstablishedUtcTime *string `json:"lastConnectionEstablishedUtcTime,omitempty"` +} + +// Usage is describes network resource usage. type Usage struct { Unit *string `json:"unit,omitempty"` CurrentValue *int64 `json:"currentValue,omitempty"` @@ -1784,13 +1881,13 @@ type Usage struct { Name *UsageName `json:"name,omitempty"` } -// UsageName is the Usage Names. +// UsageName is the usage names. type UsageName struct { Value *string `json:"value,omitempty"` LocalizedValue *string `json:"localizedValue,omitempty"` } -// UsagesListResult is the List Usages operation response. +// UsagesListResult is the list usages operation response. type UsagesListResult struct { autorest.Response `json:"-"` Value *[]Usage `json:"value,omitempty"` @@ -1809,45 +1906,45 @@ func (client UsagesListResult) UsagesListResultPreparer() (*http.Request, error) autorest.WithBaseURL(to.String(client.NextLink))) } -// VirtualNetwork is virtual Network resource +// VirtualNetwork is virtual Network resource. type VirtualNetwork struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *VirtualNetworkPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *VirtualNetworkPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } // VirtualNetworkGateway is a common class for general resource information type VirtualNetworkGateway struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *VirtualNetworkGatewayPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *VirtualNetworkGatewayPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } // VirtualNetworkGatewayConnection is a common class for general resource // information type VirtualNetworkGatewayConnection struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *VirtualNetworkGatewayConnectionPropertiesFormat `json:"properties,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *VirtualNetworkGatewayConnectionPropertiesFormat `json:"properties,omitempty"` + Etag *string `json:"etag,omitempty"` } -// VirtualNetworkGatewayConnectionListResult is response for -// ListVirtualNetworkGatewayConnections Api service call +// VirtualNetworkGatewayConnectionListResult is response for the +// ListVirtualNetworkGatewayConnections API service call type VirtualNetworkGatewayConnectionListResult struct { autorest.Response `json:"-"` Value *[]VirtualNetworkGatewayConnection `json:"value,omitempty"` @@ -1867,7 +1964,7 @@ func (client VirtualNetworkGatewayConnectionListResult) VirtualNetworkGatewayCon } // VirtualNetworkGatewayConnectionPropertiesFormat is -// virtualNeworkGatewayConnection properties +// virtualNetworkGatewayConnection properties type VirtualNetworkGatewayConnectionPropertiesFormat struct { AuthorizationKey *string `json:"authorizationKey,omitempty"` VirtualNetworkGateway1 *VirtualNetworkGateway `json:"virtualNetworkGateway1,omitempty"` @@ -1877,6 +1974,7 @@ type VirtualNetworkGatewayConnectionPropertiesFormat struct { RoutingWeight *int32 `json:"routingWeight,omitempty"` SharedKey *string `json:"sharedKey,omitempty"` ConnectionStatus VirtualNetworkGatewayConnectionStatus `json:"connectionStatus,omitempty"` + TunnelConnectionStatus *[]TunnelConnectionHealth `json:"tunnelConnectionStatus,omitempty"` EgressBytesTransferred *int64 `json:"egressBytesTransferred,omitempty"` IngressBytesTransferred *int64 `json:"ingressBytesTransferred,omitempty"` Peer *SubResource `json:"peer,omitempty"` @@ -1885,13 +1983,13 @@ type VirtualNetworkGatewayConnectionPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// VirtualNetworkGatewayIPConfiguration is ipConfiguration for Virtual network -// gateway +// VirtualNetworkGatewayIPConfiguration is iP configuration for virtual +// network gateway type VirtualNetworkGatewayIPConfiguration struct { - ID *string `json:"id,omitempty"` - Properties *VirtualNetworkGatewayIPConfigurationPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *VirtualNetworkGatewayIPConfigurationPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // VirtualNetworkGatewayIPConfigurationPropertiesFormat is properties of @@ -1903,8 +2001,8 @@ type VirtualNetworkGatewayIPConfigurationPropertiesFormat struct { ProvisioningState *string `json:"provisioningState,omitempty"` } -// VirtualNetworkGatewayListResult is response for ListVirtualNetworkGateways -// Api service call +// VirtualNetworkGatewayListResult is response for the +// ListVirtualNetworkGateways API service call. type VirtualNetworkGatewayListResult struct { autorest.Response `json:"-"` Value *[]VirtualNetworkGateway `json:"value,omitempty"` @@ -1923,12 +2021,13 @@ func (client VirtualNetworkGatewayListResult) VirtualNetworkGatewayListResultPre autorest.WithBaseURL(to.String(client.NextLink))) } -// VirtualNetworkGatewayPropertiesFormat is virtualNeworkGateay properties +// VirtualNetworkGatewayPropertiesFormat is virtualNetworkGateway properties type VirtualNetworkGatewayPropertiesFormat struct { IPConfigurations *[]VirtualNetworkGatewayIPConfiguration `json:"ipConfigurations,omitempty"` GatewayType VirtualNetworkGatewayType `json:"gatewayType,omitempty"` VpnType VpnType `json:"vpnType,omitempty"` EnableBgp *bool `json:"enableBgp,omitempty"` + ActiveActive *bool `json:"activeActive,omitempty"` GatewayDefaultSite *SubResource `json:"gatewayDefaultSite,omitempty"` Sku *VirtualNetworkGatewaySku `json:"sku,omitempty"` VpnClientConfiguration *VpnClientConfiguration `json:"vpnClientConfiguration,omitempty"` @@ -1944,8 +2043,8 @@ type VirtualNetworkGatewaySku struct { Capacity *int32 `json:"capacity,omitempty"` } -// VirtualNetworkListResult is response for ListVirtualNetworks Api servive -// call +// VirtualNetworkListResult is response for the ListVirtualNetworks API +// service call. type VirtualNetworkListResult struct { autorest.Response `json:"-"` Value *[]VirtualNetwork `json:"value,omitempty"` @@ -1964,17 +2063,17 @@ func (client VirtualNetworkListResult) VirtualNetworkListResultPreparer() (*http autorest.WithBaseURL(to.String(client.NextLink))) } -// VirtualNetworkPeering is peerings in a VirtualNework resource +// VirtualNetworkPeering is peerings in a virtual network resource. type VirtualNetworkPeering struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Properties *VirtualNetworkPeeringPropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + *VirtualNetworkPeeringPropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } -// VirtualNetworkPeeringListResult is response for ListSubnets Api service -// callRetrieves all subnet that belongs to a virtual network +// VirtualNetworkPeeringListResult is response for ListSubnets API service +// call. Retrieves all subnets that belong to a virtual network. type VirtualNetworkPeeringListResult struct { autorest.Response `json:"-"` Value *[]VirtualNetworkPeering `json:"value,omitempty"` @@ -2009,12 +2108,12 @@ type VirtualNetworkPropertiesFormat struct { AddressSpace *AddressSpace `json:"addressSpace,omitempty"` DhcpOptions *DhcpOptions `json:"dhcpOptions,omitempty"` Subnets *[]Subnet `json:"subnets,omitempty"` - VirtualNetworkPeerings *[]VirtualNetworkPeering `json:"VirtualNetworkPeerings,omitempty"` + VirtualNetworkPeerings *[]VirtualNetworkPeering `json:"virtualNetworkPeerings,omitempty"` ResourceGUID *string `json:"resourceGuid,omitempty"` ProvisioningState *string `json:"provisioningState,omitempty"` } -// VpnClientConfiguration is vpnClientConfiguration for P2S client +// VpnClientConfiguration is vpnClientConfiguration for P2S client. type VpnClientConfiguration struct { VpnClientAddressPool *AddressSpace `json:"vpnClientAddressPool,omitempty"` VpnClientRootCertificates *[]VpnClientRootCertificate `json:"vpnClientRootCertificates,omitempty"` @@ -2027,16 +2126,16 @@ type VpnClientParameters struct { } // VpnClientRevokedCertificate is vPN client revoked certificate of virtual -// network gateway +// network gateway. type VpnClientRevokedCertificate struct { - ID *string `json:"id,omitempty"` - Properties *VpnClientRevokedCertificatePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *VpnClientRevokedCertificatePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // VpnClientRevokedCertificatePropertiesFormat is properties of the revoked -// VPN client certificate of virtual network gateway +// VPN client certificate of virtual network gateway. type VpnClientRevokedCertificatePropertiesFormat struct { Thumbprint *string `json:"thumbprint,omitempty"` ProvisioningState *string `json:"provisioningState,omitempty"` @@ -2045,10 +2144,10 @@ type VpnClientRevokedCertificatePropertiesFormat struct { // VpnClientRootCertificate is vPN client root certificate of virtual network // gateway type VpnClientRootCertificate struct { - ID *string `json:"id,omitempty"` - Properties *VpnClientRootCertificatePropertiesFormat `json:"properties,omitempty"` - Name *string `json:"name,omitempty"` - Etag *string `json:"etag,omitempty"` + ID *string `json:"id,omitempty"` + *VpnClientRootCertificatePropertiesFormat `json:"properties,omitempty"` + Name *string `json:"name,omitempty"` + Etag *string `json:"etag,omitempty"` } // VpnClientRootCertificatePropertiesFormat is properties of SSL certificates diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/publicipaddresses.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/publicipaddresses.go index 41a8d0e33a..d8ef099a79 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/publicipaddresses.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/publicipaddresses.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // PublicIPAddressesClient is the the Microsoft Azure Network management API // provides a RESTful set of web services that interact with Microsoft Azure -// Networks service to manage your network resrources. The API has entities +// Networks service to manage your network resources. The API has entities // that capture the relationship between an end user and the Microsoft Azure // Networks service. type PublicIPAddressesClient struct { @@ -45,15 +46,43 @@ func NewPublicIPAddressesClientWithBaseURI(baseURI string, subscriptionID string return PublicIPAddressesClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put PublicIPAddress operation creates/updates a -// stable/dynamic PublicIP address This method may poll for completion. -// Polling can be canceled by passing the cancel channel argument. The -// channel will be used to cancel polling and any outstanding HTTP requests. +// CreateOrUpdate creates or updates a static or dynamic public IP address. +// This method may poll for completion. Polling can be canceled by passing +// the cancel channel argument. The channel will be used to cancel polling +// and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. publicIPAddressName is -// the name of the publicIpAddress. parameters is parameters supplied to the -// create/update PublicIPAddress operation +// the name of the public IP address. parameters is parameters supplied to +// the create or update public IP address operation. func (client PublicIPAddressesClient) CreateOrUpdate(resourceGroupName string, publicIPAddressName string, parameters PublicIPAddress, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat.NetworkSecurityGroup", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat.NetworkInterfaces", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat.Subnets", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}, + }}, + {Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat.RouteTable", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat.RouteTable.RouteTablePropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat.RouteTable.RouteTablePropertiesFormat.Subnets", Name: validation.ReadOnly, Rule: true, Chain: nil}}}, + }}, + {Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.Subnet.SubnetPropertiesFormat.IPConfigurations", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}, + }}, + {Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration.IPConfigurationPropertiesFormat.PublicIPAddress", Name: validation.Null, Rule: false, Chain: nil}, + }}, + }}, + {Target: "parameters.PublicIPAddressPropertiesFormat.IPConfiguration", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.PublicIPAddressesClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, publicIPAddressName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -115,10 +144,10 @@ func (client PublicIPAddressesClient) CreateOrUpdateResponder(resp *http.Respons return } -// Delete the delete publicIpAddress operation deletes the specified -// publicIpAddress. This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// Delete deletes the specified public IP address. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. publicIPAddressName is // the name of the subnet. @@ -182,11 +211,10 @@ func (client PublicIPAddressesClient) DeleteResponder(resp *http.Response) (resu return } -// Get the Get publicIpAddress operation retreives information about the -// specified pubicIpAddress +// Get gets the specified public IP address in a specified resource group. // // resourceGroupName is the name of the resource group. publicIPAddressName is -// the name of the subnet. expand is expand references resources. +// the name of the subnet. expand is expands referenced resources. func (client PublicIPAddressesClient) Get(resourceGroupName string, publicIPAddressName string, expand string) (result PublicIPAddress, err error) { req, err := client.GetPreparer(resourceGroupName, publicIPAddressName, expand) if err != nil { @@ -249,8 +277,7 @@ func (client PublicIPAddressesClient) GetResponder(resp *http.Response) (result return } -// List the List publicIpAddress operation retrieves all the publicIpAddresses -// in a resource group. +// List gets all public IP addresses in a resource group. // // resourceGroupName is the name of the resource group. func (client PublicIPAddressesClient) List(resourceGroupName string) (result PublicIPAddressListResult, err error) { @@ -315,7 +342,7 @@ func (client PublicIPAddressesClient) ListResponder(resp *http.Response) (result func (client PublicIPAddressesClient) ListNextResults(lastResults PublicIPAddressListResult) (result PublicIPAddressListResult, err error) { req, err := lastResults.PublicIPAddressListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -324,19 +351,18 @@ func (client PublicIPAddressesClient) ListNextResults(lastResults PublicIPAddres resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "List", resp, "Failure responding to next results request") } return } -// ListAll the List publicIpAddress operation retrieves all the -// publicIpAddresses in a subscription. +// ListAll gets all the public IP addresses in a subscription. func (client PublicIPAddressesClient) ListAll() (result PublicIPAddressListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -398,7 +424,7 @@ func (client PublicIPAddressesClient) ListAllResponder(resp *http.Response) (res func (client PublicIPAddressesClient) ListAllNextResults(lastResults PublicIPAddressListResult) (result PublicIPAddressListResult, err error) { req, err := lastResults.PublicIPAddressListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -407,12 +433,12 @@ func (client PublicIPAddressesClient) ListAllNextResults(lastResults PublicIPAdd resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.PublicIPAddressesClient", "ListAll", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/routes.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/routes.go index 8fd59b7b2b..9aa1cf5054 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/routes.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/routes.go @@ -26,7 +26,7 @@ import ( // RoutesClient is the the Microsoft Azure Network management API provides a // RESTful set of web services that interact with Microsoft Azure Networks -// service to manage your network resrources. The API has entities that +// service to manage your network resources. The API has entities that // capture the relationship between an end user and the Microsoft Azure // Networks service. type RoutesClient struct { @@ -43,14 +43,15 @@ func NewRoutesClientWithBaseURI(baseURI string, subscriptionID string) RoutesCli return RoutesClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put route operation creates/updates a route in the -// specified route table This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// CreateOrUpdate creates or updates a route in the specified route table. +// This method may poll for completion. Polling can be canceled by passing +// the cancel channel argument. The channel will be used to cancel polling +// and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. routeTableName is the // name of the route table. routeName is the name of the route. -// routeParameters is parameters supplied to the create/update routeoperation +// routeParameters is parameters supplied to the create or update route +// operation. func (client RoutesClient) CreateOrUpdate(resourceGroupName string, routeTableName string, routeName string, routeParameters Route, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.CreateOrUpdatePreparer(resourceGroupName, routeTableName, routeName, routeParameters, cancel) if err != nil { @@ -114,10 +115,10 @@ func (client RoutesClient) CreateOrUpdateResponder(resp *http.Response) (result return } -// Delete the delete route operation deletes the specified route from a route -// table. This method may poll for completion. Polling can be canceled by -// passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// Delete deletes the specified route from a route table. This method may poll +// for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. routeTableName is the // name of the route table. routeName is the name of the route. @@ -182,8 +183,7 @@ func (client RoutesClient) DeleteResponder(resp *http.Response) (result autorest return } -// Get the Get route operation retreives information about the specified route -// from the route table. +// Get gets the specified route from a route table. // // resourceGroupName is the name of the resource group. routeTableName is the // name of the route table. routeName is the name of the route. @@ -247,8 +247,7 @@ func (client RoutesClient) GetResponder(resp *http.Response) (result Route, err return } -// List the List network security rule operation retrieves all the routes in a -// route table. +// List gets all routes in a route table. // // resourceGroupName is the name of the resource group. routeTableName is the // name of the route table. @@ -315,7 +314,7 @@ func (client RoutesClient) ListResponder(resp *http.Response) (result RouteListR func (client RoutesClient) ListNextResults(lastResults RouteListResult) (result RouteListResult, err error) { req, err := lastResults.RouteListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.RoutesClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.RoutesClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -324,12 +323,12 @@ func (client RoutesClient) ListNextResults(lastResults RouteListResult) (result resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.RoutesClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.RoutesClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.RoutesClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.RoutesClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/routetables.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/routetables.go index f3473b908d..b53e94ebaa 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/routetables.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/routetables.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // RouteTablesClient is the the Microsoft Azure Network management API // provides a RESTful set of web services that interact with Microsoft Azure -// Networks service to manage your network resrources. The API has entities +// Networks service to manage your network resources. The API has entities // that capture the relationship between an end user and the Microsoft Azure // Networks service. type RouteTablesClient struct { @@ -44,15 +45,22 @@ func NewRouteTablesClientWithBaseURI(baseURI string, subscriptionID string) Rout return RouteTablesClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put RouteTable operation creates/updates a route tablein -// the specified resource group. This method may poll for completion. Polling -// can be canceled by passing the cancel channel argument. The channel will -// be used to cancel polling and any outstanding HTTP requests. +// CreateOrUpdate create or updates a route table in a specified resource +// group. This method may poll for completion. Polling can be canceled by +// passing the cancel channel argument. The channel will be used to cancel +// polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. routeTableName is the -// name of the route table. parameters is parameters supplied to the -// create/update Route Table operation +// name of the route table. parameters is parameters supplied to the create +// or update route table operation. func (client RouteTablesClient) CreateOrUpdate(resourceGroupName string, routeTableName string, parameters RouteTable, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.RouteTablePropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.RouteTablePropertiesFormat.Subnets", Name: validation.ReadOnly, Rule: true, Chain: nil}}}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.RouteTablesClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, routeTableName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -114,10 +122,10 @@ func (client RouteTablesClient) CreateOrUpdateResponder(resp *http.Response) (re return } -// Delete the Delete RouteTable operation deletes the specifed Route Table -// This method may poll for completion. Polling can be canceled by passing -// the cancel channel argument. The channel will be used to cancel polling -// and any outstanding HTTP requests. +// Delete deletes the specified route table. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. routeTableName is the // name of the route table. @@ -181,11 +189,10 @@ func (client RouteTablesClient) DeleteResponder(resp *http.Response) (result aut return } -// Get the Get RouteTables operation retrieves information about the specified -// route table. +// Get gets the specified route table. // // resourceGroupName is the name of the resource group. routeTableName is the -// name of the route table. expand is expand references resources. +// name of the route table. expand is expands referenced resources. func (client RouteTablesClient) Get(resourceGroupName string, routeTableName string, expand string) (result RouteTable, err error) { req, err := client.GetPreparer(resourceGroupName, routeTableName, expand) if err != nil { @@ -248,7 +255,7 @@ func (client RouteTablesClient) GetResponder(resp *http.Response) (result RouteT return } -// List the list RouteTables returns all route tables in a resource group +// List gets all route tables in a resource group. // // resourceGroupName is the name of the resource group. func (client RouteTablesClient) List(resourceGroupName string) (result RouteTableListResult, err error) { @@ -313,7 +320,7 @@ func (client RouteTablesClient) ListResponder(resp *http.Response) (result Route func (client RouteTablesClient) ListNextResults(lastResults RouteTableListResult) (result RouteTableListResult, err error) { req, err := lastResults.RouteTableListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -322,18 +329,18 @@ func (client RouteTablesClient) ListNextResults(lastResults RouteTableListResult resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.RouteTablesClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.RouteTablesClient", "List", resp, "Failure responding to next results request") } return } -// ListAll the list RouteTables returns all route tables in a subscription +// ListAll gets all route tables in a subscription. func (client RouteTablesClient) ListAll() (result RouteTableListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -395,7 +402,7 @@ func (client RouteTablesClient) ListAllResponder(resp *http.Response) (result Ro func (client RouteTablesClient) ListAllNextResults(lastResults RouteTableListResult) (result RouteTableListResult, err error) { req, err := lastResults.RouteTableListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -404,12 +411,12 @@ func (client RouteTablesClient) ListAllNextResults(lastResults RouteTableListRes resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.RouteTablesClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.RouteTablesClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.RouteTablesClient", "ListAll", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/securitygroups.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/securitygroups.go index e6ccc5814e..37898c4d08 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/securitygroups.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/securitygroups.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // SecurityGroupsClient is the the Microsoft Azure Network management API // provides a RESTful set of web services that interact with Microsoft Azure -// Networks service to manage your network resrources. The API has entities +// Networks service to manage your network resources. The API has entities // that capture the relationship between an end user and the Microsoft Azure // Networks service. type SecurityGroupsClient struct { @@ -45,17 +46,25 @@ func NewSecurityGroupsClientWithBaseURI(baseURI string, subscriptionID string) S return SecurityGroupsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put NetworkSecurityGroup operation creates/updates a -// network security groupin the specified resource group. This method may -// poll for completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// CreateOrUpdate creates or updates a network security group in the specified +// resource group. This method may poll for completion. Polling can be +// canceled by passing the cancel channel argument. The channel will be used +// to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. // networkSecurityGroupName is the name of the network security group. -// parameters is parameters supplied to the create/update Network Security -// Group operation +// parameters is parameters supplied to the create or update network security +// group operation. func (client SecurityGroupsClient) CreateOrUpdate(resourceGroupName string, networkSecurityGroupName string, parameters SecurityGroup, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.SecurityGroupPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.SecurityGroupPropertiesFormat.NetworkInterfaces", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.SecurityGroupPropertiesFormat.Subnets", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.SecurityGroupsClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, networkSecurityGroupName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -117,10 +126,10 @@ func (client SecurityGroupsClient) CreateOrUpdateResponder(resp *http.Response) return } -// Delete the Delete NetworkSecurityGroup operation deletes the specifed -// network security group This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// Delete deletes the specified network security group. This method may poll +// for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. // networkSecurityGroupName is the name of the network security group. @@ -184,12 +193,11 @@ func (client SecurityGroupsClient) DeleteResponder(resp *http.Response) (result return } -// Get the Get NetworkSecurityGroups operation retrieves information about the -// specified network security group. +// Get gets the specified network security group. // // resourceGroupName is the name of the resource group. // networkSecurityGroupName is the name of the network security group. expand -// is expand references resources. +// is expands referenced resources. func (client SecurityGroupsClient) Get(resourceGroupName string, networkSecurityGroupName string, expand string) (result SecurityGroup, err error) { req, err := client.GetPreparer(resourceGroupName, networkSecurityGroupName, expand) if err != nil { @@ -252,8 +260,7 @@ func (client SecurityGroupsClient) GetResponder(resp *http.Response) (result Sec return } -// List the list NetworkSecurityGroups returns all network security groups in -// a resource group +// List gets all network security groups in a resource group. // // resourceGroupName is the name of the resource group. func (client SecurityGroupsClient) List(resourceGroupName string) (result SecurityGroupListResult, err error) { @@ -318,7 +325,7 @@ func (client SecurityGroupsClient) ListResponder(resp *http.Response) (result Se func (client SecurityGroupsClient) ListNextResults(lastResults SecurityGroupListResult) (result SecurityGroupListResult, err error) { req, err := lastResults.SecurityGroupListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -327,19 +334,18 @@ func (client SecurityGroupsClient) ListNextResults(lastResults SecurityGroupList resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "List", resp, "Failure responding to next results request") } return } -// ListAll the list NetworkSecurityGroups returns all network security groups -// in a subscription +// ListAll gets all network security groups in a subscription. func (client SecurityGroupsClient) ListAll() (result SecurityGroupListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -401,7 +407,7 @@ func (client SecurityGroupsClient) ListAllResponder(resp *http.Response) (result func (client SecurityGroupsClient) ListAllNextResults(lastResults SecurityGroupListResult) (result SecurityGroupListResult, err error) { req, err := lastResults.SecurityGroupListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -410,12 +416,12 @@ func (client SecurityGroupsClient) ListAllNextResults(lastResults SecurityGroupL resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.SecurityGroupsClient", "ListAll", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/securityrules.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/securityrules.go index 3a2cff19c0..9603c3c1fb 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/securityrules.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/securityrules.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // SecurityRulesClient is the the Microsoft Azure Network management API // provides a RESTful set of web services that interact with Microsoft Azure -// Networks service to manage your network resrources. The API has entities +// Networks service to manage your network resources. The API has entities // that capture the relationship between an end user and the Microsoft Azure // Networks service. type SecurityRulesClient struct { @@ -45,18 +46,26 @@ func NewSecurityRulesClientWithBaseURI(baseURI string, subscriptionID string) Se return SecurityRulesClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put network security rule operation creates/updates a -// security rule in the specified network security group This method may poll -// for completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// CreateOrUpdate creates or updates a security rule in the specified network +// security group. This method may poll for completion. Polling can be +// canceled by passing the cancel channel argument. The channel will be used +// to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. // networkSecurityGroupName is the name of the network security group. // securityRuleName is the name of the security rule. securityRuleParameters -// is parameters supplied to the create/update network security rule -// operation +// is parameters supplied to the create or update network security rule +// operation. func (client SecurityRulesClient) CreateOrUpdate(resourceGroupName string, networkSecurityGroupName string, securityRuleName string, securityRuleParameters SecurityRule, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: securityRuleParameters, + Constraints: []validation.Constraint{{Target: "securityRuleParameters.SecurityRulePropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "securityRuleParameters.SecurityRulePropertiesFormat.SourceAddressPrefix", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "securityRuleParameters.SecurityRulePropertiesFormat.DestinationAddressPrefix", Name: validation.Null, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.SecurityRulesClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, networkSecurityGroupName, securityRuleName, securityRuleParameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.SecurityRulesClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -119,10 +128,10 @@ func (client SecurityRulesClient) CreateOrUpdateResponder(resp *http.Response) ( return } -// Delete the delete network security rule operation deletes the specified -// network security rule. This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// Delete deletes the specified network security rule. This method may poll +// for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. // networkSecurityGroupName is the name of the network security group. @@ -188,8 +197,7 @@ func (client SecurityRulesClient) DeleteResponder(resp *http.Response) (result a return } -// Get the Get NetworkSecurityRule operation retreives information about the -// specified network security rule. +// Get get the specified network security rule. // // resourceGroupName is the name of the resource group. // networkSecurityGroupName is the name of the network security group. @@ -254,8 +262,7 @@ func (client SecurityRulesClient) GetResponder(resp *http.Response) (result Secu return } -// List the List network security rule operation retrieves all the security -// rules in a network security group. +// List gets all security rules in a network security group. // // resourceGroupName is the name of the resource group. // networkSecurityGroupName is the name of the network security group. @@ -322,7 +329,7 @@ func (client SecurityRulesClient) ListResponder(resp *http.Response) (result Sec func (client SecurityRulesClient) ListNextResults(lastResults SecurityRuleListResult) (result SecurityRuleListResult, err error) { req, err := lastResults.SecurityRuleListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.SecurityRulesClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.SecurityRulesClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -331,12 +338,12 @@ func (client SecurityRulesClient) ListNextResults(lastResults SecurityRuleListRe resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.SecurityRulesClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.SecurityRulesClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.SecurityRulesClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.SecurityRulesClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/subnets.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/subnets.go index 7a28d50fa2..6230dbf03d 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/subnets.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/subnets.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // SubnetsClient is the the Microsoft Azure Network management API provides a // RESTful set of web services that interact with Microsoft Azure Networks -// service to manage your network resrources. The API has entities that +// service to manage your network resources. The API has entities that // capture the relationship between an end user and the Microsoft Azure // Networks service. type SubnetsClient struct { @@ -43,16 +44,34 @@ func NewSubnetsClientWithBaseURI(baseURI string, subscriptionID string) SubnetsC return SubnetsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put Subnet operation creates/updates a subnet in -// thespecified virtual network This method may poll for completion. Polling -// can be canceled by passing the cancel channel argument. The channel will -// be used to cancel polling and any outstanding HTTP requests. +// CreateOrUpdate creates or updates a subnet in the specified virtual +// network. This method may poll for completion. Polling can be canceled by +// passing the cancel channel argument. The channel will be used to cancel +// polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. subnetName is the name of the subnet. -// subnetParameters is parameters supplied to the create/update Subnet -// operation +// subnetParameters is parameters supplied to the create or update subnet +// operation. func (client SubnetsClient) CreateOrUpdate(resourceGroupName string, virtualNetworkName string, subnetName string, subnetParameters Subnet, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: subnetParameters, + Constraints: []validation.Constraint{{Target: "subnetParameters.SubnetPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "subnetParameters.SubnetPropertiesFormat.NetworkSecurityGroup", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "subnetParameters.SubnetPropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "subnetParameters.SubnetPropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat.NetworkInterfaces", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "subnetParameters.SubnetPropertiesFormat.NetworkSecurityGroup.SecurityGroupPropertiesFormat.Subnets", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}, + }}, + {Target: "subnetParameters.SubnetPropertiesFormat.RouteTable", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "subnetParameters.SubnetPropertiesFormat.RouteTable.RouteTablePropertiesFormat", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "subnetParameters.SubnetPropertiesFormat.RouteTable.RouteTablePropertiesFormat.Subnets", Name: validation.ReadOnly, Rule: true, Chain: nil}}}, + }}, + {Target: "subnetParameters.SubnetPropertiesFormat.IPConfigurations", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.SubnetsClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, virtualNetworkName, subnetName, subnetParameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.SubnetsClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -115,10 +134,9 @@ func (client SubnetsClient) CreateOrUpdateResponder(resp *http.Response) (result return } -// Delete the delete subnet operation deletes the specified subnet. This -// method may poll for completion. Polling can be canceled by passing the -// cancel channel argument. The channel will be used to cancel polling and -// any outstanding HTTP requests. +// Delete deletes the specified subnet. This method may poll for completion. +// Polling can be canceled by passing the cancel channel argument. The +// channel will be used to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. subnetName is the name of the subnet. @@ -183,12 +201,11 @@ func (client SubnetsClient) DeleteResponder(resp *http.Response) (result autores return } -// Get the Get subnet operation retreives information about the specified -// subnet. +// Get gets the specified subnet by virtual network and resource group. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. subnetName is the name of the subnet. -// expand is expand references resources. +// expand is expands referenced resources. func (client SubnetsClient) Get(resourceGroupName string, virtualNetworkName string, subnetName string, expand string) (result Subnet, err error) { req, err := client.GetPreparer(resourceGroupName, virtualNetworkName, subnetName, expand) if err != nil { @@ -252,8 +269,7 @@ func (client SubnetsClient) GetResponder(resp *http.Response) (result Subnet, er return } -// List the List subnets operation retrieves all the subnets in a virtual -// network. +// List gets all subnets in a virtual network. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. @@ -320,7 +336,7 @@ func (client SubnetsClient) ListResponder(resp *http.Response) (result SubnetLis func (client SubnetsClient) ListNextResults(lastResults SubnetListResult) (result SubnetListResult, err error) { req, err := lastResults.SubnetListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.SubnetsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.SubnetsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -329,12 +345,12 @@ func (client SubnetsClient) ListNextResults(lastResults SubnetListResult) (resul resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.SubnetsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.SubnetsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.SubnetsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.SubnetsClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/usages.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/usages.go index 291172422c..016de70e1c 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/usages.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/usages.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // UsagesClient is the the Microsoft Azure Network management API provides a // RESTful set of web services that interact with Microsoft Azure Networks -// service to manage your network resrources. The API has entities that +// service to manage your network resources. The API has entities that // capture the relationship between an end user and the Microsoft Azure // Networks service. type UsagesClient struct { @@ -45,8 +46,14 @@ func NewUsagesClientWithBaseURI(baseURI string, subscriptionID string) UsagesCli // List lists compute usages for a subscription. // -// location is the location upon which resource usage is queried. +// location is the location where resource usage is queried. func (client UsagesClient) List(location string) (result UsagesListResult, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: location, + Constraints: []validation.Constraint{{Target: "location", Name: validation.Pattern, Rule: `^[-\w\._]+$`, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.UsagesClient", "List") + } + req, err := client.ListPreparer(location) if err != nil { return result, autorest.NewErrorWithError(err, "network.UsagesClient", "List", nil, "Failure preparing request") @@ -108,7 +115,7 @@ func (client UsagesClient) ListResponder(resp *http.Response) (result UsagesList func (client UsagesClient) ListNextResults(lastResults UsagesListResult) (result UsagesListResult, err error) { req, err := lastResults.UsagesListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.UsagesClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.UsagesClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -117,12 +124,12 @@ func (client UsagesClient) ListNextResults(lastResults UsagesListResult) (result resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.UsagesClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.UsagesClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.UsagesClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.UsagesClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/version.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/version.go index 5a9c3b43f8..b0628fe0bd 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/version.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/version.go @@ -23,9 +23,9 @@ import ( ) const ( - major = "3" - minor = "2" - patch = "0" + major = "7" + minor = "0" + patch = "1" // Always begin a "tag" with a dash (as per http://semver.org) tag = "-beta" semVerFormat = "%s.%s.%s%s" @@ -34,7 +34,7 @@ const ( // UserAgent returns the UserAgent string to use when sending http.Requests. func UserAgent() string { - return fmt.Sprintf(userAgentFormat, Version(), "network", "2016-06-01") + return fmt.Sprintf(userAgentFormat, Version(), "network", "2016-09-01") } // Version returns the semantic version (see http://semver.org) of the client. diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkgatewayconnections.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkgatewayconnections.go index 9a9ef51bf2..d58a9d326f 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkgatewayconnections.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkgatewayconnections.go @@ -21,13 +21,14 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // VirtualNetworkGatewayConnectionsClient is the the Microsoft Azure Network // management API provides a RESTful set of web services that interact with -// Microsoft Azure Networks service to manage your network resrources. The -// API has entities that capture the relationship between an end user and the +// Microsoft Azure Networks service to manage your network resources. The API +// has entities that capture the relationship between an end user and the // Microsoft Azure Networks service. type VirtualNetworkGatewayConnectionsClient struct { ManagementClient @@ -45,19 +46,46 @@ func NewVirtualNetworkGatewayConnectionsClientWithBaseURI(baseURI string, subscr return VirtualNetworkGatewayConnectionsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put VirtualNetworkGatewayConnection operation -// creates/updates a virtual network gateway connection in the specified -// resource group through Network resource provider. This method may poll for -// completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// CreateOrUpdate creates or updates a virtual network gateway connection in +// the specified resource group. This method may poll for completion. Polling +// can be canceled by passing the cancel channel argument. The channel will +// be used to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. // virtualNetworkGatewayConnectionName is the name of the virtual network -// gateway conenction. parameters is parameters supplied to the Begin Create -// or update Virtual Network Gateway connection operation through Network -// resource provider. +// gateway connection. parameters is parameters supplied to the create or +// update virtual network gateway connection operation. func (client VirtualNetworkGatewayConnectionsClient) CreateOrUpdate(resourceGroupName string, virtualNetworkGatewayConnectionName string, parameters VirtualNetworkGatewayConnection, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.VirtualNetworkGateway1", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.VirtualNetworkGateway1.VirtualNetworkGatewayPropertiesFormat", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.VirtualNetworkGateway1.VirtualNetworkGatewayPropertiesFormat.IPConfigurations", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.VirtualNetworkGateway1.VirtualNetworkGatewayPropertiesFormat.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}, + }}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.VirtualNetworkGateway2", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.VirtualNetworkGateway2.VirtualNetworkGatewayPropertiesFormat", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.VirtualNetworkGateway2.VirtualNetworkGatewayPropertiesFormat.IPConfigurations", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.VirtualNetworkGateway2.VirtualNetworkGatewayPropertiesFormat.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}, + }}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.LocalNetworkGateway2", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.LocalNetworkGateway2.LocalNetworkGatewayPropertiesFormat", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.LocalNetworkGateway2.LocalNetworkGatewayPropertiesFormat.LocalNetworkAddressSpace", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.LocalNetworkGateway2.LocalNetworkGatewayPropertiesFormat.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}, + }}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.ConnectionStatus", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.TunnelConnectionStatus", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.EgressBytesTransferred", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.IngressBytesTransferred", Name: validation.ReadOnly, Rule: true, Chain: nil}, + {Target: "parameters.VirtualNetworkGatewayConnectionPropertiesFormat.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.VirtualNetworkGatewayConnectionsClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, virtualNetworkGatewayConnectionName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -119,11 +147,10 @@ func (client VirtualNetworkGatewayConnectionsClient) CreateOrUpdateResponder(res return } -// Delete the Delete VirtualNetworkGatewayConnection operation deletes the -// specifed virtual network Gateway connection through Network resource -// provider. This method may poll for completion. Polling can be canceled by -// passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// Delete deletes the specified virtual network Gateway connection. This +// method may poll for completion. Polling can be canceled by passing the +// cancel channel argument. The channel will be used to cancel polling and +// any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. // virtualNetworkGatewayConnectionName is the name of the virtual network @@ -188,9 +215,7 @@ func (client VirtualNetworkGatewayConnectionsClient) DeleteResponder(resp *http. return } -// Get the Get VirtualNetworkGatewayConnection operation retrieves information -// about the specified virtual network gateway connection through Network -// resource provider. +// Get gets the specified virtual network gateway connection by resource group. // // resourceGroupName is the name of the resource group. // virtualNetworkGatewayConnectionName is the name of the virtual network @@ -259,10 +284,10 @@ func (client VirtualNetworkGatewayConnectionsClient) GetResponder(resp *http.Res // connection shared key through Network resource provider. // // resourceGroupName is the name of the resource group. -// connectionSharedKeyName is the virtual network gateway connection shared -// key name. -func (client VirtualNetworkGatewayConnectionsClient) GetSharedKey(resourceGroupName string, connectionSharedKeyName string) (result ConnectionSharedKeyResult, err error) { - req, err := client.GetSharedKeyPreparer(resourceGroupName, connectionSharedKeyName) +// virtualNetworkGatewayConnectionName is the virtual network gateway +// connection shared key name. +func (client VirtualNetworkGatewayConnectionsClient) GetSharedKey(resourceGroupName string, virtualNetworkGatewayConnectionName string) (result ConnectionSharedKey, err error) { + req, err := client.GetSharedKeyPreparer(resourceGroupName, virtualNetworkGatewayConnectionName) if err != nil { return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "GetSharedKey", nil, "Failure preparing request") } @@ -282,11 +307,11 @@ func (client VirtualNetworkGatewayConnectionsClient) GetSharedKey(resourceGroupN } // GetSharedKeyPreparer prepares the GetSharedKey request. -func (client VirtualNetworkGatewayConnectionsClient) GetSharedKeyPreparer(resourceGroupName string, connectionSharedKeyName string) (*http.Request, error) { +func (client VirtualNetworkGatewayConnectionsClient) GetSharedKeyPreparer(resourceGroupName string, virtualNetworkGatewayConnectionName string) (*http.Request, error) { pathParameters := map[string]interface{}{ - "connectionSharedKeyName": autorest.Encode("path", connectionSharedKeyName), - "resourceGroupName": autorest.Encode("path", resourceGroupName), - "subscriptionId": autorest.Encode("path", client.SubscriptionID), + "resourceGroupName": autorest.Encode("path", resourceGroupName), + "subscriptionId": autorest.Encode("path", client.SubscriptionID), + "virtualNetworkGatewayConnectionName": autorest.Encode("path", virtualNetworkGatewayConnectionName), } queryParameters := map[string]interface{}{ @@ -296,7 +321,7 @@ func (client VirtualNetworkGatewayConnectionsClient) GetSharedKeyPreparer(resour preparer := autorest.CreatePreparer( autorest.AsGet(), autorest.WithBaseURL(client.BaseURI), - autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{connectionSharedKeyName}/sharedkey", pathParameters), + autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey", pathParameters), autorest.WithQueryParameters(queryParameters)) return preparer.Prepare(&http.Request{}) } @@ -309,7 +334,7 @@ func (client VirtualNetworkGatewayConnectionsClient) GetSharedKeySender(req *htt // GetSharedKeyResponder handles the response to the GetSharedKey request. The method always // closes the http.Response Body. -func (client VirtualNetworkGatewayConnectionsClient) GetSharedKeyResponder(resp *http.Response) (result ConnectionSharedKeyResult, err error) { +func (client VirtualNetworkGatewayConnectionsClient) GetSharedKeyResponder(resp *http.Response) (result ConnectionSharedKey, err error) { err = autorest.Respond( resp, client.ByInspecting(), @@ -386,7 +411,7 @@ func (client VirtualNetworkGatewayConnectionsClient) ListResponder(resp *http.Re func (client VirtualNetworkGatewayConnectionsClient) ListNextResults(lastResults VirtualNetworkGatewayConnectionListResult) (result VirtualNetworkGatewayConnectionListResult, err error) { req, err := lastResults.VirtualNetworkGatewayConnectionListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -395,12 +420,12 @@ func (client VirtualNetworkGatewayConnectionsClient) ListNextResults(lastResults resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "List", resp, "Failure responding to next results request") } return @@ -416,9 +441,18 @@ func (client VirtualNetworkGatewayConnectionsClient) ListNextResults(lastResults // resourceGroupName is the name of the resource group. // virtualNetworkGatewayConnectionName is the virtual network gateway // connection reset shared key Name. parameters is parameters supplied to the -// Begin Reset Virtual Network Gateway connection shared key operation -// through Network resource provider. +// begin reset virtual network gateway connection shared key operation +// through network resource provider. func (client VirtualNetworkGatewayConnectionsClient) ResetSharedKey(resourceGroupName string, virtualNetworkGatewayConnectionName string, parameters ConnectionResetSharedKey, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.KeyLength", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.KeyLength", Name: validation.InclusiveMaximum, Rule: 128, Chain: nil}, + {Target: "parameters.KeyLength", Name: validation.InclusiveMinimum, Rule: 1, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.VirtualNetworkGatewayConnectionsClient", "ResetSharedKey") + } + req, err := client.ResetSharedKeyPreparer(resourceGroupName, virtualNetworkGatewayConnectionName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "ResetSharedKey", nil, "Failure preparing request") @@ -490,9 +524,15 @@ func (client VirtualNetworkGatewayConnectionsClient) ResetSharedKeyResponder(res // resourceGroupName is the name of the resource group. // virtualNetworkGatewayConnectionName is the virtual network gateway // connection name. parameters is parameters supplied to the Begin Set -// Virtual Network Gateway conection Shared key operation throughNetwork +// Virtual Network Gateway connection Shared key operation throughNetwork // resource provider. func (client VirtualNetworkGatewayConnectionsClient) SetSharedKey(resourceGroupName string, virtualNetworkGatewayConnectionName string, parameters ConnectionSharedKey, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.Value", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.VirtualNetworkGatewayConnectionsClient", "SetSharedKey") + } + req, err := client.SetSharedKeyPreparer(resourceGroupName, virtualNetworkGatewayConnectionName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewayConnectionsClient", "SetSharedKey", nil, "Failure preparing request") diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkgateways.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkgateways.go index 792b0455d8..2a6ce4772d 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkgateways.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkgateways.go @@ -21,12 +21,13 @@ package network import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) // VirtualNetworkGatewaysClient is the the Microsoft Azure Network management // API provides a RESTful set of web services that interact with Microsoft -// Azure Networks service to manage your network resrources. The API has +// Azure Networks service to manage your network resources. The API has // entities that capture the relationship between an end user and the // Microsoft Azure Networks service. type VirtualNetworkGatewaysClient struct { @@ -45,17 +46,25 @@ func NewVirtualNetworkGatewaysClientWithBaseURI(baseURI string, subscriptionID s return VirtualNetworkGatewaysClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put VirtualNetworkGateway operation creates/updates a -// virtual network gateway in the specified resource group through Network -// resource provider. This method may poll for completion. Polling can be -// canceled by passing the cancel channel argument. The channel will be used -// to cancel polling and any outstanding HTTP requests. +// CreateOrUpdate creates or updates a virtual network gateway in the +// specified resource group. This method may poll for completion. Polling can +// be canceled by passing the cancel channel argument. The channel will be +// used to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. // virtualNetworkGatewayName is the name of the virtual network gateway. -// parameters is parameters supplied to the Begin Create or update Virtual -// Network Gateway operation through Network resource provider. +// parameters is parameters supplied to create or update virtual network +// gateway operation. func (client VirtualNetworkGatewaysClient) CreateOrUpdate(resourceGroupName string, virtualNetworkGatewayName string, parameters VirtualNetworkGateway, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayPropertiesFormat", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.VirtualNetworkGatewayPropertiesFormat.IPConfigurations", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.VirtualNetworkGatewayPropertiesFormat.ProvisioningState", Name: validation.ReadOnly, Rule: true, Chain: nil}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "network.VirtualNetworkGatewaysClient", "CreateOrUpdate") + } + req, err := client.CreateOrUpdatePreparer(resourceGroupName, virtualNetworkGatewayName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewaysClient", "CreateOrUpdate", nil, "Failure preparing request") @@ -117,9 +126,8 @@ func (client VirtualNetworkGatewaysClient) CreateOrUpdateResponder(resp *http.Re return } -// Delete the Delete VirtualNetworkGateway operation deletes the specifed -// virtual network Gateway through Network resource provider. This method may -// poll for completion. Polling can be canceled by passing the cancel channel +// Delete deletes the specified virtual network gateway. This method may poll +// for completion. Polling can be canceled by passing the cancel channel // argument. The channel will be used to cancel polling and any outstanding // HTTP requests. // @@ -185,14 +193,13 @@ func (client VirtualNetworkGatewaysClient) DeleteResponder(resp *http.Response) return } -// Generatevpnclientpackage the Generatevpnclientpackage operation generates -// Vpn client package for P2S client of the virtual network gateway in the -// specified resource group through Network resource provider. +// Generatevpnclientpackage generates VPN client package for P2S client of the +// virtual network gateway in the specified resource group. // // resourceGroupName is the name of the resource group. // virtualNetworkGatewayName is the name of the virtual network gateway. -// parameters is parameters supplied to the Begin Generating Virtual Network -// Gateway Vpn client package operation through Network resource provider. +// parameters is parameters supplied to the generate virtual network gateway +// VPN client package operation. func (client VirtualNetworkGatewaysClient) Generatevpnclientpackage(resourceGroupName string, virtualNetworkGatewayName string, parameters VpnClientParameters) (result String, err error) { req, err := client.GeneratevpnclientpackagePreparer(resourceGroupName, virtualNetworkGatewayName, parameters) if err != nil { @@ -254,8 +261,7 @@ func (client VirtualNetworkGatewaysClient) GeneratevpnclientpackageResponder(res return } -// Get the Get VirtualNetworkGateway operation retrieves information about the -// specified virtual network gateway through Network resource provider. +// Get gets the specified virtual network gateway by resource group. // // resourceGroupName is the name of the resource group. // virtualNetworkGatewayName is the name of the virtual network gateway. @@ -318,8 +324,7 @@ func (client VirtualNetworkGatewaysClient) GetResponder(resp *http.Response) (re return } -// List the List VirtualNetworkGateways operation retrieves all the virtual -// network gateways stored. +// List gets all virtual network gateways by resource group. // // resourceGroupName is the name of the resource group. func (client VirtualNetworkGatewaysClient) List(resourceGroupName string) (result VirtualNetworkGatewayListResult, err error) { @@ -384,7 +389,7 @@ func (client VirtualNetworkGatewaysClient) ListResponder(resp *http.Response) (r func (client VirtualNetworkGatewaysClient) ListNextResults(lastResults VirtualNetworkGatewayListResult) (result VirtualNetworkGatewayListResult, err error) { req, err := lastResults.VirtualNetworkGatewayListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewaysClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewaysClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -393,29 +398,28 @@ func (client VirtualNetworkGatewaysClient) ListNextResults(lastResults VirtualNe resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewaysClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewaysClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.VirtualNetworkGatewaysClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.VirtualNetworkGatewaysClient", "List", resp, "Failure responding to next results request") } return } -// Reset the Reset VirtualNetworkGateway operation resets the primary of the -// virtual network gateway in the specified resource group through Network -// resource provider. This method may poll for completion. Polling can be +// Reset resets the primary of the virtual network gateway in the specified +// resource group. This method may poll for completion. Polling can be // canceled by passing the cancel channel argument. The channel will be used // to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. // virtualNetworkGatewayName is the name of the virtual network gateway. -// parameters is parameters supplied to the Begin Reset Virtual Network -// Gateway operation through Network resource provider. -func (client VirtualNetworkGatewaysClient) Reset(resourceGroupName string, virtualNetworkGatewayName string, parameters VirtualNetworkGateway, cancel <-chan struct{}) (result autorest.Response, err error) { - req, err := client.ResetPreparer(resourceGroupName, virtualNetworkGatewayName, parameters, cancel) +// gatewayVip is virtual network gateway vip address supplied to the begin +// reset of the active-active feature enabled gateway. +func (client VirtualNetworkGatewaysClient) Reset(resourceGroupName string, virtualNetworkGatewayName string, gatewayVip string, cancel <-chan struct{}) (result autorest.Response, err error) { + req, err := client.ResetPreparer(resourceGroupName, virtualNetworkGatewayName, gatewayVip, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "network.VirtualNetworkGatewaysClient", "Reset", nil, "Failure preparing request") } @@ -435,7 +439,7 @@ func (client VirtualNetworkGatewaysClient) Reset(resourceGroupName string, virtu } // ResetPreparer prepares the Reset request. -func (client VirtualNetworkGatewaysClient) ResetPreparer(resourceGroupName string, virtualNetworkGatewayName string, parameters VirtualNetworkGateway, cancel <-chan struct{}) (*http.Request, error) { +func (client VirtualNetworkGatewaysClient) ResetPreparer(resourceGroupName string, virtualNetworkGatewayName string, gatewayVip string, cancel <-chan struct{}) (*http.Request, error) { pathParameters := map[string]interface{}{ "resourceGroupName": autorest.Encode("path", resourceGroupName), "subscriptionId": autorest.Encode("path", client.SubscriptionID), @@ -445,13 +449,14 @@ func (client VirtualNetworkGatewaysClient) ResetPreparer(resourceGroupName strin queryParameters := map[string]interface{}{ "api-version": client.APIVersion, } + if len(gatewayVip) > 0 { + queryParameters["gatewayVip"] = autorest.Encode("query", gatewayVip) + } preparer := autorest.CreatePreparer( - autorest.AsJSON(), autorest.AsPost(), autorest.WithBaseURL(client.BaseURI), autorest.WithPathParameters("/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset", pathParameters), - autorest.WithJSON(parameters), autorest.WithQueryParameters(queryParameters)) return preparer.Prepare(&http.Request{Cancel: cancel}) } diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkpeerings.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkpeerings.go index dd513a4c14..bfed897a3b 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkpeerings.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworkpeerings.go @@ -26,7 +26,7 @@ import ( // VirtualNetworkPeeringsClient is the the Microsoft Azure Network management // API provides a RESTful set of web services that interact with Microsoft -// Azure Networks service to manage your network resrources. The API has +// Azure Networks service to manage your network resources. The API has // entities that capture the relationship between an end user and the // Microsoft Azure Networks service. type VirtualNetworkPeeringsClient struct { @@ -45,16 +45,15 @@ func NewVirtualNetworkPeeringsClientWithBaseURI(baseURI string, subscriptionID s return VirtualNetworkPeeringsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CreateOrUpdate the Put virtual network peering operation creates/updates a -// peering in the specified virtual network This method may poll for -// completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// CreateOrUpdate creates or updates a peering in the specified virtual +// network. This method may poll for completion. Polling can be canceled by +// passing the cancel channel argument. The channel will be used to cancel +// polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. virtualNetworkPeeringName is the name of // the peering. virtualNetworkPeeringParameters is parameters supplied to the -// create/update virtual network peering operation +// create or update virtual network peering operation. func (client VirtualNetworkPeeringsClient) CreateOrUpdate(resourceGroupName string, virtualNetworkName string, virtualNetworkPeeringName string, virtualNetworkPeeringParameters VirtualNetworkPeering, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.CreateOrUpdatePreparer(resourceGroupName, virtualNetworkName, virtualNetworkPeeringName, virtualNetworkPeeringParameters, cancel) if err != nil { @@ -118,10 +117,10 @@ func (client VirtualNetworkPeeringsClient) CreateOrUpdateResponder(resp *http.Re return } -// Delete the delete virtual network peering operation deletes the specified -// peering. This method may poll for completion. Polling can be canceled by -// passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// Delete deletes the specified virtual network peering. This method may poll +// for completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. virtualNetworkPeeringName is the name of @@ -187,8 +186,7 @@ func (client VirtualNetworkPeeringsClient) DeleteResponder(resp *http.Response) return } -// Get the Get virtual network peering operation retreives information about -// the specified virtual network peering. +// Get gets the specified virtual network peering. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. virtualNetworkPeeringName is the name of @@ -253,8 +251,7 @@ func (client VirtualNetworkPeeringsClient) GetResponder(resp *http.Response) (re return } -// List the List virtual network peerings operation retrieves all the peerings -// in a virtual network. +// List gets all virtual network peerings in a virtual network. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. @@ -321,7 +318,7 @@ func (client VirtualNetworkPeeringsClient) ListResponder(resp *http.Response) (r func (client VirtualNetworkPeeringsClient) ListNextResults(lastResults VirtualNetworkPeeringListResult) (result VirtualNetworkPeeringListResult, err error) { req, err := lastResults.VirtualNetworkPeeringListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.VirtualNetworkPeeringsClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworkPeeringsClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -330,12 +327,12 @@ func (client VirtualNetworkPeeringsClient) ListNextResults(lastResults VirtualNe resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.VirtualNetworkPeeringsClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworkPeeringsClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.VirtualNetworkPeeringsClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.VirtualNetworkPeeringsClient", "List", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworks.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworks.go index a48b83180b..9046437af2 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworks.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/network/virtualnetworks.go @@ -26,7 +26,7 @@ import ( // VirtualNetworksClient is the the Microsoft Azure Network management API // provides a RESTful set of web services that interact with Microsoft Azure -// Networks service to manage your network resrources. The API has entities +// Networks service to manage your network resources. The API has entities // that capture the relationship between an end user and the Microsoft Azure // Networks service. type VirtualNetworksClient struct { @@ -45,7 +45,7 @@ func NewVirtualNetworksClientWithBaseURI(baseURI string, subscriptionID string) return VirtualNetworksClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CheckIPAddressAvailability checks whether a private Ip address is available +// CheckIPAddressAvailability checks whether a private IP address is available // for use. // // resourceGroupName is the name of the resource group. virtualNetworkName is @@ -113,15 +113,14 @@ func (client VirtualNetworksClient) CheckIPAddressAvailabilityResponder(resp *ht return } -// CreateOrUpdate the Put VirtualNetwork operation creates/updates a virtual -// network in the specified resource group. This method may poll for -// completion. Polling can be canceled by passing the cancel channel -// argument. The channel will be used to cancel polling and any outstanding -// HTTP requests. +// CreateOrUpdate creates or updates a virtual network in the specified +// resource group. This method may poll for completion. Polling can be +// canceled by passing the cancel channel argument. The channel will be used +// to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. parameters is parameters supplied to the -// create/update Virtual Network operation +// create or update virtual network operation func (client VirtualNetworksClient) CreateOrUpdate(resourceGroupName string, virtualNetworkName string, parameters VirtualNetwork, cancel <-chan struct{}) (result autorest.Response, err error) { req, err := client.CreateOrUpdatePreparer(resourceGroupName, virtualNetworkName, parameters, cancel) if err != nil { @@ -184,10 +183,10 @@ func (client VirtualNetworksClient) CreateOrUpdateResponder(resp *http.Response) return } -// Delete the Delete VirtualNetwork operation deletes the specifed virtual -// network This method may poll for completion. Polling can be canceled by -// passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// Delete deletes the specified virtual network. This method may poll for +// completion. Polling can be canceled by passing the cancel channel +// argument. The channel will be used to cancel polling and any outstanding +// HTTP requests. // // resourceGroupName is the name of the resource group. virtualNetworkName is // the name of the virtual network. @@ -251,11 +250,10 @@ func (client VirtualNetworksClient) DeleteResponder(resp *http.Response) (result return } -// Get the Get VirtualNetwork operation retrieves information about the -// specified virtual network. +// Get gets the specified virtual network by resource group. // // resourceGroupName is the name of the resource group. virtualNetworkName is -// the name of the virtual network. expand is expand references resources. +// the name of the virtual network. expand is expands referenced resources. func (client VirtualNetworksClient) Get(resourceGroupName string, virtualNetworkName string, expand string) (result VirtualNetwork, err error) { req, err := client.GetPreparer(resourceGroupName, virtualNetworkName, expand) if err != nil { @@ -318,8 +316,7 @@ func (client VirtualNetworksClient) GetResponder(resp *http.Response) (result Vi return } -// List the list VirtualNetwork returns all Virtual Networks in a resource -// group +// List gets all virtual networks in a resource group. // // resourceGroupName is the name of the resource group. func (client VirtualNetworksClient) List(resourceGroupName string) (result VirtualNetworkListResult, err error) { @@ -384,7 +381,7 @@ func (client VirtualNetworksClient) ListResponder(resp *http.Response) (result V func (client VirtualNetworksClient) ListNextResults(lastResults VirtualNetworkListResult) (result VirtualNetworkListResult, err error) { req, err := lastResults.VirtualNetworkListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "List", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "List", nil, "Failure preparing next results request") } if req == nil { return @@ -393,19 +390,18 @@ func (client VirtualNetworksClient) ListNextResults(lastResults VirtualNetworkLi resp, err := client.ListSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "List", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "List", resp, "Failure sending next results request") } result, err = client.ListResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "List", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "List", resp, "Failure responding to next results request") } return } -// ListAll the list VirtualNetwork returns all Virtual Networks in a -// subscription +// ListAll gets all virtual networks in a subscription. func (client VirtualNetworksClient) ListAll() (result VirtualNetworkListResult, err error) { req, err := client.ListAllPreparer() if err != nil { @@ -467,7 +463,7 @@ func (client VirtualNetworksClient) ListAllResponder(resp *http.Response) (resul func (client VirtualNetworksClient) ListAllNextResults(lastResults VirtualNetworkListResult) (result VirtualNetworkListResult, err error) { req, err := lastResults.VirtualNetworkListResultPreparer() if err != nil { - return result, autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "ListAll", nil, "Failure preparing next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "ListAll", nil, "Failure preparing next results request") } if req == nil { return @@ -476,12 +472,12 @@ func (client VirtualNetworksClient) ListAllNextResults(lastResults VirtualNetwor resp, err := client.ListAllSender(req) if err != nil { result.Response = autorest.Response{Response: resp} - return result, autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "ListAll", resp, "Failure sending next results request request") + return result, autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "ListAll", resp, "Failure sending next results request") } result, err = client.ListAllResponder(resp) if err != nil { - err = autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "ListAll", resp, "Failure responding to next results request request") + err = autorest.NewErrorWithError(err, "network.VirtualNetworksClient", "ListAll", resp, "Failure responding to next results request") } return diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/accounts.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/accounts.go index 39e50fe0f1..c895c3a949 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/accounts.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/accounts.go @@ -21,6 +21,7 @@ package storage import ( "github.com/Azure/go-autorest/autorest" "github.com/Azure/go-autorest/autorest/azure" + "github.com/Azure/go-autorest/autorest/validation" "net/http" ) @@ -40,12 +41,20 @@ func NewAccountsClientWithBaseURI(baseURI string, subscriptionID string) Account return AccountsClient{NewWithBaseURI(baseURI, subscriptionID)} } -// CheckNameAvailability checks that account name is valid and is not in use. +// CheckNameAvailability checks that the storage account name is valid and is +// not already in use. // // accountName is the name of the storage account within the specified // resource group. Storage account names must be between 3 and 24 characters // in length and use numbers and lower-case letters only. func (client AccountsClient) CheckNameAvailability(accountName AccountCheckNameAvailabilityParameters) (result CheckNameAvailabilityResult, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: accountName, + Constraints: []validation.Constraint{{Target: "accountName.Name", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "accountName.Type", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "storage.AccountsClient", "CheckNameAvailability") + } + req, err := client.CheckNameAvailabilityPreparer(accountName) if err != nil { return result, autorest.NewErrorWithError(err, "storage.AccountsClient", "CheckNameAvailability", nil, "Failure preparing request") @@ -105,13 +114,13 @@ func (client AccountsClient) CheckNameAvailabilityResponder(resp *http.Response) } // Create asynchronously creates a new storage account with the specified -// parameters. If an account is already created and subsequent create request -// is issued with different properties, the account properties will be -// updated. If an account is already created and subsequent create or update -// request is issued with exact same set of properties, the request will -// succeed. This method may poll for completion. Polling can be canceled by -// passing the cancel channel argument. The channel will be used to cancel -// polling and any outstanding HTTP requests. +// parameters. If an account is already created and a subsequent create +// request is issued with different properties, the account properties will +// be updated. If an account is already created and a subsequent create or +// update request is issued with the exact same set of properties, the +// request will succeed. This method may poll for completion. Polling can be +// canceled by passing the cancel channel argument. The channel will be used +// to cancel polling and any outstanding HTTP requests. // // resourceGroupName is the name of the resource group within the user's // subscription. accountName is the name of the storage account within the @@ -119,6 +128,28 @@ func (client AccountsClient) CheckNameAvailabilityResponder(resp *http.Response) // characters in length and use numbers and lower-case letters only. // parameters is the parameters to provide for the created account. func (client AccountsClient) Create(resourceGroupName string, accountName string, parameters AccountCreateParameters, cancel <-chan struct{}) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: accountName, + Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 24, Chain: nil}, + {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}}}, + {TargetValue: parameters, + Constraints: []validation.Constraint{{Target: "parameters.Sku", Name: validation.Null, Rule: true, + Chain: []validation.Constraint{{Target: "parameters.Sku.Tier", Name: validation.ReadOnly, Rule: true, Chain: nil}}}, + {Target: "parameters.Location", Name: validation.Null, Rule: true, Chain: nil}, + {Target: "parameters.AccountPropertiesCreateParameters", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.AccountPropertiesCreateParameters.CustomDomain", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.AccountPropertiesCreateParameters.CustomDomain.Name", Name: validation.Null, Rule: true, Chain: nil}}}, + {Target: "parameters.AccountPropertiesCreateParameters.Encryption", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.AccountPropertiesCreateParameters.Encryption.Services", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.AccountPropertiesCreateParameters.Encryption.Services.Blob", Name: validation.Null, Rule: false, + Chain: []validation.Constraint{{Target: "parameters.AccountPropertiesCreateParameters.Encryption.Services.Blob.LastEnabledTime", Name: validation.ReadOnly, Rule: true, Chain: nil}}}, + }}, + {Target: "parameters.AccountPropertiesCreateParameters.Encryption.KeySource", Name: validation.Null, Rule: true, Chain: nil}, + }}, + }}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "storage.AccountsClient", "Create") + } + req, err := client.CreatePreparer(resourceGroupName, accountName, parameters, cancel) if err != nil { return result, autorest.NewErrorWithError(err, "storage.AccountsClient", "Create", nil, "Failure preparing request") @@ -174,7 +205,7 @@ func (client AccountsClient) CreateResponder(resp *http.Response) (result autore err = autorest.Respond( resp, client.ByInspecting(), - azure.WithErrorUnlessStatusCode(http.StatusAccepted, http.StatusOK), + azure.WithErrorUnlessStatusCode(http.StatusOK, http.StatusAccepted), autorest.ByClosing()) result.Response = resp return @@ -187,6 +218,13 @@ func (client AccountsClient) CreateResponder(resp *http.Response) (result autore // specified resource group. Storage account names must be between 3 and 24 // characters in length and use numbers and lower-case letters only. func (client AccountsClient) Delete(resourceGroupName string, accountName string) (result autorest.Response, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: accountName, + Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 24, Chain: nil}, + {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "storage.AccountsClient", "Delete") + } + req, err := client.DeletePreparer(resourceGroupName, accountName) if err != nil { return result, autorest.NewErrorWithError(err, "storage.AccountsClient", "Delete", nil, "Failure preparing request") @@ -245,14 +283,21 @@ func (client AccountsClient) DeleteResponder(resp *http.Response) (result autore } // GetProperties returns the properties for the specified storage account -// including but not limited to name, account type, location, and account -// status. The ListKeys operation should be used to retrieve storage keys. +// including but not limited to name, SKU name, location, and account status. +// The ListKeys operation should be used to retrieve storage keys. // // resourceGroupName is the name of the resource group within the user's // subscription. accountName is the name of the storage account within the // specified resource group. Storage account names must be between 3 and 24 // characters in length and use numbers and lower-case letters only. func (client AccountsClient) GetProperties(resourceGroupName string, accountName string) (result Account, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: accountName, + Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 24, Chain: nil}, + {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "storage.AccountsClient", "GetProperties") + } + req, err := client.GetPropertiesPreparer(resourceGroupName, accountName) if err != nil { return result, autorest.NewErrorWithError(err, "storage.AccountsClient", "GetProperties", nil, "Failure preparing request") @@ -436,9 +481,18 @@ func (client AccountsClient) ListByResourceGroupResponder(resp *http.Response) ( // ListKeys lists the access keys for the specified storage account. // -// resourceGroupName is the name of the resource group. accountName is the -// name of the storage account. +// resourceGroupName is the name of the resource group within the user's +// subscription. accountName is the name of the storage account within the +// specified resource group. Storage account names must be between 3 and 24 +// characters in length and use numbers and lower-case letters only. func (client AccountsClient) ListKeys(resourceGroupName string, accountName string) (result AccountListKeysResult, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: accountName, + Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 24, Chain: nil}, + {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "storage.AccountsClient", "ListKeys") + } + req, err := client.ListKeysPreparer(resourceGroupName, accountName) if err != nil { return result, autorest.NewErrorWithError(err, "storage.AccountsClient", "ListKeys", nil, "Failure preparing request") @@ -497,15 +551,25 @@ func (client AccountsClient) ListKeysResponder(resp *http.Response) (result Acco return } -// RegenerateKey regenerates the access keys for the specified storage account. +// RegenerateKey regenerates one of the access keys for the specified storage +// account. // // resourceGroupName is the name of the resource group within the user's // subscription. accountName is the name of the storage account within the // specified resource group. Storage account names must be between 3 and 24 // characters in length and use numbers and lower-case letters only. -// regenerateKey is specifies name of the key which should be regenerated. -// key1 or key2 for the default keys +// regenerateKey is specifies name of the key which should be regenerated -- +// key1 or key2. func (client AccountsClient) RegenerateKey(resourceGroupName string, accountName string, regenerateKey AccountRegenerateKeyParameters) (result AccountListKeysResult, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: accountName, + Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 24, Chain: nil}, + {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}}}, + {TargetValue: regenerateKey, + Constraints: []validation.Constraint{{Target: "regenerateKey.KeyName", Name: validation.Null, Rule: true, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "storage.AccountsClient", "RegenerateKey") + } + req, err := client.RegenerateKeyPreparer(resourceGroupName, accountName, regenerateKey) if err != nil { return result, autorest.NewErrorWithError(err, "storage.AccountsClient", "RegenerateKey", nil, "Failure preparing request") @@ -566,15 +630,15 @@ func (client AccountsClient) RegenerateKeyResponder(resp *http.Response) (result return } -// Update the update operation can be used to update the account type, -// encryption, or tags for a storage account. It can also be used to map the +// Update the update operation can be used to update the SKU, encryption, +// access tier, or tags for a storage account. It can also be used to map the // account to a custom domain. Only one custom domain is supported per -// storage account and. replacement/change of custom domain is not supported. +// storage account; the replacement/change of custom domain is not supported. // In order to replace an old custom domain, the old value must be -// cleared/unregistered before a new value may be set. Update of multiple +// cleared/unregistered before a new value can be set. The update of multiple // properties is supported. This call does not change the storage keys for -// the account. If you want to change storage account keys, use the -// regenerate keys operation. The location and name of the storage account +// the account. If you want to change the storage account keys, use the +// regenerate keys operation. The location and name of the storage account // cannot be changed after creation. // // resourceGroupName is the name of the resource group within the user's @@ -583,6 +647,13 @@ func (client AccountsClient) RegenerateKeyResponder(resp *http.Response) (result // characters in length and use numbers and lower-case letters only. // parameters is the parameters to provide for the updated account. func (client AccountsClient) Update(resourceGroupName string, accountName string, parameters AccountUpdateParameters) (result Account, err error) { + if err := validation.Validate([]validation.Validation{ + {TargetValue: accountName, + Constraints: []validation.Constraint{{Target: "accountName", Name: validation.MaxLength, Rule: 24, Chain: nil}, + {Target: "accountName", Name: validation.MinLength, Rule: 3, Chain: nil}}}}); err != nil { + return result, validation.NewErrorWithValidationError(err, "storage.AccountsClient", "Update") + } + req, err := client.UpdatePreparer(resourceGroupName, accountName, parameters) if err != nil { return result, autorest.NewErrorWithError(err, "storage.AccountsClient", "Update", nil, "Failure preparing request") diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/models.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/models.go index a4a4d2be41..bff65ec6eb 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/models.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/models.go @@ -131,15 +131,15 @@ const ( // Account is the storage account. type Account struct { - autorest.Response `json:"-"` - ID *string `json:"id,omitempty"` - Name *string `json:"name,omitempty"` - Type *string `json:"type,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Sku *Sku `json:"sku,omitempty"` - Kind Kind `json:"kind,omitempty"` - Properties *AccountProperties `json:"properties,omitempty"` + autorest.Response `json:"-"` + ID *string `json:"id,omitempty"` + Name *string `json:"name,omitempty"` + Type *string `json:"type,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + Sku *Sku `json:"sku,omitempty"` + Kind Kind `json:"kind,omitempty"` + *AccountProperties `json:"properties,omitempty"` } // AccountCheckNameAvailabilityParameters is @@ -148,13 +148,14 @@ type AccountCheckNameAvailabilityParameters struct { Type *string `json:"type,omitempty"` } -// AccountCreateParameters is the parameters to provide for the account. +// AccountCreateParameters is the parameters used when creating a storage +// account. type AccountCreateParameters struct { - Sku *Sku `json:"sku,omitempty"` - Kind Kind `json:"kind,omitempty"` - Location *string `json:"location,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *AccountPropertiesCreateParameters `json:"properties,omitempty"` + Sku *Sku `json:"sku,omitempty"` + Kind Kind `json:"kind,omitempty"` + Location *string `json:"location,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *AccountPropertiesCreateParameters `json:"properties,omitempty"` } // AccountKey is an access key for the storage account. @@ -164,13 +165,13 @@ type AccountKey struct { Permissions KeyPermission `json:"permissions,omitempty"` } -// AccountListKeysResult is the ListKeys operation response. +// AccountListKeysResult is the response from the ListKeys operation. type AccountListKeysResult struct { autorest.Response `json:"-"` Keys *[]AccountKey `json:"keys,omitempty"` } -// AccountListResult is the list storage accounts operation response. +// AccountListResult is the response from the List Storage Accounts operation. type AccountListResult struct { autorest.Response `json:"-"` Value *[]Account `json:"value,omitempty"` @@ -211,11 +212,12 @@ type AccountRegenerateKeyParameters struct { KeyName *string `json:"keyName,omitempty"` } -// AccountUpdateParameters is the parameters to provide for the account. +// AccountUpdateParameters is the parameters that can be provided when +// updating the storage account properties. type AccountUpdateParameters struct { - Sku *Sku `json:"sku,omitempty"` - Tags *map[string]*string `json:"tags,omitempty"` - Properties *AccountPropertiesUpdateParameters `json:"properties,omitempty"` + Sku *Sku `json:"sku,omitempty"` + Tags *map[string]*string `json:"tags,omitempty"` + *AccountPropertiesUpdateParameters `json:"properties,omitempty"` } // CheckNameAvailabilityResult is the CheckNameAvailability operation response. @@ -233,25 +235,26 @@ type CustomDomain struct { UseSubDomain *bool `json:"useSubDomain,omitempty"` } -// Encryption is the encryption settings on the account. +// Encryption is the encryption settings on the storage account. type Encryption struct { Services *EncryptionServices `json:"services,omitempty"` KeySource *string `json:"keySource,omitempty"` } -// EncryptionService is an encrypted service. +// EncryptionService is a service that allows server-side encryption to be +// used. type EncryptionService struct { Enabled *bool `json:"enabled,omitempty"` LastEnabledTime *date.Time `json:"lastEnabledTime,omitempty"` } -// EncryptionServices is the encrypted services. +// EncryptionServices is a list of services that support encryption. type EncryptionServices struct { Blob *EncryptionService `json:"blob,omitempty"` } // Endpoints is the URIs that are used to perform a retrieval of a public -// blob, queue or table object. +// blob, queue, or table object. type Endpoints struct { Blob *string `json:"blob,omitempty"` Queue *string `json:"queue,omitempty"` @@ -282,13 +285,14 @@ type Usage struct { Name *UsageName `json:"name,omitempty"` } -// UsageListResult is the List Usages operation response. +// UsageListResult is the response from the List Usages operation. type UsageListResult struct { autorest.Response `json:"-"` Value *[]Usage `json:"value,omitempty"` } -// UsageName is the Usage Names. +// UsageName is the usage names that can be used; currently limited to +// StorageAccount. type UsageName struct { Value *string `json:"value,omitempty"` LocalizedValue *string `json:"localizedValue,omitempty"` diff --git a/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/version.go b/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/version.go index 61b71b1703..e0a181c11a 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/version.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/arm/storage/version.go @@ -23,9 +23,9 @@ import ( ) const ( - major = "3" - minor = "2" - patch = "0" + major = "7" + minor = "0" + patch = "1" // Always begin a "tag" with a dash (as per http://semver.org) tag = "-beta" semVerFormat = "%s.%s.%s%s" diff --git a/vendor/github.com/Azure/azure-sdk-for-go/storage/README.md b/vendor/github.com/Azure/azure-sdk-for-go/storage/README.md new file mode 100644 index 0000000000..0ab099848b --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/storage/README.md @@ -0,0 +1,5 @@ +# Azure Storage SDK for Go + +The `github.com/Azure/azure-sdk-for-go/storage` package is used to perform operations in Azure Storage Service. To manage your storage accounts (Azure Resource Manager / ARM), use the [github.com/Azure/azure-sdk-for-go/arm/storage](../arm/storage) package. For your classic storage accounts (Azure Service Management / ASM), use [github.com/Azure/azure-sdk-for-go/management/storageservice](../management/storageservice) package. + +This package includes support for [Azure Storage Emulator](https://azure.microsoft.com/documentation/articles/storage-use-emulator/) \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/storage/blob.go b/vendor/github.com/Azure/azure-sdk-for-go/storage/blob.go index 4207cfec6e..3dbaca52ad 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/storage/blob.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/storage/blob.go @@ -6,6 +6,7 @@ import ( "errors" "fmt" "io" + "io/ioutil" "net/http" "net/url" "strconv" @@ -256,6 +257,23 @@ const ( blobCopyStatusFailed = "failed" ) +// lease constants. +const ( + leaseHeaderPrefix = "x-ms-lease-" + leaseID = "x-ms-lease-id" + leaseAction = "x-ms-lease-action" + leaseBreakPeriod = "x-ms-lease-break-period" + leaseDuration = "x-ms-lease-duration" + leaseProposedID = "x-ms-proposed-lease-id" + leaseTime = "x-ms-lease-time" + + acquireLease = "acquire" + renewLease = "renew" + changeLease = "change" + releaseLease = "release" + breakLease = "break" +) + // BlockListType is used to filter out types of blocks in a Get Blocks List call // for a block blob. // @@ -284,6 +302,65 @@ const ( ContainerAccessTypeContainer ContainerAccessType = "container" ) +// ContainerAccessOptions are used when setting ACLs of containers (after creation) +type ContainerAccessOptions struct { + ContainerAccess ContainerAccessType + Timeout int + LeaseID string +} + +// AccessPolicyDetails are used for SETTING policies +type AccessPolicyDetails struct { + ID string + StartTime time.Time + ExpiryTime time.Time + CanRead bool + CanWrite bool + CanDelete bool +} + +// ContainerPermissions is used when setting permissions and Access Policies for containers. +type ContainerPermissions struct { + AccessOptions ContainerAccessOptions + AccessPolicy AccessPolicyDetails +} + +// AccessPolicyDetailsXML has specifics about an access policy +// annotated with XML details. +type AccessPolicyDetailsXML struct { + StartTime time.Time `xml:"Start"` + ExpiryTime time.Time `xml:"Expiry"` + Permission string `xml:"Permission"` +} + +// SignedIdentifier is a wrapper for a specific policy +type SignedIdentifier struct { + ID string `xml:"Id"` + AccessPolicy AccessPolicyDetailsXML `xml:"AccessPolicy"` +} + +// SignedIdentifiers part of the response from GetPermissions call. +type SignedIdentifiers struct { + SignedIdentifiers []SignedIdentifier `xml:"SignedIdentifier"` +} + +// AccessPolicy is the response type from the GetPermissions call. +type AccessPolicy struct { + SignedIdentifiersList SignedIdentifiers `xml:"SignedIdentifiers"` +} + +// ContainerAccessResponse is returned for the GetContainerPermissions function. +// This contains both the permission and access policy for the container. +type ContainerAccessResponse struct { + ContainerAccess ContainerAccessType + AccessPolicy SignedIdentifiers +} + +// ContainerAccessHeader references header used when setting/getting container ACL +const ( + ContainerAccessHeader string = "x-ms-blob-public-access" +) + // Maximum sizes (per REST API) for various concepts const ( MaxBlobBlockSize = 4 * 1024 * 1024 @@ -399,7 +476,7 @@ func (b BlobStorageClient) createContainer(name string, access ContainerAccessTy headers := b.client.getStandardHeaders() if access != "" { - headers["x-ms-blob-public-access"] = string(access) + headers[ContainerAccessHeader] = string(access) } return b.client.exec(verb, uri, headers, nil) } @@ -421,6 +498,101 @@ func (b BlobStorageClient) ContainerExists(name string) (bool, error) { return false, err } +// SetContainerPermissions sets up container permissions as per https://msdn.microsoft.com/en-us/library/azure/dd179391.aspx +func (b BlobStorageClient) SetContainerPermissions(container string, containerPermissions ContainerPermissions) (err error) { + params := url.Values{ + "restype": {"container"}, + "comp": {"acl"}, + } + + if containerPermissions.AccessOptions.Timeout > 0 { + params.Add("timeout", strconv.Itoa(containerPermissions.AccessOptions.Timeout)) + } + + uri := b.client.getEndpoint(blobServiceName, pathForContainer(container), params) + headers := b.client.getStandardHeaders() + if containerPermissions.AccessOptions.ContainerAccess != "" { + headers[ContainerAccessHeader] = string(containerPermissions.AccessOptions.ContainerAccess) + } + + if containerPermissions.AccessOptions.LeaseID != "" { + headers[leaseID] = containerPermissions.AccessOptions.LeaseID + } + + // generate the XML for the SharedAccessSignature if required. + accessPolicyXML, err := generateAccessPolicy(containerPermissions.AccessPolicy) + if err != nil { + return err + } + + var resp *storageResponse + if accessPolicyXML != "" { + headers["Content-Length"] = strconv.Itoa(len(accessPolicyXML)) + resp, err = b.client.exec("PUT", uri, headers, strings.NewReader(accessPolicyXML)) + } else { + resp, err = b.client.exec("PUT", uri, headers, nil) + } + + if err != nil { + return err + } + + if resp != nil { + defer func() { + err = resp.body.Close() + }() + + if resp.statusCode != http.StatusOK { + return errors.New("Unable to set permissions") + } + } + return nil +} + +// GetContainerPermissions gets the container permissions as per https://msdn.microsoft.com/en-us/library/azure/dd179469.aspx +// If timeout is 0 then it will not be passed to Azure +// leaseID will only be passed to Azure if populated +// Returns permissionResponse which is combined permissions and AccessPolicy +func (b BlobStorageClient) GetContainerPermissions(container string, timeout int, leaseID string) (permissionResponse *ContainerAccessResponse, err error) { + params := url.Values{"restype": {"container"}, + "comp": {"acl"}} + + if timeout > 0 { + params.Add("timeout", strconv.Itoa(timeout)) + } + + uri := b.client.getEndpoint(blobServiceName, pathForContainer(container), params) + headers := b.client.getStandardHeaders() + + if leaseID != "" { + headers[leaseID] = leaseID + } + + resp, err := b.client.exec("GET", uri, headers, nil) + if err != nil { + return nil, err + } + + // containerAccess. Blob, Container, empty + containerAccess := resp.headers.Get(http.CanonicalHeaderKey(ContainerAccessHeader)) + + defer func() { + err = resp.body.Close() + }() + + var out AccessPolicy + err = xmlUnmarshal(resp.body, &out.SignedIdentifiersList) + if err != nil { + return nil, err + } + + permissionResponse = &ContainerAccessResponse{} + permissionResponse.AccessPolicy = out.SignedIdentifiersList + permissionResponse.ContainerAccess = ContainerAccessType(containerAccess) + + return permissionResponse, nil +} + // DeleteContainer deletes the container with given name on the storage // account. If the container does not exist returns error. // @@ -560,6 +732,174 @@ func (b BlobStorageClient) getBlobRange(container, name, bytesRange string, extr return resp, err } +// leasePut is common PUT code for the various aquire/release/break etc functions. +func (b BlobStorageClient) leaseCommonPut(container string, name string, headers map[string]string, expectedStatus int) (http.Header, error) { + params := url.Values{"comp": {"lease"}} + uri := b.client.getEndpoint(blobServiceName, pathForBlob(container, name), params) + + resp, err := b.client.exec("PUT", uri, headers, nil) + if err != nil { + return nil, err + } + defer resp.body.Close() + + if err := checkRespCode(resp.statusCode, []int{expectedStatus}); err != nil { + return nil, err + } + + return resp.headers, nil +} + +// SnapshotBlob creates a snapshot for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691971.aspx +func (b BlobStorageClient) SnapshotBlob(container string, name string, timeout int, extraHeaders map[string]string) (snapshotTimestamp *time.Time, err error) { + headers := b.client.getStandardHeaders() + params := url.Values{"comp": {"snapshot"}} + + if timeout > 0 { + params.Add("timeout", strconv.Itoa(timeout)) + } + + for k, v := range extraHeaders { + headers[k] = v + } + + uri := b.client.getEndpoint(blobServiceName, pathForBlob(container, name), params) + resp, err := b.client.exec("PUT", uri, headers, nil) + if err != nil { + return nil, err + } + + if err := checkRespCode(resp.statusCode, []int{http.StatusCreated}); err != nil { + return nil, err + } + + snapshotResponse := resp.headers.Get(http.CanonicalHeaderKey("x-ms-snapshot")) + if snapshotResponse != "" { + snapshotTimestamp, err := time.Parse(time.RFC3339, snapshotResponse) + if err != nil { + return nil, err + } + + return &snapshotTimestamp, nil + } + + return nil, errors.New("Snapshot not created") +} + +// AcquireLease creates a lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx +// returns leaseID acquired +func (b BlobStorageClient) AcquireLease(container string, name string, leaseTimeInSeconds int, proposedLeaseID string) (returnedLeaseID string, err error) { + headers := b.client.getStandardHeaders() + headers[leaseAction] = acquireLease + + if leaseTimeInSeconds > 0 { + headers[leaseDuration] = strconv.Itoa(leaseTimeInSeconds) + } + + if proposedLeaseID != "" { + headers[leaseProposedID] = proposedLeaseID + } + + respHeaders, err := b.leaseCommonPut(container, name, headers, http.StatusCreated) + if err != nil { + return "", err + } + + returnedLeaseID = respHeaders.Get(http.CanonicalHeaderKey(leaseID)) + + if returnedLeaseID != "" { + return returnedLeaseID, nil + } + + return "", errors.New("LeaseID not returned") +} + +// BreakLease breaks the lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx +// Returns the timeout remaining in the lease in seconds +func (b BlobStorageClient) BreakLease(container string, name string) (breakTimeout int, err error) { + headers := b.client.getStandardHeaders() + headers[leaseAction] = breakLease + return b.breakLeaseCommon(container, name, headers) +} + +// BreakLeaseWithBreakPeriod breaks the lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx +// breakPeriodInSeconds is used to determine how long until new lease can be created. +// Returns the timeout remaining in the lease in seconds +func (b BlobStorageClient) BreakLeaseWithBreakPeriod(container string, name string, breakPeriodInSeconds int) (breakTimeout int, err error) { + headers := b.client.getStandardHeaders() + headers[leaseAction] = breakLease + headers[leaseBreakPeriod] = strconv.Itoa(breakPeriodInSeconds) + return b.breakLeaseCommon(container, name, headers) +} + +// breakLeaseCommon is common code for both version of BreakLease (with and without break period) +func (b BlobStorageClient) breakLeaseCommon(container string, name string, headers map[string]string) (breakTimeout int, err error) { + + respHeaders, err := b.leaseCommonPut(container, name, headers, http.StatusAccepted) + if err != nil { + return 0, err + } + + breakTimeoutStr := respHeaders.Get(http.CanonicalHeaderKey(leaseTime)) + if breakTimeoutStr != "" { + breakTimeout, err = strconv.Atoi(breakTimeoutStr) + if err != nil { + return 0, err + } + } + + return breakTimeout, nil +} + +// ChangeLease changes a lease ID for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx +// Returns the new LeaseID acquired +func (b BlobStorageClient) ChangeLease(container string, name string, currentLeaseID string, proposedLeaseID string) (newLeaseID string, err error) { + headers := b.client.getStandardHeaders() + headers[leaseAction] = changeLease + headers[leaseID] = currentLeaseID + headers[leaseProposedID] = proposedLeaseID + + respHeaders, err := b.leaseCommonPut(container, name, headers, http.StatusOK) + if err != nil { + return "", err + } + + newLeaseID = respHeaders.Get(http.CanonicalHeaderKey(leaseID)) + if newLeaseID != "" { + return newLeaseID, nil + } + + return "", errors.New("LeaseID not returned") +} + +// ReleaseLease releases the lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx +func (b BlobStorageClient) ReleaseLease(container string, name string, currentLeaseID string) error { + headers := b.client.getStandardHeaders() + headers[leaseAction] = releaseLease + headers[leaseID] = currentLeaseID + + _, err := b.leaseCommonPut(container, name, headers, http.StatusOK) + if err != nil { + return err + } + + return nil +} + +// RenewLease renews the lease for a blob as per https://msdn.microsoft.com/en-us/library/azure/ee691972.aspx +func (b BlobStorageClient) RenewLease(container string, name string, currentLeaseID string) error { + headers := b.client.getStandardHeaders() + headers[leaseAction] = renewLease + headers[leaseID] = currentLeaseID + + _, err := b.leaseCommonPut(container, name, headers, http.StatusOK) + if err != nil { + return err + } + + return nil +} + // GetBlobProperties provides various information about the specified // blob. See https://msdn.microsoft.com/en-us/library/azure/dd179394.aspx func (b BlobStorageClient) GetBlobProperties(container, name string) (*BlobProperties, error) { @@ -961,15 +1301,20 @@ func (b BlobStorageClient) AppendBlock(container, name string, chunk []byte, ext // // See https://msdn.microsoft.com/en-us/library/azure/dd894037.aspx func (b BlobStorageClient) CopyBlob(container, name, sourceBlob string) error { - copyID, err := b.startBlobCopy(container, name, sourceBlob) + copyID, err := b.StartBlobCopy(container, name, sourceBlob) if err != nil { return err } - return b.waitForBlobCopy(container, name, copyID) + return b.WaitForBlobCopy(container, name, copyID) } -func (b BlobStorageClient) startBlobCopy(container, name, sourceBlob string) (string, error) { +// StartBlobCopy starts a blob copy operation. +// sourceBlob parameter must be a canonical URL to the blob (can be +// obtained using GetBlobURL method.) +// +// See https://msdn.microsoft.com/en-us/library/azure/dd894037.aspx +func (b BlobStorageClient) StartBlobCopy(container, name, sourceBlob string) (string, error) { uri := b.client.getEndpoint(blobServiceName, pathForBlob(container, name), url.Values{}) headers := b.client.getStandardHeaders() @@ -992,7 +1337,39 @@ func (b BlobStorageClient) startBlobCopy(container, name, sourceBlob string) (st return copyID, nil } -func (b BlobStorageClient) waitForBlobCopy(container, name, copyID string) error { +// AbortBlobCopy aborts a BlobCopy which has already been triggered by the StartBlobCopy function. +// copyID is generated from StartBlobCopy function. +// currentLeaseID is required IF the destination blob has an active lease on it. +// As defined in https://msdn.microsoft.com/en-us/library/azure/jj159098.aspx +func (b BlobStorageClient) AbortBlobCopy(container, name, copyID, currentLeaseID string, timeout int) error { + params := url.Values{"comp": {"copy"}, "copyid": {copyID}} + if timeout > 0 { + params.Add("timeout", strconv.Itoa(timeout)) + } + + uri := b.client.getEndpoint(blobServiceName, pathForBlob(container, name), params) + headers := b.client.getStandardHeaders() + headers["x-ms-copy-action"] = "abort" + + if currentLeaseID != "" { + headers[leaseID] = currentLeaseID + } + + resp, err := b.client.exec("PUT", uri, headers, nil) + if err != nil { + return err + } + defer resp.body.Close() + + if err := checkRespCode(resp.statusCode, []int{http.StatusNoContent}); err != nil { + return err + } + + return nil +} + +// WaitForBlobCopy loops until a BlobCopy operation is completed (or fails with error) +func (b BlobStorageClient) WaitForBlobCopy(container, name, copyID string) error { for { props, err := b.GetBlobProperties(container, name) if err != nil { @@ -1036,10 +1413,12 @@ func (b BlobStorageClient) DeleteBlob(container, name string, extraHeaders map[s // See https://msdn.microsoft.com/en-us/library/azure/dd179413.aspx func (b BlobStorageClient) DeleteBlobIfExists(container, name string, extraHeaders map[string]string) (bool, error) { resp, err := b.deleteBlob(container, name, extraHeaders) - if resp != nil && (resp.statusCode == http.StatusAccepted || resp.statusCode == http.StatusNotFound) { - return resp.statusCode == http.StatusAccepted, nil + if resp != nil { + defer resp.body.Close() + if resp.statusCode == http.StatusAccepted || resp.statusCode == http.StatusNotFound { + return resp.statusCode == http.StatusAccepted, nil + } } - defer resp.body.Close() return false, err } @@ -1065,17 +1444,18 @@ func pathForBlob(container, name string) string { return fmt.Sprintf("/%s/%s", container, name) } -// GetBlobSASURI creates an URL to the specified blob which contains the Shared -// Access Signature with specified permissions and expiration time. +// GetBlobSASURIWithSignedIPAndProtocol creates an URL to the specified blob which contains the Shared +// Access Signature with specified permissions and expiration time. Also includes signedIPRange and allowed procotols. +// If old API version is used but no signedIP is passed (ie empty string) then this should still work. +// We only populate the signedIP when it non-empty. // // See https://msdn.microsoft.com/en-us/library/azure/ee395415.aspx -func (b BlobStorageClient) GetBlobSASURI(container, name string, expiry time.Time, permissions string) (string, error) { +func (b BlobStorageClient) GetBlobSASURIWithSignedIPAndProtocol(container, name string, expiry time.Time, permissions string, signedIPRange string, HTTPSOnly bool) (string, error) { var ( signedPermissions = permissions blobURL = b.GetBlobURL(container, name) ) canonicalizedResource, err := b.client.buildCanonicalizedResource(blobURL) - if err != nil { return "", err } @@ -1087,7 +1467,6 @@ func (b BlobStorageClient) GetBlobSASURI(container, name string, expiry time.Tim // We need to replace + with %2b first to avoid being treated as a space (which is correct for query strings, but not the path component). canonicalizedResource = strings.Replace(canonicalizedResource, "+", "%2b", -1) - canonicalizedResource, err = url.QueryUnescape(canonicalizedResource) if err != nil { return "", err @@ -1096,7 +1475,11 @@ func (b BlobStorageClient) GetBlobSASURI(container, name string, expiry time.Tim signedExpiry := expiry.UTC().Format(time.RFC3339) signedResource := "b" - stringToSign, err := blobSASStringToSign(b.client.apiVersion, canonicalizedResource, signedExpiry, signedPermissions) + protocols := "https,http" + if HTTPSOnly { + protocols = "https" + } + stringToSign, err := blobSASStringToSign(b.client.apiVersion, canonicalizedResource, signedExpiry, signedPermissions, signedIPRange, protocols) if err != nil { return "", err } @@ -1110,6 +1493,13 @@ func (b BlobStorageClient) GetBlobSASURI(container, name string, expiry time.Tim "sig": {sig}, } + if b.client.apiVersion >= "2015-04-05" { + sasParams.Add("spr", protocols) + if signedIPRange != "" { + sasParams.Add("sip", signedIPRange) + } + } + sasURL, err := url.Parse(blobURL) if err != nil { return "", err @@ -1118,16 +1508,89 @@ func (b BlobStorageClient) GetBlobSASURI(container, name string, expiry time.Tim return sasURL.String(), nil } -func blobSASStringToSign(signedVersion, canonicalizedResource, signedExpiry, signedPermissions string) (string, error) { +// GetBlobSASURI creates an URL to the specified blob which contains the Shared +// Access Signature with specified permissions and expiration time. +// +// See https://msdn.microsoft.com/en-us/library/azure/ee395415.aspx +func (b BlobStorageClient) GetBlobSASURI(container, name string, expiry time.Time, permissions string) (string, error) { + url, err := b.GetBlobSASURIWithSignedIPAndProtocol(container, name, expiry, permissions, "", false) + return url, err +} + +func blobSASStringToSign(signedVersion, canonicalizedResource, signedExpiry, signedPermissions string, signedIP string, protocols string) (string, error) { var signedStart, signedIdentifier, rscc, rscd, rsce, rscl, rsct string if signedVersion >= "2015-02-21" { canonicalizedResource = "/blob" + canonicalizedResource } + // https://msdn.microsoft.com/en-us/library/azure/dn140255.aspx#Anchor_12 + if signedVersion >= "2015-04-05" { + return fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s", signedPermissions, signedStart, signedExpiry, canonicalizedResource, signedIdentifier, signedIP, protocols, signedVersion, rscc, rscd, rsce, rscl, rsct), nil + } + // reference: http://msdn.microsoft.com/en-us/library/azure/dn140255.aspx if signedVersion >= "2013-08-15" { return fmt.Sprintf("%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s\n%s", signedPermissions, signedStart, signedExpiry, canonicalizedResource, signedIdentifier, signedVersion, rscc, rscd, rsce, rscl, rsct), nil } + return "", errors.New("storage: not implemented SAS for versions earlier than 2013-08-15") } + +func generatePermissions(accessPolicy AccessPolicyDetails) (permissions string) { + // generate the permissions string (rwd). + // still want the end user API to have bool flags. + permissions = "" + + if accessPolicy.CanRead { + permissions += "r" + } + + if accessPolicy.CanWrite { + permissions += "w" + } + + if accessPolicy.CanDelete { + permissions += "d" + } + + return permissions +} + +// convertAccessPolicyToXMLStructs converts between AccessPolicyDetails which is a struct better for API usage to the +// AccessPolicy struct which will get converted to XML. +func convertAccessPolicyToXMLStructs(accessPolicy AccessPolicyDetails) SignedIdentifiers { + return SignedIdentifiers{ + SignedIdentifiers: []SignedIdentifier{ + { + ID: accessPolicy.ID, + AccessPolicy: AccessPolicyDetailsXML{ + StartTime: accessPolicy.StartTime.UTC().Round(time.Second), + ExpiryTime: accessPolicy.ExpiryTime.UTC().Round(time.Second), + Permission: generatePermissions(accessPolicy), + }, + }, + }, + } +} + +// generateAccessPolicy generates the XML access policy used as the payload for SetContainerPermissions. +func generateAccessPolicy(accessPolicy AccessPolicyDetails) (accessPolicyXML string, err error) { + + if accessPolicy.ID != "" { + signedIdentifiers := convertAccessPolicyToXMLStructs(accessPolicy) + body, _, err := xmlMarshal(signedIdentifiers) + if err != nil { + return "", err + } + + xmlByteArray, err := ioutil.ReadAll(body) + if err != nil { + return "", err + } + accessPolicyXML = string(xmlByteArray) + return accessPolicyXML, nil + } + + return "", nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/storage/client.go b/vendor/github.com/Azure/azure-sdk-for-go/storage/client.go index 2816e03ec6..77528511a4 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/storage/client.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/storage/client.go @@ -128,6 +128,7 @@ func NewBasicClient(accountName, accountKey string) (Client, error) { return NewEmulatorClient() } return NewClient(accountName, accountKey, DefaultBaseURL, DefaultAPIVersion, defaultUseHTTPS) + } //NewEmulatorClient contructs a Client intended to only work with Azure @@ -305,7 +306,7 @@ func (c Client) buildCanonicalizedResourceTable(uri string) (string, error) { cr := "/" + c.getCanonicalizedAccountName() if len(u.Path) > 0 { - cr += u.Path + cr += u.EscapedPath() } return cr, nil diff --git a/vendor/github.com/Azure/azure-sdk-for-go/storage/file.go b/vendor/github.com/Azure/azure-sdk-for-go/storage/file.go index 4710fbad36..f679395bde 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/storage/file.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/storage/file.go @@ -1,9 +1,14 @@ package storage import ( + "encoding/xml" + "errors" "fmt" + "io" "net/http" "net/url" + "strconv" + "strings" ) // FileServiceClient contains operations for Microsoft Azure File Service. @@ -11,31 +16,486 @@ type FileServiceClient struct { client Client } -// pathForFileShare returns the URL path segment for a File Share resource -func pathForFileShare(name string) string { - return fmt.Sprintf("/%s", name) +// A Share is an entry in ShareListResponse. +type Share struct { + Name string `xml:"Name"` + Properties ShareProperties `xml:"Properties"` } -// CreateShare operation creates a new share under the specified account. If the -// share with the same name already exists, the operation fails. +// A Directory is an entry in DirsAndFilesListResponse. +type Directory struct { + Name string `xml:"Name"` +} + +// A File is an entry in DirsAndFilesListResponse. +type File struct { + Name string `xml:"Name"` + Properties FileProperties `xml:"Properties"` +} + +// ShareProperties contains various properties of a share returned from +// various endpoints like ListShares. +type ShareProperties struct { + LastModified string `xml:"Last-Modified"` + Etag string `xml:"Etag"` + Quota string `xml:"Quota"` +} + +// DirectoryProperties contains various properties of a directory returned +// from various endpoints like GetDirectoryProperties. +type DirectoryProperties struct { + LastModified string `xml:"Last-Modified"` + Etag string `xml:"Etag"` +} + +// FileProperties contains various properties of a file returned from +// various endpoints like ListDirsAndFiles. +type FileProperties struct { + CacheControl string `header:"x-ms-cache-control"` + ContentLength uint64 `xml:"Content-Length"` + ContentType string `header:"x-ms-content-type"` + CopyCompletionTime string + CopyID string + CopySource string + CopyProgress string + CopyStatusDesc string + CopyStatus string + Disposition string `header:"x-ms-content-disposition"` + Encoding string `header:"x-ms-content-encoding"` + Etag string + Language string `header:"x-ms-content-language"` + LastModified string + MD5 string `header:"x-ms-content-md5"` +} + +// FileStream contains file data returned from a call to GetFile. +type FileStream struct { + Body io.ReadCloser + Properties *FileProperties + Metadata map[string]string +} + +// ShareListResponse contains the response fields from +// ListShares call. // -// See https://msdn.microsoft.com/en-us/library/azure/dn167008.aspx -func (f FileServiceClient) CreateShare(name string) error { - resp, err := f.createShare(name) +// See https://msdn.microsoft.com/en-us/library/azure/dn167009.aspx +type ShareListResponse struct { + XMLName xml.Name `xml:"EnumerationResults"` + Xmlns string `xml:"xmlns,attr"` + Prefix string `xml:"Prefix"` + Marker string `xml:"Marker"` + NextMarker string `xml:"NextMarker"` + MaxResults int64 `xml:"MaxResults"` + Shares []Share `xml:"Shares>Share"` +} + +// ListSharesParameters defines the set of customizable parameters to make a +// List Shares call. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn167009.aspx +type ListSharesParameters struct { + Prefix string + Marker string + Include string + MaxResults uint + Timeout uint +} + +// DirsAndFilesListResponse contains the response fields from +// a List Files and Directories call. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166980.aspx +type DirsAndFilesListResponse struct { + XMLName xml.Name `xml:"EnumerationResults"` + Xmlns string `xml:"xmlns,attr"` + Marker string `xml:"Marker"` + MaxResults int64 `xml:"MaxResults"` + Directories []Directory `xml:"Entries>Directory"` + Files []File `xml:"Entries>File"` + NextMarker string `xml:"NextMarker"` +} + +// FileRanges contains a list of file range information for a file. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166984.aspx +type FileRanges struct { + ContentLength uint64 + LastModified string + ETag string + FileRanges []FileRange `xml:"Range"` +} + +// FileRange contains range information for a file. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166984.aspx +type FileRange struct { + Start uint64 `xml:"Start"` + End uint64 `xml:"End"` +} + +// ListDirsAndFilesParameters defines the set of customizable parameters to +// make a List Files and Directories call. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166980.aspx +type ListDirsAndFilesParameters struct { + Marker string + MaxResults uint + Timeout uint +} + +// ShareHeaders contains various properties of a file and is an entry +// in SetShareProperties +type ShareHeaders struct { + Quota string `header:"x-ms-share-quota"` +} + +type compType string + +const ( + compNone compType = "" + compList compType = "list" + compMetadata compType = "metadata" + compProperties compType = "properties" + compRangeList compType = "rangelist" +) + +func (ct compType) String() string { + return string(ct) +} + +type resourceType string + +const ( + resourceDirectory resourceType = "directory" + resourceFile resourceType = "" + resourceShare resourceType = "share" +) + +func (rt resourceType) String() string { + return string(rt) +} + +func (p ListSharesParameters) getParameters() url.Values { + out := url.Values{} + + if p.Prefix != "" { + out.Set("prefix", p.Prefix) + } + if p.Marker != "" { + out.Set("marker", p.Marker) + } + if p.Include != "" { + out.Set("include", p.Include) + } + if p.MaxResults != 0 { + out.Set("maxresults", fmt.Sprintf("%v", p.MaxResults)) + } + if p.Timeout != 0 { + out.Set("timeout", fmt.Sprintf("%v", p.Timeout)) + } + + return out +} + +func (p ListDirsAndFilesParameters) getParameters() url.Values { + out := url.Values{} + + if p.Marker != "" { + out.Set("marker", p.Marker) + } + if p.MaxResults != 0 { + out.Set("maxresults", fmt.Sprintf("%v", p.MaxResults)) + } + if p.Timeout != 0 { + out.Set("timeout", fmt.Sprintf("%v", p.Timeout)) + } + + return out +} + +func (fr FileRange) String() string { + return fmt.Sprintf("bytes=%d-%d", fr.Start, fr.End) +} + +// ToPathSegment returns the URL path segment for the specified values +func ToPathSegment(parts ...string) string { + join := strings.Join(parts, "/") + if join[0] != '/' { + join = fmt.Sprintf("/%s", join) + } + return join +} + +// returns url.Values for the specified types +func getURLInitValues(comp compType, res resourceType) url.Values { + values := url.Values{} + if comp != compNone { + values.Set("comp", comp.String()) + } + if res != resourceFile { + values.Set("restype", res.String()) + } + return values +} + +// ListDirsAndFiles returns a list of files or directories under the specified share or +// directory. It also contains a pagination token and other response details. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166980.aspx +func (f FileServiceClient) ListDirsAndFiles(path string, params ListDirsAndFilesParameters) (DirsAndFilesListResponse, error) { + q := mergeParams(params.getParameters(), getURLInitValues(compList, resourceDirectory)) + + var out DirsAndFilesListResponse + resp, err := f.listContent(path, q, nil) + if err != nil { + return out, err + } + + defer resp.body.Close() + err = xmlUnmarshal(resp.body, &out) + return out, err +} + +// ListFileRanges returns the list of valid ranges for a file. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166984.aspx +func (f FileServiceClient) ListFileRanges(path string, listRange *FileRange) (FileRanges, error) { + params := url.Values{"comp": {"rangelist"}} + + // add optional range to list + var headers map[string]string + if listRange != nil { + headers = make(map[string]string) + headers["Range"] = listRange.String() + } + + var out FileRanges + resp, err := f.listContent(path, params, headers) + if err != nil { + return out, err + } + + defer resp.body.Close() + var cl uint64 + cl, err = strconv.ParseUint(resp.headers.Get("x-ms-content-length"), 10, 64) + if err != nil { + return out, err + } + + out.ContentLength = cl + out.ETag = resp.headers.Get("ETag") + out.LastModified = resp.headers.Get("Last-Modified") + + err = xmlUnmarshal(resp.body, &out) + return out, err +} + +// ListShares returns the list of shares in a storage account along with +// pagination token and other response details. +// +// See https://msdn.microsoft.com/en-us/library/azure/dd179352.aspx +func (f FileServiceClient) ListShares(params ListSharesParameters) (ShareListResponse, error) { + q := mergeParams(params.getParameters(), url.Values{"comp": {"list"}}) + + var out ShareListResponse + resp, err := f.listContent("", q, nil) + if err != nil { + return out, err + } + + defer resp.body.Close() + err = xmlUnmarshal(resp.body, &out) + return out, err +} + +// retrieves directory or share content +func (f FileServiceClient) listContent(path string, params url.Values, extraHeaders map[string]string) (*storageResponse, error) { + if err := f.checkForStorageEmulator(); err != nil { + return nil, err + } + + uri := f.client.getEndpoint(fileServiceName, path, params) + headers := mergeHeaders(f.client.getStandardHeaders(), extraHeaders) + + resp, err := f.client.exec(http.MethodGet, uri, headers, nil) + if err != nil { + return nil, err + } + + if err = checkRespCode(resp.statusCode, []int{http.StatusOK}); err != nil { + resp.body.Close() + return nil, err + } + + return resp, nil +} + +// CreateDirectory operation creates a new directory with optional metadata in the +// specified share. If a directory with the same name already exists, the operation fails. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166993.aspx +func (f FileServiceClient) CreateDirectory(path string, metadata map[string]string) error { + return f.createResource(path, resourceDirectory, mergeMDIntoExtraHeaders(metadata, nil)) +} + +// CreateFile operation creates a new file with optional metadata or replaces an existing one. +// Note that this only initializes the file, call PutRange to add content. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn194271.aspx +func (f FileServiceClient) CreateFile(path string, maxSize uint64, metadata map[string]string) error { + extraHeaders := map[string]string{ + "x-ms-content-length": strconv.FormatUint(maxSize, 10), + "x-ms-type": "file", + } + return f.createResource(path, resourceFile, mergeMDIntoExtraHeaders(metadata, extraHeaders)) +} + +// ClearRange releases the specified range of space in storage. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn194276.aspx +func (f FileServiceClient) ClearRange(path string, fileRange FileRange) error { + return f.modifyRange(path, nil, fileRange) +} + +// PutRange writes a range of bytes to a file. Note that the length of bytes must +// match (rangeEnd - rangeStart) + 1 with a maximum size of 4MB. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn194276.aspx +func (f FileServiceClient) PutRange(path string, bytes io.Reader, fileRange FileRange) error { + return f.modifyRange(path, bytes, fileRange) +} + +// modifies a range of bytes in the specified file +func (f FileServiceClient) modifyRange(path string, bytes io.Reader, fileRange FileRange) error { + if err := f.checkForStorageEmulator(); err != nil { + return err + } + if fileRange.End < fileRange.Start { + return errors.New("the value for rangeEnd must be greater than or equal to rangeStart") + } + if bytes != nil && fileRange.End-fileRange.Start > 4194304 { + return errors.New("range cannot exceed 4MB in size") + } + + uri := f.client.getEndpoint(fileServiceName, path, url.Values{"comp": {"range"}}) + + // default to clear + write := "clear" + cl := uint64(0) + + // if bytes is not nil then this is an update operation + if bytes != nil { + write = "update" + cl = (fileRange.End - fileRange.Start) + 1 + } + + extraHeaders := map[string]string{ + "Content-Length": strconv.FormatUint(cl, 10), + "Range": fileRange.String(), + "x-ms-write": write, + } + + headers := mergeHeaders(f.client.getStandardHeaders(), extraHeaders) + resp, err := f.client.exec(http.MethodPut, uri, headers, bytes) if err != nil { return err } + defer resp.body.Close() return checkRespCode(resp.statusCode, []int{http.StatusCreated}) } -// CreateShareIfNotExists creates a new share under the specified account if -// it does not exist. Returns true if container is newly created or false if -// container already exists. +// GetFile operation reads or downloads a file from the system, including its +// metadata and properties. +// +// See https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/get-file +func (f FileServiceClient) GetFile(path string, fileRange *FileRange) (*FileStream, error) { + var extraHeaders map[string]string + if fileRange != nil { + extraHeaders = map[string]string{ + "Range": fileRange.String(), + } + } + + resp, err := f.getResourceNoClose(path, compNone, resourceFile, http.MethodGet, extraHeaders) + if err != nil { + return nil, err + } + + if err = checkRespCode(resp.statusCode, []int{http.StatusOK, http.StatusPartialContent}); err != nil { + resp.body.Close() + return nil, err + } + + props, err := getFileProps(resp.headers) + md := getFileMDFromHeaders(resp.headers) + return &FileStream{Body: resp.body, Properties: props, Metadata: md}, nil +} + +// CreateShare operation creates a new share with optional metadata under the specified account. +// If the share with the same name already exists, the operation fails. // // See https://msdn.microsoft.com/en-us/library/azure/dn167008.aspx -func (f FileServiceClient) CreateShareIfNotExists(name string) (bool, error) { - resp, err := f.createShare(name) +func (f FileServiceClient) CreateShare(name string, metadata map[string]string) error { + return f.createResource(ToPathSegment(name), resourceShare, mergeMDIntoExtraHeaders(metadata, nil)) +} + +// DirectoryExists returns true if the specified directory exists on the specified share. +func (f FileServiceClient) DirectoryExists(path string) (bool, error) { + return f.resourceExists(path, resourceDirectory) +} + +// FileExists returns true if the specified file exists. +func (f FileServiceClient) FileExists(path string) (bool, error) { + return f.resourceExists(path, resourceFile) +} + +// ShareExists returns true if a share with given name exists +// on the storage account, otherwise returns false. +func (f FileServiceClient) ShareExists(name string) (bool, error) { + return f.resourceExists(ToPathSegment(name), resourceShare) +} + +// returns true if the specified directory or share exists +func (f FileServiceClient) resourceExists(path string, res resourceType) (bool, error) { + if err := f.checkForStorageEmulator(); err != nil { + return false, err + } + + uri := f.client.getEndpoint(fileServiceName, path, getURLInitValues(compNone, res)) + headers := f.client.getStandardHeaders() + + resp, err := f.client.exec(http.MethodHead, uri, headers, nil) + if resp != nil { + defer resp.body.Close() + if resp.statusCode == http.StatusOK || resp.statusCode == http.StatusNotFound { + return resp.statusCode == http.StatusOK, nil + } + } + return false, err +} + +// GetDirectoryURL gets the canonical URL to the directory with the specified name +// in the specified share. This method does not create a publicly accessible URL if +// the file is private and this method does not check if the directory exists. +func (f FileServiceClient) GetDirectoryURL(path string) string { + return f.client.getEndpoint(fileServiceName, path, url.Values{}) +} + +// GetShareURL gets the canonical URL to the share with the specified name in the +// specified container. This method does not create a publicly accessible URL if +// the file is private and this method does not check if the share exists. +func (f FileServiceClient) GetShareURL(name string) string { + return f.client.getEndpoint(fileServiceName, ToPathSegment(name), url.Values{}) +} + +// CreateDirectoryIfNotExists creates a new directory on the specified share +// if it does not exist. Returns true if directory is newly created or false +// if the directory already exists. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166993.aspx +func (f FileServiceClient) CreateDirectoryIfNotExists(path string) (bool, error) { + resp, err := f.createResourceNoClose(path, resourceDirectory, nil) if resp != nil { defer resp.body.Close() if resp.statusCode == http.StatusCreated || resp.statusCode == http.StatusConflict { @@ -45,14 +505,175 @@ func (f FileServiceClient) CreateShareIfNotExists(name string) (bool, error) { return false, err } -// CreateShare creates a Azure File Share and returns its response -func (f FileServiceClient) createShare(name string) (*storageResponse, error) { +// CreateShareIfNotExists creates a new share under the specified account if +// it does not exist. Returns true if container is newly created or false if +// container already exists. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn167008.aspx +func (f FileServiceClient) CreateShareIfNotExists(name string) (bool, error) { + resp, err := f.createResourceNoClose(ToPathSegment(name), resourceShare, nil) + if resp != nil { + defer resp.body.Close() + if resp.statusCode == http.StatusCreated || resp.statusCode == http.StatusConflict { + return resp.statusCode == http.StatusCreated, nil + } + } + return false, err +} + +// creates a resource depending on the specified resource type +func (f FileServiceClient) createResource(path string, res resourceType, extraHeaders map[string]string) error { + resp, err := f.createResourceNoClose(path, res, extraHeaders) + if err != nil { + return err + } + defer resp.body.Close() + return checkRespCode(resp.statusCode, []int{http.StatusCreated}) +} + +// creates a resource depending on the specified resource type, doesn't close the response body +func (f FileServiceClient) createResourceNoClose(path string, res resourceType, extraHeaders map[string]string) (*storageResponse, error) { if err := f.checkForStorageEmulator(); err != nil { return nil, err } - uri := f.client.getEndpoint(fileServiceName, pathForFileShare(name), url.Values{"restype": {"share"}}) - headers := f.client.getStandardHeaders() - return f.client.exec("PUT", uri, headers, nil) + + values := getURLInitValues(compNone, res) + uri := f.client.getEndpoint(fileServiceName, path, values) + headers := mergeHeaders(f.client.getStandardHeaders(), extraHeaders) + + return f.client.exec(http.MethodPut, uri, headers, nil) +} + +// GetDirectoryProperties provides various information about the specified directory. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn194272.aspx +func (f FileServiceClient) GetDirectoryProperties(path string) (*DirectoryProperties, error) { + headers, err := f.getResourceHeaders(path, compNone, resourceDirectory, http.MethodHead) + if err != nil { + return nil, err + } + + return &DirectoryProperties{ + LastModified: headers.Get("Last-Modified"), + Etag: headers.Get("Etag"), + }, nil +} + +// GetFileProperties provides various information about the specified file. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166971.aspx +func (f FileServiceClient) GetFileProperties(path string) (*FileProperties, error) { + headers, err := f.getResourceHeaders(path, compNone, resourceFile, http.MethodHead) + if err != nil { + return nil, err + } + return getFileProps(headers) +} + +// returns file properties from the specified HTTP header +func getFileProps(header http.Header) (*FileProperties, error) { + size, err := strconv.ParseUint(header.Get("Content-Length"), 10, 64) + if err != nil { + return nil, err + } + + return &FileProperties{ + CacheControl: header.Get("Cache-Control"), + ContentLength: size, + ContentType: header.Get("Content-Type"), + CopyCompletionTime: header.Get("x-ms-copy-completion-time"), + CopyID: header.Get("x-ms-copy-id"), + CopyProgress: header.Get("x-ms-copy-progress"), + CopySource: header.Get("x-ms-copy-source"), + CopyStatus: header.Get("x-ms-copy-status"), + CopyStatusDesc: header.Get("x-ms-copy-status-description"), + Disposition: header.Get("Content-Disposition"), + Encoding: header.Get("Content-Encoding"), + Etag: header.Get("ETag"), + Language: header.Get("Content-Language"), + LastModified: header.Get("Last-Modified"), + MD5: header.Get("Content-MD5"), + }, nil +} + +// GetShareProperties provides various information about the specified +// file. See https://msdn.microsoft.com/en-us/library/azure/dn689099.aspx +func (f FileServiceClient) GetShareProperties(name string) (*ShareProperties, error) { + headers, err := f.getResourceHeaders(ToPathSegment(name), compNone, resourceShare, http.MethodHead) + if err != nil { + return nil, err + } + return &ShareProperties{ + LastModified: headers.Get("Last-Modified"), + Etag: headers.Get("Etag"), + Quota: headers.Get("x-ms-share-quota"), + }, nil +} + +// returns HTTP header data for the specified directory or share +func (f FileServiceClient) getResourceHeaders(path string, comp compType, res resourceType, verb string) (http.Header, error) { + resp, err := f.getResourceNoClose(path, comp, res, verb, nil) + if err != nil { + return nil, err + } + defer resp.body.Close() + + if err = checkRespCode(resp.statusCode, []int{http.StatusOK}); err != nil { + return nil, err + } + + return resp.headers, nil +} + +// gets the specified resource, doesn't close the response body +func (f FileServiceClient) getResourceNoClose(path string, comp compType, res resourceType, verb string, extraHeaders map[string]string) (*storageResponse, error) { + if err := f.checkForStorageEmulator(); err != nil { + return nil, err + } + + params := getURLInitValues(comp, res) + uri := f.client.getEndpoint(fileServiceName, path, params) + headers := mergeHeaders(f.client.getStandardHeaders(), extraHeaders) + + return f.client.exec(verb, uri, headers, nil) +} + +// SetFileProperties operation sets system properties on the specified file. +// +// Some keys may be converted to Camel-Case before sending. All keys +// are returned in lower case by SetFileProperties. HTTP header names +// are case-insensitive so case munging should not matter to other +// applications either. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166975.aspx +func (f FileServiceClient) SetFileProperties(path string, props FileProperties) error { + return f.setResourceHeaders(path, compProperties, resourceFile, headersFromStruct(props)) +} + +// SetShareProperties replaces the ShareHeaders for the specified file. +// +// Some keys may be converted to Camel-Case before sending. All keys +// are returned in lower case by SetShareProperties. HTTP header names +// are case-insensitive so case munging should not matter to other +// applications either. +// +// See https://msdn.microsoft.com/en-us/library/azure/mt427368.aspx +func (f FileServiceClient) SetShareProperties(name string, shareHeaders ShareHeaders) error { + return f.setResourceHeaders(ToPathSegment(name), compProperties, resourceShare, headersFromStruct(shareHeaders)) +} + +// DeleteDirectory operation removes the specified empty directory. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn166969.aspx +func (f FileServiceClient) DeleteDirectory(path string) error { + return f.deleteResource(path, resourceDirectory) +} + +// DeleteFile operation immediately removes the file from the storage account. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn689085.aspx +func (f FileServiceClient) DeleteFile(path string) error { + return f.deleteResource(path, resourceFile) } // DeleteShare operation marks the specified share for deletion. The share @@ -61,12 +682,7 @@ func (f FileServiceClient) createShare(name string) (*storageResponse, error) { // // See https://msdn.microsoft.com/en-us/library/azure/dn689090.aspx func (f FileServiceClient) DeleteShare(name string) error { - resp, err := f.deleteShare(name) - if err != nil { - return err - } - defer resp.body.Close() - return checkRespCode(resp.statusCode, []int{http.StatusAccepted}) + return f.deleteResource(ToPathSegment(name), resourceShare) } // DeleteShareIfExists operation marks the specified share for deletion if it @@ -76,7 +692,7 @@ func (f FileServiceClient) DeleteShare(name string) error { // // See https://msdn.microsoft.com/en-us/library/azure/dn689090.aspx func (f FileServiceClient) DeleteShareIfExists(name string) (bool, error) { - resp, err := f.deleteShare(name) + resp, err := f.deleteResourceNoClose(ToPathSegment(name), resourceShare) if resp != nil { defer resp.body.Close() if resp.statusCode == http.StatusAccepted || resp.statusCode == http.StatusNotFound { @@ -86,14 +702,170 @@ func (f FileServiceClient) DeleteShareIfExists(name string) (bool, error) { return false, err } -// deleteShare makes the call to Delete Share operation endpoint and returns -// the response -func (f FileServiceClient) deleteShare(name string) (*storageResponse, error) { +// deletes the resource and returns the response +func (f FileServiceClient) deleteResource(path string, res resourceType) error { + resp, err := f.deleteResourceNoClose(path, res) + if err != nil { + return err + } + defer resp.body.Close() + return checkRespCode(resp.statusCode, []int{http.StatusAccepted}) +} + +// deletes the resource and returns the response, doesn't close the response body +func (f FileServiceClient) deleteResourceNoClose(path string, res resourceType) (*storageResponse, error) { if err := f.checkForStorageEmulator(); err != nil { return nil, err } - uri := f.client.getEndpoint(fileServiceName, pathForFileShare(name), url.Values{"restype": {"share"}}) - return f.client.exec("DELETE", uri, f.client.getStandardHeaders(), nil) + + values := getURLInitValues(compNone, res) + uri := f.client.getEndpoint(fileServiceName, path, values) + return f.client.exec(http.MethodDelete, uri, f.client.getStandardHeaders(), nil) +} + +// SetDirectoryMetadata replaces the metadata for the specified directory. +// +// Some keys may be converted to Camel-Case before sending. All keys +// are returned in lower case by GetDirectoryMetadata. HTTP header names +// are case-insensitive so case munging should not matter to other +// applications either. +// +// See https://msdn.microsoft.com/en-us/library/azure/mt427370.aspx +func (f FileServiceClient) SetDirectoryMetadata(path string, metadata map[string]string) error { + return f.setResourceHeaders(path, compMetadata, resourceDirectory, mergeMDIntoExtraHeaders(metadata, nil)) +} + +// SetFileMetadata replaces the metadata for the specified file. +// +// Some keys may be converted to Camel-Case before sending. All keys +// are returned in lower case by GetFileMetadata. HTTP header names +// are case-insensitive so case munging should not matter to other +// applications either. +// +// See https://msdn.microsoft.com/en-us/library/azure/dn689097.aspx +func (f FileServiceClient) SetFileMetadata(path string, metadata map[string]string) error { + return f.setResourceHeaders(path, compMetadata, resourceFile, mergeMDIntoExtraHeaders(metadata, nil)) +} + +// SetShareMetadata replaces the metadata for the specified Share. +// +// Some keys may be converted to Camel-Case before sending. All keys +// are returned in lower case by GetShareMetadata. HTTP header names +// are case-insensitive so case munging should not matter to other +// applications either. +// +// See https://msdn.microsoft.com/en-us/library/azure/dd179414.aspx +func (f FileServiceClient) SetShareMetadata(name string, metadata map[string]string) error { + return f.setResourceHeaders(ToPathSegment(name), compMetadata, resourceShare, mergeMDIntoExtraHeaders(metadata, nil)) +} + +// merges metadata into extraHeaders and returns extraHeaders +func mergeMDIntoExtraHeaders(metadata, extraHeaders map[string]string) map[string]string { + if metadata == nil && extraHeaders == nil { + return nil + } + if extraHeaders == nil { + extraHeaders = make(map[string]string) + } + for k, v := range metadata { + extraHeaders[userDefinedMetadataHeaderPrefix+k] = v + } + return extraHeaders +} + +// merges extraHeaders into headers and returns headers +func mergeHeaders(headers, extraHeaders map[string]string) map[string]string { + for k, v := range extraHeaders { + headers[k] = v + } + return headers +} + +// sets extra header data for the specified resource +func (f FileServiceClient) setResourceHeaders(path string, comp compType, res resourceType, extraHeaders map[string]string) error { + if err := f.checkForStorageEmulator(); err != nil { + return err + } + + params := getURLInitValues(comp, res) + uri := f.client.getEndpoint(fileServiceName, path, params) + headers := mergeHeaders(f.client.getStandardHeaders(), extraHeaders) + + resp, err := f.client.exec(http.MethodPut, uri, headers, nil) + if err != nil { + return err + } + defer resp.body.Close() + + return checkRespCode(resp.statusCode, []int{http.StatusOK}) +} + +// GetDirectoryMetadata returns all user-defined metadata for the specified directory. +// +// All metadata keys will be returned in lower case. (HTTP header +// names are case-insensitive.) +// +// See https://msdn.microsoft.com/en-us/library/azure/mt427371.aspx +func (f FileServiceClient) GetDirectoryMetadata(path string) (map[string]string, error) { + return f.getMetadata(path, resourceDirectory) +} + +// GetFileMetadata returns all user-defined metadata for the specified file. +// +// All metadata keys will be returned in lower case. (HTTP header +// names are case-insensitive.) +// +// See https://msdn.microsoft.com/en-us/library/azure/dn689098.aspx +func (f FileServiceClient) GetFileMetadata(path string) (map[string]string, error) { + return f.getMetadata(path, resourceFile) +} + +// GetShareMetadata returns all user-defined metadata for the specified share. +// +// All metadata keys will be returned in lower case. (HTTP header +// names are case-insensitive.) +// +// See https://msdn.microsoft.com/en-us/library/azure/dd179414.aspx +func (f FileServiceClient) GetShareMetadata(name string) (map[string]string, error) { + return f.getMetadata(ToPathSegment(name), resourceShare) +} + +// gets metadata for the specified resource +func (f FileServiceClient) getMetadata(path string, res resourceType) (map[string]string, error) { + if err := f.checkForStorageEmulator(); err != nil { + return nil, err + } + + headers, err := f.getResourceHeaders(path, compMetadata, res, http.MethodGet) + if err != nil { + return nil, err + } + + return getFileMDFromHeaders(headers), nil +} + +// returns a map of custom metadata values from the specified HTTP header +func getFileMDFromHeaders(header http.Header) map[string]string { + metadata := make(map[string]string) + for k, v := range header { + // Can't trust CanonicalHeaderKey() to munge case + // reliably. "_" is allowed in identifiers: + // https://msdn.microsoft.com/en-us/library/azure/dd179414.aspx + // https://msdn.microsoft.com/library/aa664670(VS.71).aspx + // http://tools.ietf.org/html/rfc7230#section-3.2 + // ...but "_" is considered invalid by + // CanonicalMIMEHeaderKey in + // https://golang.org/src/net/textproto/reader.go?s=14615:14659#L542 + // so k can be "X-Ms-Meta-Foo" or "x-ms-meta-foo_bar". + k = strings.ToLower(k) + if len(v) == 0 || !strings.HasPrefix(k, strings.ToLower(userDefinedMetadataHeaderPrefix)) { + continue + } + // metadata["foo"] = content of the last X-Ms-Meta-Foo header + k = k[len(userDefinedMetadataHeaderPrefix):] + metadata[k] = v[len(v)-1] + } + return metadata } //checkForStorageEmulator determines if the client is setup for use with diff --git a/vendor/github.com/Azure/azure-sdk-for-go/storage/queue.go b/vendor/github.com/Azure/azure-sdk-for-go/storage/queue.go index 3ecf4aca0d..0cd3578442 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/storage/queue.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/storage/queue.go @@ -82,6 +82,24 @@ func (p PeekMessagesParameters) getParameters() url.Values { return out } +// UpdateMessageParameters is the set of options can be specified for Update Messsage +// operation. A zero struct does not use any preferences for the request. +type UpdateMessageParameters struct { + PopReceipt string + VisibilityTimeout int +} + +func (p UpdateMessageParameters) getParameters() url.Values { + out := url.Values{} + if p.PopReceipt != "" { + out.Set("popreceipt", p.PopReceipt) + } + if p.VisibilityTimeout != 0 { + out.Set("visibilitytimeout", strconv.Itoa(p.VisibilityTimeout)) + } + return out +} + // GetMessagesResponse represents a response returned from Get Messages // operation. type GetMessagesResponse struct { @@ -304,3 +322,23 @@ func (c QueueServiceClient) DeleteMessage(queue, messageID, popReceipt string) e defer resp.body.Close() return checkRespCode(resp.statusCode, []int{http.StatusNoContent}) } + +// UpdateMessage operation deletes the specified message. +// +// See https://msdn.microsoft.com/en-us/library/azure/hh452234.aspx +func (c QueueServiceClient) UpdateMessage(queue string, messageID string, message string, params UpdateMessageParameters) error { + uri := c.client.getEndpoint(queueServiceName, pathForMessage(queue, messageID), params.getParameters()) + req := putMessageRequest{MessageText: message} + body, nn, err := xmlMarshal(req) + if err != nil { + return err + } + headers := c.client.getStandardHeaders() + headers["Content-Length"] = fmt.Sprintf("%d", nn) + resp, err := c.client.exec("PUT", uri, headers, body) + if err != nil { + return err + } + defer resp.body.Close() + return checkRespCode(resp.statusCode, []int{http.StatusNoContent}) +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/storage/table_entities.go b/vendor/github.com/Azure/azure-sdk-for-go/storage/table_entities.go index c81393e5f5..a26d9c6f58 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/storage/table_entities.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/storage/table_entities.go @@ -10,6 +10,8 @@ import ( "reflect" ) +// Annotating as secure for gas scanning +/* #nosec */ const ( partitionKeyNode = "PartitionKey" rowKeyNode = "RowKey" @@ -98,6 +100,10 @@ func (c *TableServiceClient) QueryTableEntities(tableName AzureTable, previousCo resp, err := c.client.execTable("GET", uri, headers, nil) + if err != nil { + return nil, nil, err + } + contToken := extractContinuationTokenFromHeaders(resp.headers) if err != nil { diff --git a/vendor/github.com/Azure/azure-sdk-for-go/storage/util.go b/vendor/github.com/Azure/azure-sdk-for-go/storage/util.go index d71c6ce55d..57ca1b6d93 100644 --- a/vendor/github.com/Azure/azure-sdk-for-go/storage/util.go +++ b/vendor/github.com/Azure/azure-sdk-for-go/storage/util.go @@ -77,7 +77,7 @@ func headersFromStruct(v interface{}) map[string]string { for i := 0; i < value.NumField(); i++ { key := value.Type().Field(i).Tag.Get("header") val := value.Field(i).String() - if val != "" { + if key != "" && val != "" { headers[key] = val } } diff --git a/vendor/github.com/Azure/go-autorest/autorest/azure/environments.go b/vendor/github.com/Azure/go-autorest/autorest/azure/environments.go index ebf754eab4..3af1b48d27 100644 --- a/vendor/github.com/Azure/go-autorest/autorest/azure/environments.go +++ b/vendor/github.com/Azure/go-autorest/autorest/azure/environments.go @@ -19,93 +19,103 @@ var environments = map[string]Environment{ // Environment represents a set of endpoints for each of Azure's Clouds. type Environment struct { - Name string `json:"name"` - ManagementPortalURL string `json:"managementPortalURL"` - PublishSettingsURL string `json:"publishSettingsURL"` - ServiceManagementEndpoint string `json:"serviceManagementEndpoint"` - ResourceManagerEndpoint string `json:"resourceManagerEndpoint"` - ActiveDirectoryEndpoint string `json:"activeDirectoryEndpoint"` - GalleryEndpoint string `json:"galleryEndpoint"` - KeyVaultEndpoint string `json:"keyVaultEndpoint"` - GraphEndpoint string `json:"graphEndpoint"` - StorageEndpointSuffix string `json:"storageEndpointSuffix"` - SQLDatabaseDNSSuffix string `json:"sqlDatabaseDNSSuffix"` - TrafficManagerDNSSuffix string `json:"trafficManagerDNSSuffix"` - KeyVaultDNSSuffix string `json:"keyVaultDNSSuffix"` - ServiceBusEndpointSuffix string `json:"serviceBusEndpointSuffix"` + Name string `json:"name"` + ManagementPortalURL string `json:"managementPortalURL"` + PublishSettingsURL string `json:"publishSettingsURL"` + ServiceManagementEndpoint string `json:"serviceManagementEndpoint"` + ResourceManagerEndpoint string `json:"resourceManagerEndpoint"` + ActiveDirectoryEndpoint string `json:"activeDirectoryEndpoint"` + GalleryEndpoint string `json:"galleryEndpoint"` + KeyVaultEndpoint string `json:"keyVaultEndpoint"` + GraphEndpoint string `json:"graphEndpoint"` + StorageEndpointSuffix string `json:"storageEndpointSuffix"` + SQLDatabaseDNSSuffix string `json:"sqlDatabaseDNSSuffix"` + TrafficManagerDNSSuffix string `json:"trafficManagerDNSSuffix"` + KeyVaultDNSSuffix string `json:"keyVaultDNSSuffix"` + ServiceBusEndpointSuffix string `json:"serviceBusEndpointSuffix"` + ServiceManagementVMDNSSuffix string `json:"serviceManagementVMDNSSuffix"` + ResourceManagerVMDNSSuffix string `json:"resourceManagerVMDNSSuffix"` } var ( // PublicCloud is the default public Azure cloud environment PublicCloud = Environment{ - Name: "AzurePublicCloud", - ManagementPortalURL: "https://manage.windowsazure.com/", - PublishSettingsURL: "https://manage.windowsazure.com/publishsettings/index", - ServiceManagementEndpoint: "https://management.core.windows.net/", - ResourceManagerEndpoint: "https://management.azure.com/", - ActiveDirectoryEndpoint: "https://login.microsoftonline.com/", - GalleryEndpoint: "https://gallery.azure.com/", - KeyVaultEndpoint: "https://vault.azure.net/", - GraphEndpoint: "https://graph.windows.net/", - StorageEndpointSuffix: "core.windows.net", - SQLDatabaseDNSSuffix: "database.windows.net", - TrafficManagerDNSSuffix: "trafficmanager.net", - KeyVaultDNSSuffix: "vault.azure.net", - ServiceBusEndpointSuffix: "servicebus.azure.com", + Name: "AzurePublicCloud", + ManagementPortalURL: "https://manage.windowsazure.com/", + PublishSettingsURL: "https://manage.windowsazure.com/publishsettings/index", + ServiceManagementEndpoint: "https://management.core.windows.net/", + ResourceManagerEndpoint: "https://management.azure.com/", + ActiveDirectoryEndpoint: "https://login.microsoftonline.com/", + GalleryEndpoint: "https://gallery.azure.com/", + KeyVaultEndpoint: "https://vault.azure.net/", + GraphEndpoint: "https://graph.windows.net/", + StorageEndpointSuffix: "core.windows.net", + SQLDatabaseDNSSuffix: "database.windows.net", + TrafficManagerDNSSuffix: "trafficmanager.net", + KeyVaultDNSSuffix: "vault.azure.net", + ServiceBusEndpointSuffix: "servicebus.azure.com", + ServiceManagementVMDNSSuffix: "cloudapp.net", + ResourceManagerVMDNSSuffix: "cloudapp.azure.com", } // USGovernmentCloud is the cloud environment for the US Government USGovernmentCloud = Environment{ - Name: "AzureUSGovernmentCloud", - ManagementPortalURL: "https://manage.windowsazure.us/", - PublishSettingsURL: "https://manage.windowsazure.us/publishsettings/index", - ServiceManagementEndpoint: "https://management.core.usgovcloudapi.net/", - ResourceManagerEndpoint: "https://management.usgovcloudapi.net/", - ActiveDirectoryEndpoint: "https://login.microsoftonline.com/", - GalleryEndpoint: "https://gallery.usgovcloudapi.net/", - KeyVaultEndpoint: "https://vault.usgovcloudapi.net/", - GraphEndpoint: "https://graph.usgovcloudapi.net/", - StorageEndpointSuffix: "core.usgovcloudapi.net", - SQLDatabaseDNSSuffix: "database.usgovcloudapi.net", - TrafficManagerDNSSuffix: "usgovtrafficmanager.net", - KeyVaultDNSSuffix: "vault.usgovcloudapi.net", - ServiceBusEndpointSuffix: "servicebus.usgovcloudapi.net", + Name: "AzureUSGovernmentCloud", + ManagementPortalURL: "https://manage.windowsazure.us/", + PublishSettingsURL: "https://manage.windowsazure.us/publishsettings/index", + ServiceManagementEndpoint: "https://management.core.usgovcloudapi.net/", + ResourceManagerEndpoint: "https://management.usgovcloudapi.net/", + ActiveDirectoryEndpoint: "https://login.microsoftonline.com/", + GalleryEndpoint: "https://gallery.usgovcloudapi.net/", + KeyVaultEndpoint: "https://vault.usgovcloudapi.net/", + GraphEndpoint: "https://graph.usgovcloudapi.net/", + StorageEndpointSuffix: "core.usgovcloudapi.net", + SQLDatabaseDNSSuffix: "database.usgovcloudapi.net", + TrafficManagerDNSSuffix: "usgovtrafficmanager.net", + KeyVaultDNSSuffix: "vault.usgovcloudapi.net", + ServiceBusEndpointSuffix: "servicebus.usgovcloudapi.net", + ServiceManagementVMDNSSuffix: "usgovcloudapp.net", + ResourceManagerVMDNSSuffix: "cloudapp.windowsazure.us", } // ChinaCloud is the cloud environment operated in China ChinaCloud = Environment{ - Name: "AzureChinaCloud", - ManagementPortalURL: "https://manage.chinacloudapi.com/", - PublishSettingsURL: "https://manage.chinacloudapi.com/publishsettings/index", - ServiceManagementEndpoint: "https://management.core.chinacloudapi.cn/", - ResourceManagerEndpoint: "https://management.chinacloudapi.cn/", - ActiveDirectoryEndpoint: "https://login.chinacloudapi.cn/?api-version=1.0", - GalleryEndpoint: "https://gallery.chinacloudapi.cn/", - KeyVaultEndpoint: "https://vault.azure.cn/", - GraphEndpoint: "https://graph.chinacloudapi.cn/", - StorageEndpointSuffix: "core.chinacloudapi.cn", - SQLDatabaseDNSSuffix: "database.chinacloudapi.cn", - TrafficManagerDNSSuffix: "trafficmanager.cn", - KeyVaultDNSSuffix: "vault.azure.cn", - ServiceBusEndpointSuffix: "servicebus.chinacloudapi.net", + Name: "AzureChinaCloud", + ManagementPortalURL: "https://manage.chinacloudapi.com/", + PublishSettingsURL: "https://manage.chinacloudapi.com/publishsettings/index", + ServiceManagementEndpoint: "https://management.core.chinacloudapi.cn/", + ResourceManagerEndpoint: "https://management.chinacloudapi.cn/", + ActiveDirectoryEndpoint: "https://login.chinacloudapi.cn/?api-version=1.0", + GalleryEndpoint: "https://gallery.chinacloudapi.cn/", + KeyVaultEndpoint: "https://vault.azure.cn/", + GraphEndpoint: "https://graph.chinacloudapi.cn/", + StorageEndpointSuffix: "core.chinacloudapi.cn", + SQLDatabaseDNSSuffix: "database.chinacloudapi.cn", + TrafficManagerDNSSuffix: "trafficmanager.cn", + KeyVaultDNSSuffix: "vault.azure.cn", + ServiceBusEndpointSuffix: "servicebus.chinacloudapi.net", + ServiceManagementVMDNSSuffix: "chinacloudapp.cn", + ResourceManagerVMDNSSuffix: "cloudapp.azure.cn", } // GermanCloud is the cloud environment operated in Germany GermanCloud = Environment{ - Name: "AzureGermanCloud", - ManagementPortalURL: "http://portal.microsoftazure.de/", - PublishSettingsURL: "https://manage.microsoftazure.de/publishsettings/index", - ServiceManagementEndpoint: "https://management.core.cloudapi.de/", - ResourceManagerEndpoint: "https://management.microsoftazure.de/", - ActiveDirectoryEndpoint: "https://login.microsoftonline.de/", - GalleryEndpoint: "https://gallery.cloudapi.de/", - KeyVaultEndpoint: "https://vault.microsoftazure.de/", - GraphEndpoint: "https://graph.cloudapi.de/", - StorageEndpointSuffix: "core.cloudapi.de", - SQLDatabaseDNSSuffix: "database.cloudapi.de", - TrafficManagerDNSSuffix: "azuretrafficmanager.de", - KeyVaultDNSSuffix: "vault.microsoftazure.de", - ServiceBusEndpointSuffix: "servicebus.cloudapi.de", + Name: "AzureGermanCloud", + ManagementPortalURL: "http://portal.microsoftazure.de/", + PublishSettingsURL: "https://manage.microsoftazure.de/publishsettings/index", + ServiceManagementEndpoint: "https://management.core.cloudapi.de/", + ResourceManagerEndpoint: "https://management.microsoftazure.de/", + ActiveDirectoryEndpoint: "https://login.microsoftonline.de/", + GalleryEndpoint: "https://gallery.cloudapi.de/", + KeyVaultEndpoint: "https://vault.microsoftazure.de/", + GraphEndpoint: "https://graph.cloudapi.de/", + StorageEndpointSuffix: "core.cloudapi.de", + SQLDatabaseDNSSuffix: "database.cloudapi.de", + TrafficManagerDNSSuffix: "azuretrafficmanager.de", + KeyVaultDNSSuffix: "vault.microsoftazure.de", + ServiceBusEndpointSuffix: "servicebus.cloudapi.de", + ServiceManagementVMDNSSuffix: "azurecloudapp.de", + ResourceManagerVMDNSSuffix: "cloudapp.microsoftazure.de", } ) @@ -121,8 +131,13 @@ func EnvironmentFromName(name string) (Environment, error) { // OAuthConfigForTenant returns an OAuthConfig with tenant specific urls func (env Environment) OAuthConfigForTenant(tenantID string) (*OAuthConfig, error) { + return OAuthConfigForTenant(env.ActiveDirectoryEndpoint, tenantID) +} + +// OAuthConfigForTenant returns an OAuthConfig with tenant specific urls for target cloud auth endpoint +func OAuthConfigForTenant(activeDirectoryEndpoint, tenantID string) (*OAuthConfig, error) { template := "%s/oauth2/%s?api-version=%s" - u, err := url.Parse(env.ActiveDirectoryEndpoint) + u, err := url.Parse(activeDirectoryEndpoint) if err != nil { return nil, err } diff --git a/vendor/github.com/Azure/go-autorest/autorest/azure/token.go b/vendor/github.com/Azure/go-autorest/autorest/azure/token.go index db9a8fa02a..d2d38162cd 100644 --- a/vendor/github.com/Azure/go-autorest/autorest/azure/token.go +++ b/vendor/github.com/Azure/go-autorest/autorest/azure/token.go @@ -91,7 +91,7 @@ type ServicePrincipalNoSecret struct { // SetAuthenticationValues is a method of the interface ServicePrincipalSecret // It only returns an error for the ServicePrincipalNoSecret type func (noSecret *ServicePrincipalNoSecret) SetAuthenticationValues(spt *ServicePrincipalToken, v *url.Values) error { - return fmt.Errorf("Manually created ServicePrincipalToken does not contain secret material to retrieve a new access token.") + return fmt.Errorf("Manually created ServicePrincipalToken does not contain secret material to retrieve a new access token") } // ServicePrincipalSecret is an interface that allows various secret mechanism to fill the form @@ -138,7 +138,7 @@ func (secret *ServicePrincipalCertificateSecret) SignJwt(spt *ServicePrincipalTo token := jwt.New(jwt.SigningMethodRS256) token.Header["x5t"] = thumbprint token.Claims = jwt.MapClaims{ - "aud": spt.oauthConfig.TokenEndpoint, + "aud": spt.oauthConfig.TokenEndpoint.String(), "iss": spt.clientID, "sub": spt.clientID, "jti": base64.URLEncoding.EncodeToString(jti), diff --git a/vendor/github.com/Azure/go-autorest/autorest/client.go b/vendor/github.com/Azure/go-autorest/autorest/client.go index 95e9a203d8..b55b3d1035 100644 --- a/vendor/github.com/Azure/go-autorest/autorest/client.go +++ b/vendor/github.com/Azure/go-autorest/autorest/client.go @@ -20,9 +20,6 @@ const ( // DefaultRetryAttempts is number of attempts for retry status codes (5xx). DefaultRetryAttempts = 3 - - // DefaultRetryDuration is a resonable delay for retry. - defaultRetryInterval = 30 * time.Second ) var statusCodesForRetry = []int{ @@ -130,6 +127,9 @@ type Client struct { // RetryAttempts sets the default number of retry attempts for client. RetryAttempts int + // RetryDuration sets the delay duration for retries. + RetryDuration time.Duration + // UserAgent, if not empty, will be set as the HTTP User-Agent header on all requests sent // through the Do method. UserAgent string @@ -144,6 +144,7 @@ func NewClientWithUserAgent(ua string) Client { PollingDelay: DefaultPollingDelay, PollingDuration: DefaultPollingDuration, RetryAttempts: DefaultRetryAttempts, + RetryDuration: 30 * time.Second, UserAgent: ua, } } @@ -163,7 +164,7 @@ func (c Client) Do(r *http.Request) (*http.Response, error) { return nil, NewErrorWithError(err, "autorest/Client", "Do", nil, "Preparing request failed") } resp, err := SendWithSender(c.sender(), r, - DoRetryForStatusCodes(c.RetryAttempts, defaultRetryInterval, statusCodesForRetry...)) + DoRetryForStatusCodes(c.RetryAttempts, c.RetryDuration, statusCodesForRetry...)) Respond(resp, c.ByInspecting()) return resp, err diff --git a/vendor/github.com/Azure/go-autorest/autorest/date/time.go b/vendor/github.com/Azure/go-autorest/autorest/date/time.go index fd3c5854e7..c1af629634 100644 --- a/vendor/github.com/Azure/go-autorest/autorest/date/time.go +++ b/vendor/github.com/Azure/go-autorest/autorest/date/time.go @@ -1,12 +1,17 @@ package date import ( + "regexp" "time" ) +// Azure reports time in UTC but it doesn't include the 'Z' time zone suffix in some cases. const ( - rfc3339JSON = `"` + time.RFC3339Nano + `"` - rfc3339 = time.RFC3339Nano + azureUtcFormatJSON = `"2006-01-02T15:04:05.999999999"` + azureUtcFormat = "2006-01-02T15:04:05.999999999" + rfc3339JSON = `"` + time.RFC3339Nano + `"` + rfc3339 = time.RFC3339Nano + tzOffsetRegex = `(Z|z|\+|-)(\d+:\d+)*"*$` ) // Time defines a type similar to time.Time but assumes a layout of RFC3339 date-time (i.e., @@ -36,7 +41,14 @@ func (t Time) MarshalJSON() (json []byte, err error) { // UnmarshalJSON reconstitutes the Time from a JSON string conforming to RFC3339 date-time // (i.e., 2006-01-02T15:04:05Z). func (t *Time) UnmarshalJSON(data []byte) (err error) { - t.Time, err = ParseTime(rfc3339JSON, string(data)) + timeFormat := azureUtcFormatJSON + match, err := regexp.Match(tzOffsetRegex, data) + if err != nil { + return err + } else if match { + timeFormat = rfc3339JSON + } + t.Time, err = ParseTime(timeFormat, string(data)) return err } @@ -49,7 +61,14 @@ func (t Time) MarshalText() (text []byte, err error) { // UnmarshalText reconstitutes a Time saved as a byte array conforming to RFC3339 date-time // (i.e., 2006-01-02T15:04:05Z). func (t *Time) UnmarshalText(data []byte) (err error) { - t.Time, err = ParseTime(rfc3339, string(data)) + timeFormat := azureUtcFormat + match, err := regexp.Match(tzOffsetRegex, data) + if err != nil { + return err + } else if match { + timeFormat = rfc3339 + } + t.Time, err = ParseTime(timeFormat, string(data)) return err } diff --git a/vendor/github.com/Azure/go-autorest/autorest/preparer.go b/vendor/github.com/Azure/go-autorest/autorest/preparer.go index 0f18c2aced..5b2c52704a 100644 --- a/vendor/github.com/Azure/go-autorest/autorest/preparer.go +++ b/vendor/github.com/Azure/go-autorest/autorest/preparer.go @@ -4,7 +4,9 @@ import ( "bytes" "encoding/json" "fmt" + "io" "io/ioutil" + "mime/multipart" "net/http" "net/url" "strings" @@ -197,6 +199,64 @@ func WithFormData(v url.Values) PrepareDecorator { } } +// WithMultiPartFormData returns a PrepareDecoratore that "URL encodes" (e.g., bar=baz&foo=quux) form parameters +// into the http.Request body. +func WithMultiPartFormData(formDataParameters map[string]interface{}) PrepareDecorator { + return func(p Preparer) Preparer { + return PreparerFunc(func(r *http.Request) (*http.Request, error) { + r, err := p.Prepare(r) + if err == nil { + var body bytes.Buffer + writer := multipart.NewWriter(&body) + for key, value := range formDataParameters { + if rc, ok := value.(io.ReadCloser); ok { + var fd io.Writer + if fd, err = writer.CreateFormFile(key, key); err != nil { + return r, err + } + if _, err = io.Copy(fd, rc); err != nil { + return r, err + } + } else { + if err = writer.WriteField(key, ensureValueString(value)); err != nil { + return r, err + } + } + } + if err = writer.Close(); err != nil { + return r, err + } + if r.Header == nil { + r.Header = make(http.Header) + } + r.Header.Set(http.CanonicalHeaderKey(headerContentType), writer.FormDataContentType()) + r.Body = ioutil.NopCloser(bytes.NewReader(body.Bytes())) + r.ContentLength = int64(body.Len()) + return r, err + } + return r, err + }) + } +} + +// WithFile returns a PrepareDecorator that sends file in request body. +func WithFile(f io.ReadCloser) PrepareDecorator { + return func(p Preparer) Preparer { + return PreparerFunc(func(r *http.Request) (*http.Request, error) { + r, err := p.Prepare(r) + if err == nil { + b, err := ioutil.ReadAll(f) + if err != nil { + return r, err + } + r.Body = ioutil.NopCloser(bytes.NewReader(b)) + r.ContentLength = int64(len(b)) + } + return r, err + }) + } +} + // WithBool returns a PrepareDecorator that encodes the passed bool into the body of the request // and sets the Content-Length header. func WithBool(v bool) PrepareDecorator { diff --git a/vendor/github.com/Azure/go-autorest/autorest/utility.go b/vendor/github.com/Azure/go-autorest/autorest/utility.go index b7f4a723b1..78067148b2 100644 --- a/vendor/github.com/Azure/go-autorest/autorest/utility.go +++ b/vendor/github.com/Azure/go-autorest/autorest/utility.go @@ -7,6 +7,7 @@ import ( "fmt" "io" "net/url" + "reflect" "sort" "strings" ) @@ -106,6 +107,22 @@ func ensureValueString(value interface{}) string { } } +// MapToValues method converts map[string]interface{} to url.Values. +func MapToValues(m map[string]interface{}) url.Values { + v := url.Values{} + for key, value := range m { + x := reflect.ValueOf(value) + if x.Kind() == reflect.Array || x.Kind() == reflect.Slice { + for i := 0; i < x.Len(); i++ { + v.Add(key, ensureValueString(x.Index(i))) + } + } else { + v.Add(key, ensureValueString(value)) + } + } + return v +} + // String method converts interface v to string. If interface is a list, it // joins list elements using separator. func String(v interface{}, sep ...string) string { diff --git a/vendor/github.com/Azure/go-autorest/autorest/validation/validation.go b/vendor/github.com/Azure/go-autorest/autorest/validation/validation.go new file mode 100644 index 0000000000..d7b0eadc55 --- /dev/null +++ b/vendor/github.com/Azure/go-autorest/autorest/validation/validation.go @@ -0,0 +1,373 @@ +/* +Package validation provides methods for validating parameter value using reflection. +*/ +package validation + +import ( + "fmt" + "reflect" + "regexp" + "strings" +) + +// Constraint stores constraint name, target field name +// Rule and chain validations. +type Constraint struct { + + // Target field name for validation. + Target string + + // Constraint name e.g. minLength, MaxLength, Pattern, etc. + Name string + + // Rule for constraint e.g. greater than 10, less than 5 etc. + Rule interface{} + + // Chain Validations for struct type + Chain []Constraint +} + +// Validation stores parameter-wise validation. +type Validation struct { + TargetValue interface{} + Constraints []Constraint +} + +// Constraint list +const ( + Empty = "Empty" + Null = "Null" + ReadOnly = "ReadOnly" + Pattern = "Pattern" + MaxLength = "MaxLength" + MinLength = "MinLength" + MaxItems = "MaxItems" + MinItems = "MinItems" + MultipleOf = "MultipleOf" + UniqueItems = "UniqueItems" + InclusiveMaximum = "InclusiveMaximum" + ExclusiveMaximum = "ExclusiveMaximum" + ExclusiveMinimum = "ExclusiveMinimum" + InclusiveMinimum = "InclusiveMinimum" +) + +// Validate method validates constraints on parameter +// passed in validation array. +func Validate(m []Validation) error { + for _, item := range m { + v := reflect.ValueOf(item.TargetValue) + for _, constraint := range item.Constraints { + var err error + switch v.Kind() { + case reflect.Ptr: + err = validatePtr(v, constraint) + case reflect.String: + err = validateString(v, constraint) + case reflect.Struct: + err = validateStruct(v, constraint) + case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64: + err = validateInt(v, constraint) + case reflect.Float32, reflect.Float64: + err = validateFloat(v, constraint) + case reflect.Array, reflect.Slice, reflect.Map: + err = validateArrayMap(v, constraint) + default: + err = createError(v, constraint, fmt.Sprintf("unknown type %v", v.Kind())) + } + + if err != nil { + return err + } + } + } + return nil +} + +func validateStruct(x reflect.Value, v Constraint, name ...string) error { + //Get field name from target name which is in format a.b.c + s := strings.Split(v.Target, ".") + f := x.FieldByName(s[len(s)-1]) + if isZero(f) { + return createError(x, v, fmt.Sprintf("field %q doesn't exist", v.Target)) + } + + if err := Validate([]Validation{ + { + TargetValue: getInterfaceValue(f), + Constraints: []Constraint{v}, + }, + }); err != nil { + return err + } + return nil +} + +func validatePtr(x reflect.Value, v Constraint) error { + if v.Name == ReadOnly { + if !x.IsNil() { + return createError(x.Elem(), v, "readonly parameter; must send as nil or empty in request") + } + return nil + } + if x.IsNil() { + return checkNil(x, v) + } + if v.Chain != nil { + return Validate([]Validation{ + { + TargetValue: getInterfaceValue(x.Elem()), + Constraints: v.Chain, + }, + }) + } + return nil +} + +func validateInt(x reflect.Value, v Constraint) error { + i := x.Int() + r, ok := v.Rule.(int) + if !ok { + return createError(x, v, fmt.Sprintf("rule must be integer value for %v constraint; got: %v", v.Name, v.Rule)) + } + switch v.Name { + case MultipleOf: + if i%int64(r) != 0 { + return createError(x, v, fmt.Sprintf("value must be a multiple of %v", r)) + } + case ExclusiveMinimum: + if i <= int64(r) { + return createError(x, v, fmt.Sprintf("value must be greater than %v", r)) + } + case ExclusiveMaximum: + if i >= int64(r) { + return createError(x, v, fmt.Sprintf("value must be less than %v", r)) + } + case InclusiveMinimum: + if i < int64(r) { + return createError(x, v, fmt.Sprintf("value must be greater than or equal to %v", r)) + } + case InclusiveMaximum: + if i > int64(r) { + return createError(x, v, fmt.Sprintf("value must be less than or equal to %v", r)) + } + default: + return createError(x, v, fmt.Sprintf("constraint %v is not applicable for type integer", v.Name)) + } + return nil +} + +func validateFloat(x reflect.Value, v Constraint) error { + f := x.Float() + r, ok := v.Rule.(float64) + if !ok { + return createError(x, v, fmt.Sprintf("rule must be float value for %v constraint; got: %v", v.Name, v.Rule)) + } + switch v.Name { + case ExclusiveMinimum: + if f <= r { + return createError(x, v, fmt.Sprintf("value must be greater than %v", r)) + } + case ExclusiveMaximum: + if f >= r { + return createError(x, v, fmt.Sprintf("value must be less than %v", r)) + } + case InclusiveMinimum: + if f < r { + return createError(x, v, fmt.Sprintf("value must be greater than or equal to %v", r)) + } + case InclusiveMaximum: + if f > r { + return createError(x, v, fmt.Sprintf("value must be less than or equal to %v", r)) + } + default: + return createError(x, v, fmt.Sprintf("constraint %s is not applicable for type float", v.Name)) + } + return nil +} + +func validateString(x reflect.Value, v Constraint) error { + s := x.String() + switch v.Name { + case Empty: + if len(s) == 0 { + return checkEmpty(x, v) + } + case Pattern: + reg, err := regexp.Compile(v.Rule.(string)) + if err != nil { + return createError(x, v, err.Error()) + } + if !reg.MatchString(s) { + return createError(x, v, fmt.Sprintf("value doesn't match pattern %v", v.Rule)) + } + case MaxLength: + if _, ok := v.Rule.(int); !ok { + return createError(x, v, fmt.Sprintf("rule must be integer value for %v constraint; got: %v", v.Name, v.Rule)) + } + if len(s) > v.Rule.(int) { + return createError(x, v, fmt.Sprintf("value length must be less than %v", v.Rule)) + } + case MinLength: + if _, ok := v.Rule.(int); !ok { + return createError(x, v, fmt.Sprintf("rule must be integer value for %v constraint; got: %v", v.Name, v.Rule)) + } + if len(s) < v.Rule.(int) { + return createError(x, v, fmt.Sprintf("value length must be greater than %v", v.Rule)) + } + case ReadOnly: + if len(s) > 0 { + return createError(reflect.ValueOf(s), v, "readonly parameter; must send as nil or empty in request") + } + default: + return createError(x, v, fmt.Sprintf("constraint %s is not applicable to string type", v.Name)) + } + + if v.Chain != nil { + return Validate([]Validation{ + { + TargetValue: getInterfaceValue(x), + Constraints: v.Chain, + }, + }) + } + return nil +} + +func validateArrayMap(x reflect.Value, v Constraint) error { + switch v.Name { + case Null: + if x.IsNil() { + return checkNil(x, v) + } + case Empty: + if x.IsNil() || x.Len() == 0 { + return checkEmpty(x, v) + } + case MaxItems: + if _, ok := v.Rule.(int); !ok { + return createError(x, v, fmt.Sprintf("rule must be integer for %v constraint; got: %v", v.Name, v.Rule)) + } + if x.Len() > v.Rule.(int) { + return createError(x, v, fmt.Sprintf("maximum item limit is %v; got: %v", v.Rule, x.Len())) + } + case MinItems: + if _, ok := v.Rule.(int); !ok { + return createError(x, v, fmt.Sprintf("rule must be integer for %v constraint; got: %v", v.Name, v.Rule)) + } + if x.Len() < v.Rule.(int) { + return createError(x, v, fmt.Sprintf("minimum item limit is %v; got: %v", v.Rule, x.Len())) + } + case UniqueItems: + if x.Kind() == reflect.Array || x.Kind() == reflect.Slice { + if !checkForUniqueInArray(x) { + return createError(x, v, fmt.Sprintf("all items in parameter %q must be unique; got:%v", v.Target, x)) + } + } else if x.Kind() == reflect.Map { + if !checkForUniqueInMap(x) { + return createError(x, v, fmt.Sprintf("all items in parameter %q must be unique; got:%v", v.Target, x)) + } + } else { + return createError(x, v, fmt.Sprintf("type must be array, slice or map for constraint %v; got: %v", v.Name, x.Kind())) + } + case ReadOnly: + if x.Len() != 0 { + return createError(x, v, "readonly parameter; must send as nil or empty in request") + } + default: + return createError(x, v, fmt.Sprintf("constraint %v is not applicable to array, slice and map type", v.Name)) + } + + if v.Chain != nil { + return Validate([]Validation{ + { + TargetValue: getInterfaceValue(x), + Constraints: v.Chain, + }, + }) + } + return nil +} + +func checkNil(x reflect.Value, v Constraint) error { + if _, ok := v.Rule.(bool); !ok { + return createError(x, v, fmt.Sprintf("rule must be bool value for %v constraint; got: %v", v.Name, v.Rule)) + } + if v.Rule.(bool) { + return createError(x, v, "value can not be null; required parameter") + } + return nil +} + +func checkEmpty(x reflect.Value, v Constraint) error { + if _, ok := v.Rule.(bool); !ok { + return createError(x, v, fmt.Sprintf("rule must be bool value for %v constraint; got: %v", v.Name, v.Rule)) + } + + if v.Rule.(bool) { + return createError(x, v, "value can not be null or empty; required parameter") + } + return nil +} + +func checkForUniqueInArray(x reflect.Value) bool { + if x == reflect.Zero(reflect.TypeOf(x)) || x.Len() == 0 { + return false + } + arrOfInterface := make([]interface{}, x.Len()) + + for i := 0; i < x.Len(); i++ { + arrOfInterface[i] = x.Index(i).Interface() + } + + m := make(map[interface{}]bool) + for _, val := range arrOfInterface { + if m[val] { + return false + } + m[val] = true + } + return true +} + +func checkForUniqueInMap(x reflect.Value) bool { + if x == reflect.Zero(reflect.TypeOf(x)) || x.Len() == 0 { + return false + } + mapOfInterface := make(map[interface{}]interface{}, x.Len()) + + keys := x.MapKeys() + for _, k := range keys { + mapOfInterface[k.Interface()] = x.MapIndex(k).Interface() + } + + m := make(map[interface{}]bool) + for _, val := range mapOfInterface { + if m[val] { + return false + } + m[val] = true + } + return true +} + +func getInterfaceValue(x reflect.Value) interface{} { + if x.Kind() == reflect.Invalid { + return nil + } + return x.Interface() +} + +func isZero(x interface{}) bool { + return x == reflect.Zero(reflect.TypeOf(x)).Interface() +} + +func createError(x reflect.Value, v Constraint, err string) error { + return fmt.Errorf("autorest/validation: validation failed: parameter=%s constraint=%s value=%#v details: %s", + v.Target, v.Name, getInterfaceValue(x), err) +} + +// NewErrorWithValidationError appends package type and method name in +// validation error. +func NewErrorWithValidationError(err error, packageType, method string) error { + return fmt.Errorf("%s#%s: Invalid input: %v", packageType, method, err) +} diff --git a/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/controllermanager.go b/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/controllermanager.go index 17a87feb6b..0b1290e76e 100644 --- a/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/controllermanager.go +++ b/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/controllermanager.go @@ -516,6 +516,10 @@ func StartControllers(s *options.CMServer, kubeconfig *restclient.Config, rootCl volumeController.Run(wait.NeverStop) time.Sleep(wait.Jitter(s.ControllerStartInterval.Duration, ControllerStartJitter)) + if s.ReconcilerSyncLoopPeriod.Duration < time.Second { + return fmt.Errorf("Duration time must be greater than one second as set via command line option reconcile-sync-loop-period.") + } + attachDetachController, attachDetachControllerErr := attachdetach.NewAttachDetachController( client("attachdetach-controller"), @@ -525,7 +529,10 @@ func StartControllers(s *options.CMServer, kubeconfig *restclient.Config, rootCl sharedInformers.PersistentVolumes().Informer(), cloud, ProbeAttachableVolumePlugins(s.VolumeConfiguration), - recorder) + recorder, + s.DisableAttachDetachReconcilerSync, + s.ReconcilerSyncLoopPeriod.Duration, + ) if attachDetachControllerErr != nil { glog.Fatalf("Failed to start attach/detach controller: %v", attachDetachControllerErr) } diff --git a/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/options/options.go b/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/options/options.go index 477e7364eb..2a59547cdd 100644 --- a/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/options/options.go +++ b/vendor/k8s.io/kubernetes/cmd/kube-controller-manager/app/options/options.go @@ -86,15 +86,16 @@ func NewCMServer() *CMServer { }, FlexVolumePluginDir: "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/", }, - ContentType: "application/vnd.kubernetes.protobuf", - KubeAPIQPS: 20.0, - KubeAPIBurst: 30, - LeaderElection: leaderelection.DefaultLeaderElectionConfiguration(), - ControllerStartInterval: unversioned.Duration{Duration: 0 * time.Second}, - EnableGarbageCollector: true, - ConcurrentGCSyncs: 20, - ClusterSigningCertFile: "/etc/kubernetes/ca/ca.pem", - ClusterSigningKeyFile: "/etc/kubernetes/ca/ca.key", + ContentType: "application/vnd.kubernetes.protobuf", + KubeAPIQPS: 20.0, + KubeAPIBurst: 30, + LeaderElection: leaderelection.DefaultLeaderElectionConfiguration(), + ControllerStartInterval: unversioned.Duration{Duration: 0 * time.Second}, + EnableGarbageCollector: true, + ConcurrentGCSyncs: 20, + ClusterSigningCertFile: "/etc/kubernetes/ca/ca.pem", + ClusterSigningKeyFile: "/etc/kubernetes/ca/ca.key", + ReconcilerSyncLoopPeriod: unversioned.Duration{Duration: 5 * time.Second}, }, } s.LeaderElection.LeaderElect = true @@ -181,6 +182,8 @@ func (s *CMServer) AddFlags(fs *pflag.FlagSet) { fs.Float32Var(&s.SecondaryNodeEvictionRate, "secondary-node-eviction-rate", 0.01, "Number of nodes per second on which pods are deleted in case of node failure when a zone is unhealthy (see --unhealthy-zone-threshold for definition of healthy/unhealthy). Zone refers to entire cluster in non-multizone clusters. This value is implicitly overridden to 0 if the cluster size is smaller than --large-cluster-size-threshold.") fs.Int32Var(&s.LargeClusterSizeThreshold, "large-cluster-size-threshold", 50, "Number of nodes from which NodeController treats the cluster as large for the eviction logic purposes. --secondary-node-eviction-rate is implicitly overridden to 0 for clusters this size or smaller.") fs.Float32Var(&s.UnhealthyZoneThreshold, "unhealthy-zone-threshold", 0.55, "Fraction of Nodes in a zone which needs to be not Ready (minimum 3) for zone to be treated as unhealthy. ") + fs.BoolVar(&s.DisableAttachDetachReconcilerSync, "disable-attach-detach-reconcile-sync", false, "Disable volume attach detach reconciler sync. Disabling this may cause volumes to be mismatched with pods. Use wisely.") + fs.DurationVar(&s.ReconcilerSyncLoopPeriod.Duration, "attach-detach-reconcile-sync-period", s.ReconcilerSyncLoopPeriod.Duration, "The reconciler sync wait time between volume attach detach. This duration must be larger than one second, and increasing this value from the default may allow for volumes to be mismatched with pods.") leaderelection.BindFlags(&s.LeaderElection, fs) config.DefaultFeatureGate.AddFlag(fs) diff --git a/vendor/k8s.io/kubernetes/cmd/kubelet/app/BUILD b/vendor/k8s.io/kubernetes/cmd/kubelet/app/BUILD index 731f63ef85..61fe9817a1 100644 --- a/vendor/k8s.io/kubernetes/cmd/kubelet/app/BUILD +++ b/vendor/k8s.io/kubernetes/cmd/kubelet/app/BUILD @@ -45,6 +45,7 @@ go_library( "//pkg/cloudprovider/providers:go_default_library", "//pkg/credentialprovider:go_default_library", "//pkg/credentialprovider/aws:go_default_library", + "//pkg/credentialprovider/azure:go_default_library", "//pkg/credentialprovider/gcp:go_default_library", "//pkg/genericapiserver/authorizer:go_default_library", "//pkg/healthz:go_default_library", diff --git a/vendor/k8s.io/kubernetes/cmd/kubelet/app/plugins.go b/vendor/k8s.io/kubernetes/cmd/kubelet/app/plugins.go index d125852622..89f8bb5a08 100644 --- a/vendor/k8s.io/kubernetes/cmd/kubelet/app/plugins.go +++ b/vendor/k8s.io/kubernetes/cmd/kubelet/app/plugins.go @@ -20,6 +20,7 @@ package app import ( // Credential providers _ "k8s.io/kubernetes/pkg/credentialprovider/aws" + _ "k8s.io/kubernetes/pkg/credentialprovider/azure" _ "k8s.io/kubernetes/pkg/credentialprovider/gcp" // Network plugins "k8s.io/kubernetes/pkg/kubelet/network" diff --git a/vendor/k8s.io/kubernetes/pkg/api/resource/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/api/resource/generated.pb.go index 1c152c4e82..42e56c7dc7 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/resource/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/api/resource/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/resource/generated.proto b/vendor/k8s.io/kubernetes/pkg/api/resource/generated.proto index c26921d57d..8dffa518a7 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/resource/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/api/resource/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/unversioned/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/api/unversioned/generated.pb.go index a93366bbdf..d81e2eb955 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/unversioned/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/api/unversioned/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/unversioned/generated.proto b/vendor/k8s.io/kubernetes/pkg/api/unversioned/generated.proto index 91d3fbf651..c72cfa095a 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/unversioned/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/api/unversioned/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/unversioned/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/api/unversioned/zz_generated.deepcopy.go index 627bb817ec..c34da4a6e5 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/unversioned/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/api/unversioned/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/api/v1/generated.pb.go index 109c0c1bd8..9aa45a37bf 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/api/v1/generated.proto index f6fa8a4a12..a2fe7129f1 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.conversion.go index 8dd547c58d..1887a37a24 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.deepcopy.go index 29db773260..d0da48d736 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.defaults.go index c9f34d1999..260f5f6323 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/api/v1/zz_generated.defaults.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go index 2a559f17b4..a3e3756626 100644 --- a/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/api/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.pb.go index fda97f8af5..a0eb07cf4f 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto index 4d4b054b33..0ae037223c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.conversion.go index 1fff844f00..80ae99fbcc 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go index 26cda10bf4..ea397c9d4d 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.defaults.go index 8493cd3a64..3890c40a03 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/v1beta1/zz_generated.defaults.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/apps/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/apps/zz_generated.deepcopy.go index c9d148140b..d97768ef7b 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/apps/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/apps/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.pb.go index b210d3b4e2..8afcb31905 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.proto index f36e28161b..7d321ef2a7 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/zz_generated.conversion.go index e848c4943a..0fcda9cbf6 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/zz_generated.deepcopy.go index 01cbc76e4c..fe98ad70b8 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/v1beta1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authentication/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/authentication/zz_generated.deepcopy.go index 7caf7b0c48..0f07550e96 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authentication/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authentication/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.pb.go index 062f999ac9..c0094b8ad2 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.proto index b3df897785..4cff2904fd 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/zz_generated.conversion.go index 1f212ba1a3..3ddc52d5b2 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/zz_generated.deepcopy.go index c365c8db0a..2fa428d03a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/v1beta1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/authorization/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/authorization/zz_generated.deepcopy.go index bf80861467..c337787971 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/authorization/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/authorization/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.pb.go index 99e32efd72..a7069b486a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto index 56d19a9cc9..9474bead31 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.conversion.go index 4f339e6d1e..0bfd295c28 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go index 70ed6d0279..296e0300b5 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.defaults.go index 6d43b1a244..f1e36589b6 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/v1/zz_generated.defaults.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/zz_generated.deepcopy.go index dde5db7e46..8e11fab19f 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/autoscaling/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.pb.go index f5d0adcbc1..8d1b233ea4 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto index 17a6add05a..328520fd32 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.conversion.go index d47abdc43f..6814860421 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.deepcopy.go index 162373788d..b753ad31b0 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.defaults.go index 94d0bf7953..8ded645b88 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v1/zz_generated.defaults.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.pb.go index 6dc65a871c..e029c26636 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.proto index 8f4995a5c7..6074239482 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.conversion.go index 01f760c52f..1a379080a5 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.deepcopy.go index d3d6847c56..abb623502c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.defaults.go index 6d3927c326..f918ce1c56 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/v2alpha1/zz_generated.defaults.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/batch/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/batch/zz_generated.deepcopy.go index e9a54781da..7e501b5e06 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/batch/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/batch/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/generated.pb.go index 164ab9a110..84ed30f10a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/generated.proto index 5c576a2e29..d6c775584d 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/zz_generated.conversion.go index 8b93358ed5..8410105e72 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/zz_generated.deepcopy.go index ce2e16969e..ab681a9872 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/certificates/v1alpha1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/certificates/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/certificates/zz_generated.deepcopy.go index 764271bfa5..b8b7c2ce46 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/certificates/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/certificates/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/types.generated.go b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/types.generated.go index c872496ea7..f85d91393b 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/types.generated.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/types.generated.go @@ -9112,16 +9112,16 @@ func (x *KubeControllerManagerConfiguration) CodecEncodeSelf(e *codec1978.Encode } else { yysep1004 := !z.EncBinary() yy2arr1004 := z.EncBasicHandle().StructToArray - var yyq1004 [61]bool + var yyq1004 [63]bool _, _, _ = yysep1004, yyq1004, yy2arr1004 const yyr1004 bool = false yyq1004[0] = x.Kind != "" yyq1004[1] = x.APIVersion != "" var yynn1004 int if yyr1004 || yy2arr1004 { - r.EncodeArrayStart(61) + r.EncodeArrayStart(63) } else { - yynn1004 = 59 + yynn1004 = 61 for _, b := range yyq1004 { if b { yynn1004++ @@ -10397,6 +10397,52 @@ func (x *KubeControllerManagerConfiguration) CodecEncodeSelf(e *codec1978.Encode r.EncodeFloat32(float32(x.UnhealthyZoneThreshold)) } } + if yyr1004 || yy2arr1004 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yym1217 := z.EncBinary() + _ = yym1217 + if false { + } else { + r.EncodeBool(bool(x.DisableAttachDetachReconcilerSync)) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("disableAttachDetachReconcilerSync")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yym1218 := z.EncBinary() + _ = yym1218 + if false { + } else { + r.EncodeBool(bool(x.DisableAttachDetachReconcilerSync)) + } + } + if yyr1004 || yy2arr1004 { + z.EncSendContainerState(codecSelfer_containerArrayElem1234) + yy1220 := &x.ReconcilerSyncLoopPeriod + yym1221 := z.EncBinary() + _ = yym1221 + if false { + } else if z.HasExtensions() && z.EncExt(yy1220) { + } else if !yym1221 && z.IsJSONHandle() { + z.EncJSONMarshal(yy1220) + } else { + z.EncFallback(yy1220) + } + } else { + z.EncSendContainerState(codecSelfer_containerMapKey1234) + r.EncodeString(codecSelferC_UTF81234, string("reconcilerSyncLoopPeriod")) + z.EncSendContainerState(codecSelfer_containerMapValue1234) + yy1222 := &x.ReconcilerSyncLoopPeriod + yym1223 := z.EncBinary() + _ = yym1223 + if false { + } else if z.HasExtensions() && z.EncExt(yy1222) { + } else if !yym1223 && z.IsJSONHandle() { + z.EncJSONMarshal(yy1222) + } else { + z.EncFallback(yy1222) + } + } if yyr1004 || yy2arr1004 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { @@ -10410,25 +10456,25 @@ func (x *KubeControllerManagerConfiguration) CodecDecodeSelf(d *codec1978.Decode var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - yym1216 := z.DecBinary() - _ = yym1216 + yym1224 := z.DecBinary() + _ = yym1224 if false { } else if z.HasExtensions() && z.DecExt(x) { } else { - yyct1217 := r.ContainerType() - if yyct1217 == codecSelferValueTypeMap1234 { - yyl1217 := r.ReadMapStart() - if yyl1217 == 0 { + yyct1225 := r.ContainerType() + if yyct1225 == codecSelferValueTypeMap1234 { + yyl1225 := r.ReadMapStart() + if yyl1225 == 0 { z.DecSendContainerState(codecSelfer_containerMapEnd1234) } else { - x.codecDecodeSelfFromMap(yyl1217, d) + x.codecDecodeSelfFromMap(yyl1225, d) } - } else if yyct1217 == codecSelferValueTypeArray1234 { - yyl1217 := r.ReadArrayStart() - if yyl1217 == 0 { + } else if yyct1225 == codecSelferValueTypeArray1234 { + yyl1225 := r.ReadArrayStart() + if yyl1225 == 0 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } else { - x.codecDecodeSelfFromArray(yyl1217, d) + x.codecDecodeSelfFromArray(yyl1225, d) } } else { panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) @@ -10440,12 +10486,12 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yys1218Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys1218Slc - var yyhl1218 bool = l >= 0 - for yyj1218 := 0; ; yyj1218++ { - if yyhl1218 { - if yyj1218 >= l { + var yys1226Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys1226Slc + var yyhl1226 bool = l >= 0 + for yyj1226 := 0; ; yyj1226++ { + if yyhl1226 { + if yyj1226 >= l { break } } else { @@ -10454,10 +10500,10 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co } } z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys1218Slc = r.DecodeBytes(yys1218Slc, true, true) - yys1218 := string(yys1218Slc) + yys1226Slc = r.DecodeBytes(yys1226Slc, true, true) + yys1226 := string(yys1226Slc) z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys1218 { + switch yys1226 { case "kind": if r.TryDecodeAsNil() { x.Kind = "" @@ -10582,67 +10628,7 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co if r.TryDecodeAsNil() { x.ServiceSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1239 := &x.ServiceSyncPeriod - yym1240 := z.DecBinary() - _ = yym1240 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1239) { - } else if !yym1240 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1239) - } else { - z.DecFallback(yyv1239, false) - } - } - case "nodeSyncPeriod": - if r.TryDecodeAsNil() { - x.NodeSyncPeriod = pkg1_unversioned.Duration{} - } else { - yyv1241 := &x.NodeSyncPeriod - yym1242 := z.DecBinary() - _ = yym1242 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1241) { - } else if !yym1242 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1241) - } else { - z.DecFallback(yyv1241, false) - } - } - case "routeReconciliationPeriod": - if r.TryDecodeAsNil() { - x.RouteReconciliationPeriod = pkg1_unversioned.Duration{} - } else { - yyv1243 := &x.RouteReconciliationPeriod - yym1244 := z.DecBinary() - _ = yym1244 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1243) { - } else if !yym1244 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1243) - } else { - z.DecFallback(yyv1243, false) - } - } - case "resourceQuotaSyncPeriod": - if r.TryDecodeAsNil() { - x.ResourceQuotaSyncPeriod = pkg1_unversioned.Duration{} - } else { - yyv1245 := &x.ResourceQuotaSyncPeriod - yym1246 := z.DecBinary() - _ = yym1246 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1245) { - } else if !yym1246 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1245) - } else { - z.DecFallback(yyv1245, false) - } - } - case "namespaceSyncPeriod": - if r.TryDecodeAsNil() { - x.NamespaceSyncPeriod = pkg1_unversioned.Duration{} - } else { - yyv1247 := &x.NamespaceSyncPeriod + yyv1247 := &x.ServiceSyncPeriod yym1248 := z.DecBinary() _ = yym1248 if false { @@ -10653,11 +10639,11 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co z.DecFallback(yyv1247, false) } } - case "pvClaimBinderSyncPeriod": + case "nodeSyncPeriod": if r.TryDecodeAsNil() { - x.PVClaimBinderSyncPeriod = pkg1_unversioned.Duration{} + x.NodeSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1249 := &x.PVClaimBinderSyncPeriod + yyv1249 := &x.NodeSyncPeriod yym1250 := z.DecBinary() _ = yym1250 if false { @@ -10668,11 +10654,11 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co z.DecFallback(yyv1249, false) } } - case "minResyncPeriod": + case "routeReconciliationPeriod": if r.TryDecodeAsNil() { - x.MinResyncPeriod = pkg1_unversioned.Duration{} + x.RouteReconciliationPeriod = pkg1_unversioned.Duration{} } else { - yyv1251 := &x.MinResyncPeriod + yyv1251 := &x.RouteReconciliationPeriod yym1252 := z.DecBinary() _ = yym1252 if false { @@ -10683,6 +10669,66 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co z.DecFallback(yyv1251, false) } } + case "resourceQuotaSyncPeriod": + if r.TryDecodeAsNil() { + x.ResourceQuotaSyncPeriod = pkg1_unversioned.Duration{} + } else { + yyv1253 := &x.ResourceQuotaSyncPeriod + yym1254 := z.DecBinary() + _ = yym1254 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1253) { + } else if !yym1254 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1253) + } else { + z.DecFallback(yyv1253, false) + } + } + case "namespaceSyncPeriod": + if r.TryDecodeAsNil() { + x.NamespaceSyncPeriod = pkg1_unversioned.Duration{} + } else { + yyv1255 := &x.NamespaceSyncPeriod + yym1256 := z.DecBinary() + _ = yym1256 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1255) { + } else if !yym1256 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1255) + } else { + z.DecFallback(yyv1255, false) + } + } + case "pvClaimBinderSyncPeriod": + if r.TryDecodeAsNil() { + x.PVClaimBinderSyncPeriod = pkg1_unversioned.Duration{} + } else { + yyv1257 := &x.PVClaimBinderSyncPeriod + yym1258 := z.DecBinary() + _ = yym1258 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1257) { + } else if !yym1258 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1257) + } else { + z.DecFallback(yyv1257, false) + } + } + case "minResyncPeriod": + if r.TryDecodeAsNil() { + x.MinResyncPeriod = pkg1_unversioned.Duration{} + } else { + yyv1259 := &x.MinResyncPeriod + yym1260 := z.DecBinary() + _ = yym1260 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1259) { + } else if !yym1260 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1259) + } else { + z.DecFallback(yyv1259, false) + } + } case "terminatedPodGCThreshold": if r.TryDecodeAsNil() { x.TerminatedPodGCThreshold = 0 @@ -10693,45 +10739,45 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co if r.TryDecodeAsNil() { x.HorizontalPodAutoscalerSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1254 := &x.HorizontalPodAutoscalerSyncPeriod - yym1255 := z.DecBinary() - _ = yym1255 + yyv1262 := &x.HorizontalPodAutoscalerSyncPeriod + yym1263 := z.DecBinary() + _ = yym1263 if false { - } else if z.HasExtensions() && z.DecExt(yyv1254) { - } else if !yym1255 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1254) + } else if z.HasExtensions() && z.DecExt(yyv1262) { + } else if !yym1263 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1262) } else { - z.DecFallback(yyv1254, false) + z.DecFallback(yyv1262, false) } } case "deploymentControllerSyncPeriod": if r.TryDecodeAsNil() { x.DeploymentControllerSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1256 := &x.DeploymentControllerSyncPeriod - yym1257 := z.DecBinary() - _ = yym1257 + yyv1264 := &x.DeploymentControllerSyncPeriod + yym1265 := z.DecBinary() + _ = yym1265 if false { - } else if z.HasExtensions() && z.DecExt(yyv1256) { - } else if !yym1257 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1256) + } else if z.HasExtensions() && z.DecExt(yyv1264) { + } else if !yym1265 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1264) } else { - z.DecFallback(yyv1256, false) + z.DecFallback(yyv1264, false) } } case "podEvictionTimeout": if r.TryDecodeAsNil() { x.PodEvictionTimeout = pkg1_unversioned.Duration{} } else { - yyv1258 := &x.PodEvictionTimeout - yym1259 := z.DecBinary() - _ = yym1259 + yyv1266 := &x.PodEvictionTimeout + yym1267 := z.DecBinary() + _ = yym1267 if false { - } else if z.HasExtensions() && z.DecExt(yyv1258) { - } else if !yym1259 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1258) + } else if z.HasExtensions() && z.DecExt(yyv1266) { + } else if !yym1267 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1266) } else { - z.DecFallback(yyv1258, false) + z.DecFallback(yyv1266, false) } } case "deletingPodsQps": @@ -10750,15 +10796,15 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co if r.TryDecodeAsNil() { x.NodeMonitorGracePeriod = pkg1_unversioned.Duration{} } else { - yyv1262 := &x.NodeMonitorGracePeriod - yym1263 := z.DecBinary() - _ = yym1263 + yyv1270 := &x.NodeMonitorGracePeriod + yym1271 := z.DecBinary() + _ = yym1271 if false { - } else if z.HasExtensions() && z.DecExt(yyv1262) { - } else if !yym1263 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1262) + } else if z.HasExtensions() && z.DecExt(yyv1270) { + } else if !yym1271 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1270) } else { - z.DecFallback(yyv1262, false) + z.DecFallback(yyv1270, false) } } case "registerRetryCount": @@ -10771,30 +10817,30 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co if r.TryDecodeAsNil() { x.NodeStartupGracePeriod = pkg1_unversioned.Duration{} } else { - yyv1265 := &x.NodeStartupGracePeriod - yym1266 := z.DecBinary() - _ = yym1266 + yyv1273 := &x.NodeStartupGracePeriod + yym1274 := z.DecBinary() + _ = yym1274 if false { - } else if z.HasExtensions() && z.DecExt(yyv1265) { - } else if !yym1266 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1265) + } else if z.HasExtensions() && z.DecExt(yyv1273) { + } else if !yym1274 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1273) } else { - z.DecFallback(yyv1265, false) + z.DecFallback(yyv1273, false) } } case "nodeMonitorPeriod": if r.TryDecodeAsNil() { x.NodeMonitorPeriod = pkg1_unversioned.Duration{} } else { - yyv1267 := &x.NodeMonitorPeriod - yym1268 := z.DecBinary() - _ = yym1268 + yyv1275 := &x.NodeMonitorPeriod + yym1276 := z.DecBinary() + _ = yym1276 if false { - } else if z.HasExtensions() && z.DecExt(yyv1267) { - } else if !yym1268 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1267) + } else if z.HasExtensions() && z.DecExt(yyv1275) { + } else if !yym1276 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1275) } else { - z.DecFallback(yyv1267, false) + z.DecFallback(yyv1275, false) } } case "serviceAccountKeyFile": @@ -10891,29 +10937,29 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co if r.TryDecodeAsNil() { x.LeaderElection = LeaderElectionConfiguration{} } else { - yyv1284 := &x.LeaderElection - yyv1284.CodecDecodeSelf(d) + yyv1292 := &x.LeaderElection + yyv1292.CodecDecodeSelf(d) } case "volumeConfiguration": if r.TryDecodeAsNil() { x.VolumeConfiguration = VolumeConfiguration{} } else { - yyv1285 := &x.VolumeConfiguration - yyv1285.CodecDecodeSelf(d) + yyv1293 := &x.VolumeConfiguration + yyv1293.CodecDecodeSelf(d) } case "controllerStartInterval": if r.TryDecodeAsNil() { x.ControllerStartInterval = pkg1_unversioned.Duration{} } else { - yyv1286 := &x.ControllerStartInterval - yym1287 := z.DecBinary() - _ = yym1287 + yyv1294 := &x.ControllerStartInterval + yym1295 := z.DecBinary() + _ = yym1295 if false { - } else if z.HasExtensions() && z.DecExt(yyv1286) { - } else if !yym1287 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1286) + } else if z.HasExtensions() && z.DecExt(yyv1294) { + } else if !yym1295 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1294) } else { - z.DecFallback(yyv1286, false) + z.DecFallback(yyv1294, false) } } case "enableGarbageCollector": @@ -10952,10 +10998,31 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromMap(l int, d *co } else { x.UnhealthyZoneThreshold = float32(r.DecodeFloat(true)) } + case "disableAttachDetachReconcilerSync": + if r.TryDecodeAsNil() { + x.DisableAttachDetachReconcilerSync = false + } else { + x.DisableAttachDetachReconcilerSync = bool(r.DecodeBool()) + } + case "reconcilerSyncLoopPeriod": + if r.TryDecodeAsNil() { + x.ReconcilerSyncLoopPeriod = pkg1_unversioned.Duration{} + } else { + yyv1303 := &x.ReconcilerSyncLoopPeriod + yym1304 := z.DecBinary() + _ = yym1304 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1303) { + } else if !yym1304 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1303) + } else { + z.DecFallback(yyv1303, false) + } + } default: - z.DecStructFieldNotFound(-1, yys1218) - } // end switch yys1218 - } // end for yyj1218 + z.DecStructFieldNotFound(-1, yys1226) + } // end switch yys1226 + } // end for yyj1226 z.DecSendContainerState(codecSelfer_containerMapEnd1234) } @@ -10963,16 +11030,16 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj1294 int - var yyb1294 bool - var yyhl1294 bool = l >= 0 - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + var yyj1305 int + var yyb1305 bool + var yyhl1305 bool = l >= 0 + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -10982,13 +11049,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.Kind = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -10998,13 +11065,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.APIVersion = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11014,13 +11081,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.Port = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11030,13 +11097,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.Address = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11046,13 +11113,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.UseServiceAccountCredentials = bool(r.DecodeBool()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11062,13 +11129,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.CloudProvider = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11078,13 +11145,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.CloudConfigFile = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11094,13 +11161,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentEndpointSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11110,13 +11177,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentRSSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11126,13 +11193,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentRCSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11142,13 +11209,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentServiceSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11158,13 +11225,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentResourceQuotaSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11174,13 +11241,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentDeploymentSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11190,13 +11257,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentDaemonSetSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11206,13 +11273,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentJobSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11222,13 +11289,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentNamespaceSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11238,13 +11305,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentSATokenSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11254,13 +11321,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.LookupCacheSizeForRC = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11270,13 +11337,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.LookupCacheSizeForRS = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11286,13 +11353,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.LookupCacheSizeForDaemonSet = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11300,24 +11367,24 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * if r.TryDecodeAsNil() { x.ServiceSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1315 := &x.ServiceSyncPeriod - yym1316 := z.DecBinary() - _ = yym1316 + yyv1326 := &x.ServiceSyncPeriod + yym1327 := z.DecBinary() + _ = yym1327 if false { - } else if z.HasExtensions() && z.DecExt(yyv1315) { - } else if !yym1316 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1315) + } else if z.HasExtensions() && z.DecExt(yyv1326) { + } else if !yym1327 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1326) } else { - z.DecFallback(yyv1315, false) + z.DecFallback(yyv1326, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11325,24 +11392,24 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * if r.TryDecodeAsNil() { x.NodeSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1317 := &x.NodeSyncPeriod - yym1318 := z.DecBinary() - _ = yym1318 + yyv1328 := &x.NodeSyncPeriod + yym1329 := z.DecBinary() + _ = yym1329 if false { - } else if z.HasExtensions() && z.DecExt(yyv1317) { - } else if !yym1318 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1317) + } else if z.HasExtensions() && z.DecExt(yyv1328) { + } else if !yym1329 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1328) } else { - z.DecFallback(yyv1317, false) + z.DecFallback(yyv1328, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11350,148 +11417,7 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * if r.TryDecodeAsNil() { x.RouteReconciliationPeriod = pkg1_unversioned.Duration{} } else { - yyv1319 := &x.RouteReconciliationPeriod - yym1320 := z.DecBinary() - _ = yym1320 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1319) { - } else if !yym1320 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1319) - } else { - z.DecFallback(yyv1319, false) - } - } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l - } else { - yyb1294 = r.CheckBreak() - } - if yyb1294 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.ResourceQuotaSyncPeriod = pkg1_unversioned.Duration{} - } else { - yyv1321 := &x.ResourceQuotaSyncPeriod - yym1322 := z.DecBinary() - _ = yym1322 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1321) { - } else if !yym1322 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1321) - } else { - z.DecFallback(yyv1321, false) - } - } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l - } else { - yyb1294 = r.CheckBreak() - } - if yyb1294 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.NamespaceSyncPeriod = pkg1_unversioned.Duration{} - } else { - yyv1323 := &x.NamespaceSyncPeriod - yym1324 := z.DecBinary() - _ = yym1324 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1323) { - } else if !yym1324 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1323) - } else { - z.DecFallback(yyv1323, false) - } - } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l - } else { - yyb1294 = r.CheckBreak() - } - if yyb1294 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.PVClaimBinderSyncPeriod = pkg1_unversioned.Duration{} - } else { - yyv1325 := &x.PVClaimBinderSyncPeriod - yym1326 := z.DecBinary() - _ = yym1326 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1325) { - } else if !yym1326 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1325) - } else { - z.DecFallback(yyv1325, false) - } - } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l - } else { - yyb1294 = r.CheckBreak() - } - if yyb1294 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.MinResyncPeriod = pkg1_unversioned.Duration{} - } else { - yyv1327 := &x.MinResyncPeriod - yym1328 := z.DecBinary() - _ = yym1328 - if false { - } else if z.HasExtensions() && z.DecExt(yyv1327) { - } else if !yym1328 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1327) - } else { - z.DecFallback(yyv1327, false) - } - } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l - } else { - yyb1294 = r.CheckBreak() - } - if yyb1294 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.TerminatedPodGCThreshold = 0 - } else { - x.TerminatedPodGCThreshold = int32(r.DecodeInt(32)) - } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l - } else { - yyb1294 = r.CheckBreak() - } - if yyb1294 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.HorizontalPodAutoscalerSyncPeriod = pkg1_unversioned.Duration{} - } else { - yyv1330 := &x.HorizontalPodAutoscalerSyncPeriod + yyv1330 := &x.RouteReconciliationPeriod yym1331 := z.DecBinary() _ = yym1331 if false { @@ -11502,21 +11428,21 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * z.DecFallback(yyv1330, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.DeploymentControllerSyncPeriod = pkg1_unversioned.Duration{} + x.ResourceQuotaSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1332 := &x.DeploymentControllerSyncPeriod + yyv1332 := &x.ResourceQuotaSyncPeriod yym1333 := z.DecBinary() _ = yym1333 if false { @@ -11527,21 +11453,21 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * z.DecFallback(yyv1332, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.PodEvictionTimeout = pkg1_unversioned.Duration{} + x.NamespaceSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1334 := &x.PodEvictionTimeout + yyv1334 := &x.NamespaceSyncPeriod yym1335 := z.DecBinary() _ = yym1335 if false { @@ -11552,53 +11478,46 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * z.DecFallback(yyv1334, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.DeletingPodsQps = 0 + x.PVClaimBinderSyncPeriod = pkg1_unversioned.Duration{} } else { - x.DeletingPodsQps = float32(r.DecodeFloat(true)) + yyv1336 := &x.PVClaimBinderSyncPeriod + yym1337 := z.DecBinary() + _ = yym1337 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1336) { + } else if !yym1337 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1336) + } else { + z.DecFallback(yyv1336, false) + } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.DeletingPodsBurst = 0 + x.MinResyncPeriod = pkg1_unversioned.Duration{} } else { - x.DeletingPodsBurst = int32(r.DecodeInt(32)) - } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l - } else { - yyb1294 = r.CheckBreak() - } - if yyb1294 { - z.DecSendContainerState(codecSelfer_containerArrayEnd1234) - return - } - z.DecSendContainerState(codecSelfer_containerArrayElem1234) - if r.TryDecodeAsNil() { - x.NodeMonitorGracePeriod = pkg1_unversioned.Duration{} - } else { - yyv1338 := &x.NodeMonitorGracePeriod + yyv1338 := &x.MinResyncPeriod yym1339 := z.DecBinary() _ = yym1339 if false { @@ -11609,37 +11528,37 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * z.DecFallback(yyv1338, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.RegisterRetryCount = 0 + x.TerminatedPodGCThreshold = 0 } else { - x.RegisterRetryCount = int32(r.DecodeInt(32)) + x.TerminatedPodGCThreshold = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.NodeStartupGracePeriod = pkg1_unversioned.Duration{} + x.HorizontalPodAutoscalerSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1341 := &x.NodeStartupGracePeriod + yyv1341 := &x.HorizontalPodAutoscalerSyncPeriod yym1342 := z.DecBinary() _ = yym1342 if false { @@ -11650,21 +11569,21 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * z.DecFallback(yyv1341, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } z.DecSendContainerState(codecSelfer_containerArrayElem1234) if r.TryDecodeAsNil() { - x.NodeMonitorPeriod = pkg1_unversioned.Duration{} + x.DeploymentControllerSyncPeriod = pkg1_unversioned.Duration{} } else { - yyv1343 := &x.NodeMonitorPeriod + yyv1343 := &x.DeploymentControllerSyncPeriod yym1344 := z.DecBinary() _ = yym1344 if false { @@ -11675,13 +11594,161 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * z.DecFallback(yyv1343, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.PodEvictionTimeout = pkg1_unversioned.Duration{} + } else { + yyv1345 := &x.PodEvictionTimeout + yym1346 := z.DecBinary() + _ = yym1346 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1345) { + } else if !yym1346 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1345) + } else { + z.DecFallback(yyv1345, false) + } + } + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.DeletingPodsQps = 0 + } else { + x.DeletingPodsQps = float32(r.DecodeFloat(true)) + } + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.DeletingPodsBurst = 0 + } else { + x.DeletingPodsBurst = int32(r.DecodeInt(32)) + } + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.NodeMonitorGracePeriod = pkg1_unversioned.Duration{} + } else { + yyv1349 := &x.NodeMonitorGracePeriod + yym1350 := z.DecBinary() + _ = yym1350 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1349) { + } else if !yym1350 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1349) + } else { + z.DecFallback(yyv1349, false) + } + } + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.RegisterRetryCount = 0 + } else { + x.RegisterRetryCount = int32(r.DecodeInt(32)) + } + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.NodeStartupGracePeriod = pkg1_unversioned.Duration{} + } else { + yyv1352 := &x.NodeStartupGracePeriod + yym1353 := z.DecBinary() + _ = yym1353 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1352) { + } else if !yym1353 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1352) + } else { + z.DecFallback(yyv1352, false) + } + } + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.NodeMonitorPeriod = pkg1_unversioned.Duration{} + } else { + yyv1354 := &x.NodeMonitorPeriod + yym1355 := z.DecBinary() + _ = yym1355 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1354) { + } else if !yym1355 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1354) + } else { + z.DecFallback(yyv1354, false) + } + } + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11691,13 +11758,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ServiceAccountKeyFile = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11707,13 +11774,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ClusterSigningCertFile = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11723,13 +11790,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ClusterSigningKeyFile = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11739,13 +11806,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ApproveAllKubeletCSRsForGroup = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11755,13 +11822,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.EnableProfiling = bool(r.DecodeBool()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11771,13 +11838,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ClusterName = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11787,13 +11854,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ClusterCIDR = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11803,13 +11870,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ServiceCIDR = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11819,13 +11886,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.NodeCIDRMaskSize = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11835,13 +11902,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.AllocateNodeCIDRs = bool(r.DecodeBool()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11851,13 +11918,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConfigureCloudRoutes = bool(r.DecodeBool()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11867,13 +11934,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.RootCAFile = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11883,13 +11950,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ContentType = string(r.DecodeString()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11899,13 +11966,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.KubeAPIQPS = float32(r.DecodeFloat(true)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11915,13 +11982,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.KubeAPIBurst = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11929,16 +11996,16 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * if r.TryDecodeAsNil() { x.LeaderElection = LeaderElectionConfiguration{} } else { - yyv1360 := &x.LeaderElection - yyv1360.CodecDecodeSelf(d) + yyv1371 := &x.LeaderElection + yyv1371.CodecDecodeSelf(d) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11946,16 +12013,16 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * if r.TryDecodeAsNil() { x.VolumeConfiguration = VolumeConfiguration{} } else { - yyv1361 := &x.VolumeConfiguration - yyv1361.CodecDecodeSelf(d) + yyv1372 := &x.VolumeConfiguration + yyv1372.CodecDecodeSelf(d) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11963,24 +12030,24 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * if r.TryDecodeAsNil() { x.ControllerStartInterval = pkg1_unversioned.Duration{} } else { - yyv1362 := &x.ControllerStartInterval - yym1363 := z.DecBinary() - _ = yym1363 + yyv1373 := &x.ControllerStartInterval + yym1374 := z.DecBinary() + _ = yym1374 if false { - } else if z.HasExtensions() && z.DecExt(yyv1362) { - } else if !yym1363 && z.IsJSONHandle() { - z.DecJSONUnmarshal(yyv1362) + } else if z.HasExtensions() && z.DecExt(yyv1373) { + } else if !yym1374 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1373) } else { - z.DecFallback(yyv1362, false) + z.DecFallback(yyv1373, false) } } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -11990,13 +12057,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.EnableGarbageCollector = bool(r.DecodeBool()) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12006,13 +12073,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.ConcurrentGCSyncs = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12022,13 +12089,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.NodeEvictionRate = float32(r.DecodeFloat(true)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12038,13 +12105,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.SecondaryNodeEvictionRate = float32(r.DecodeFloat(true)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12054,13 +12121,13 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.LargeClusterSizeThreshold = int32(r.DecodeInt(32)) } - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l } else { - yyb1294 = r.CheckBreak() + yyb1305 = r.CheckBreak() } - if yyb1294 { + if yyb1305 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12070,18 +12137,59 @@ func (x *KubeControllerManagerConfiguration) codecDecodeSelfFromArray(l int, d * } else { x.UnhealthyZoneThreshold = float32(r.DecodeFloat(true)) } - for { - yyj1294++ - if yyhl1294 { - yyb1294 = yyj1294 > l + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.DisableAttachDetachReconcilerSync = false + } else { + x.DisableAttachDetachReconcilerSync = bool(r.DecodeBool()) + } + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { + z.DecSendContainerState(codecSelfer_containerArrayEnd1234) + return + } + z.DecSendContainerState(codecSelfer_containerArrayElem1234) + if r.TryDecodeAsNil() { + x.ReconcilerSyncLoopPeriod = pkg1_unversioned.Duration{} + } else { + yyv1382 := &x.ReconcilerSyncLoopPeriod + yym1383 := z.DecBinary() + _ = yym1383 + if false { + } else if z.HasExtensions() && z.DecExt(yyv1382) { + } else if !yym1383 && z.IsJSONHandle() { + z.DecJSONUnmarshal(yyv1382) } else { - yyb1294 = r.CheckBreak() + z.DecFallback(yyv1382, false) } - if yyb1294 { + } + for { + yyj1305++ + if yyhl1305 { + yyb1305 = yyj1305 > l + } else { + yyb1305 = r.CheckBreak() + } + if yyb1305 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj1294-1, "") + z.DecStructFieldNotFound(yyj1305-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -12093,33 +12201,33 @@ func (x *VolumeConfiguration) CodecEncodeSelf(e *codec1978.Encoder) { if x == nil { r.EncodeNil() } else { - yym1370 := z.EncBinary() - _ = yym1370 + yym1384 := z.EncBinary() + _ = yym1384 if false { } else if z.HasExtensions() && z.EncExt(x) { } else { - yysep1371 := !z.EncBinary() - yy2arr1371 := z.EncBasicHandle().StructToArray - var yyq1371 [4]bool - _, _, _ = yysep1371, yyq1371, yy2arr1371 - const yyr1371 bool = false - var yynn1371 int - if yyr1371 || yy2arr1371 { + yysep1385 := !z.EncBinary() + yy2arr1385 := z.EncBasicHandle().StructToArray + var yyq1385 [4]bool + _, _, _ = yysep1385, yyq1385, yy2arr1385 + const yyr1385 bool = false + var yynn1385 int + if yyr1385 || yy2arr1385 { r.EncodeArrayStart(4) } else { - yynn1371 = 4 - for _, b := range yyq1371 { + yynn1385 = 4 + for _, b := range yyq1385 { if b { - yynn1371++ + yynn1385++ } } - r.EncodeMapStart(yynn1371) - yynn1371 = 0 + r.EncodeMapStart(yynn1385) + yynn1385 = 0 } - if yyr1371 || yy2arr1371 { + if yyr1385 || yy2arr1385 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1373 := z.EncBinary() - _ = yym1373 + yym1387 := z.EncBinary() + _ = yym1387 if false { } else { r.EncodeBool(bool(x.EnableHostPathProvisioning)) @@ -12128,17 +12236,17 @@ func (x *VolumeConfiguration) CodecEncodeSelf(e *codec1978.Encoder) { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("enableHostPathProvisioning")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1374 := z.EncBinary() - _ = yym1374 + yym1388 := z.EncBinary() + _ = yym1388 if false { } else { r.EncodeBool(bool(x.EnableHostPathProvisioning)) } } - if yyr1371 || yy2arr1371 { + if yyr1385 || yy2arr1385 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1376 := z.EncBinary() - _ = yym1376 + yym1390 := z.EncBinary() + _ = yym1390 if false { } else { r.EncodeBool(bool(x.EnableDynamicProvisioning)) @@ -12147,28 +12255,28 @@ func (x *VolumeConfiguration) CodecEncodeSelf(e *codec1978.Encoder) { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("enableDynamicProvisioning")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1377 := z.EncBinary() - _ = yym1377 + yym1391 := z.EncBinary() + _ = yym1391 if false { } else { r.EncodeBool(bool(x.EnableDynamicProvisioning)) } } - if yyr1371 || yy2arr1371 { + if yyr1385 || yy2arr1385 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yy1379 := &x.PersistentVolumeRecyclerConfiguration - yy1379.CodecEncodeSelf(e) + yy1393 := &x.PersistentVolumeRecyclerConfiguration + yy1393.CodecEncodeSelf(e) } else { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("persitentVolumeRecyclerConfiguration")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yy1380 := &x.PersistentVolumeRecyclerConfiguration - yy1380.CodecEncodeSelf(e) + yy1394 := &x.PersistentVolumeRecyclerConfiguration + yy1394.CodecEncodeSelf(e) } - if yyr1371 || yy2arr1371 { + if yyr1385 || yy2arr1385 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1382 := z.EncBinary() - _ = yym1382 + yym1396 := z.EncBinary() + _ = yym1396 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.FlexVolumePluginDir)) @@ -12177,14 +12285,14 @@ func (x *VolumeConfiguration) CodecEncodeSelf(e *codec1978.Encoder) { z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("flexVolumePluginDir")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1383 := z.EncBinary() - _ = yym1383 + yym1397 := z.EncBinary() + _ = yym1397 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.FlexVolumePluginDir)) } } - if yyr1371 || yy2arr1371 { + if yyr1385 || yy2arr1385 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { z.EncSendContainerState(codecSelfer_containerMapEnd1234) @@ -12197,25 +12305,25 @@ func (x *VolumeConfiguration) CodecDecodeSelf(d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - yym1384 := z.DecBinary() - _ = yym1384 + yym1398 := z.DecBinary() + _ = yym1398 if false { } else if z.HasExtensions() && z.DecExt(x) { } else { - yyct1385 := r.ContainerType() - if yyct1385 == codecSelferValueTypeMap1234 { - yyl1385 := r.ReadMapStart() - if yyl1385 == 0 { + yyct1399 := r.ContainerType() + if yyct1399 == codecSelferValueTypeMap1234 { + yyl1399 := r.ReadMapStart() + if yyl1399 == 0 { z.DecSendContainerState(codecSelfer_containerMapEnd1234) } else { - x.codecDecodeSelfFromMap(yyl1385, d) + x.codecDecodeSelfFromMap(yyl1399, d) } - } else if yyct1385 == codecSelferValueTypeArray1234 { - yyl1385 := r.ReadArrayStart() - if yyl1385 == 0 { + } else if yyct1399 == codecSelferValueTypeArray1234 { + yyl1399 := r.ReadArrayStart() + if yyl1399 == 0 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } else { - x.codecDecodeSelfFromArray(yyl1385, d) + x.codecDecodeSelfFromArray(yyl1399, d) } } else { panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) @@ -12227,12 +12335,12 @@ func (x *VolumeConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yys1386Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys1386Slc - var yyhl1386 bool = l >= 0 - for yyj1386 := 0; ; yyj1386++ { - if yyhl1386 { - if yyj1386 >= l { + var yys1400Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys1400Slc + var yyhl1400 bool = l >= 0 + for yyj1400 := 0; ; yyj1400++ { + if yyhl1400 { + if yyj1400 >= l { break } } else { @@ -12241,10 +12349,10 @@ func (x *VolumeConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder } } z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys1386Slc = r.DecodeBytes(yys1386Slc, true, true) - yys1386 := string(yys1386Slc) + yys1400Slc = r.DecodeBytes(yys1400Slc, true, true) + yys1400 := string(yys1400Slc) z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys1386 { + switch yys1400 { case "enableHostPathProvisioning": if r.TryDecodeAsNil() { x.EnableHostPathProvisioning = false @@ -12261,8 +12369,8 @@ func (x *VolumeConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder if r.TryDecodeAsNil() { x.PersistentVolumeRecyclerConfiguration = PersistentVolumeRecyclerConfiguration{} } else { - yyv1389 := &x.PersistentVolumeRecyclerConfiguration - yyv1389.CodecDecodeSelf(d) + yyv1403 := &x.PersistentVolumeRecyclerConfiguration + yyv1403.CodecDecodeSelf(d) } case "flexVolumePluginDir": if r.TryDecodeAsNil() { @@ -12271,9 +12379,9 @@ func (x *VolumeConfiguration) codecDecodeSelfFromMap(l int, d *codec1978.Decoder x.FlexVolumePluginDir = string(r.DecodeString()) } default: - z.DecStructFieldNotFound(-1, yys1386) - } // end switch yys1386 - } // end for yyj1386 + z.DecStructFieldNotFound(-1, yys1400) + } // end switch yys1400 + } // end for yyj1400 z.DecSendContainerState(codecSelfer_containerMapEnd1234) } @@ -12281,16 +12389,16 @@ func (x *VolumeConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decod var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj1391 int - var yyb1391 bool - var yyhl1391 bool = l >= 0 - yyj1391++ - if yyhl1391 { - yyb1391 = yyj1391 > l + var yyj1405 int + var yyb1405 bool + var yyhl1405 bool = l >= 0 + yyj1405++ + if yyhl1405 { + yyb1405 = yyj1405 > l } else { - yyb1391 = r.CheckBreak() + yyb1405 = r.CheckBreak() } - if yyb1391 { + if yyb1405 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12300,13 +12408,13 @@ func (x *VolumeConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decod } else { x.EnableHostPathProvisioning = bool(r.DecodeBool()) } - yyj1391++ - if yyhl1391 { - yyb1391 = yyj1391 > l + yyj1405++ + if yyhl1405 { + yyb1405 = yyj1405 > l } else { - yyb1391 = r.CheckBreak() + yyb1405 = r.CheckBreak() } - if yyb1391 { + if yyb1405 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12316,13 +12424,13 @@ func (x *VolumeConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decod } else { x.EnableDynamicProvisioning = bool(r.DecodeBool()) } - yyj1391++ - if yyhl1391 { - yyb1391 = yyj1391 > l + yyj1405++ + if yyhl1405 { + yyb1405 = yyj1405 > l } else { - yyb1391 = r.CheckBreak() + yyb1405 = r.CheckBreak() } - if yyb1391 { + if yyb1405 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12330,16 +12438,16 @@ func (x *VolumeConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decod if r.TryDecodeAsNil() { x.PersistentVolumeRecyclerConfiguration = PersistentVolumeRecyclerConfiguration{} } else { - yyv1394 := &x.PersistentVolumeRecyclerConfiguration - yyv1394.CodecDecodeSelf(d) + yyv1408 := &x.PersistentVolumeRecyclerConfiguration + yyv1408.CodecDecodeSelf(d) } - yyj1391++ - if yyhl1391 { - yyb1391 = yyj1391 > l + yyj1405++ + if yyhl1405 { + yyb1405 = yyj1405 > l } else { - yyb1391 = r.CheckBreak() + yyb1405 = r.CheckBreak() } - if yyb1391 { + if yyb1405 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12350,17 +12458,17 @@ func (x *VolumeConfiguration) codecDecodeSelfFromArray(l int, d *codec1978.Decod x.FlexVolumePluginDir = string(r.DecodeString()) } for { - yyj1391++ - if yyhl1391 { - yyb1391 = yyj1391 > l + yyj1405++ + if yyhl1405 { + yyb1405 = yyj1405 > l } else { - yyb1391 = r.CheckBreak() + yyb1405 = r.CheckBreak() } - if yyb1391 { + if yyb1405 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj1391-1, "") + z.DecStructFieldNotFound(yyj1405-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -12372,33 +12480,33 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecEncodeSelf(e *codec1978.Enc if x == nil { r.EncodeNil() } else { - yym1396 := z.EncBinary() - _ = yym1396 + yym1410 := z.EncBinary() + _ = yym1410 if false { } else if z.HasExtensions() && z.EncExt(x) { } else { - yysep1397 := !z.EncBinary() - yy2arr1397 := z.EncBasicHandle().StructToArray - var yyq1397 [7]bool - _, _, _ = yysep1397, yyq1397, yy2arr1397 - const yyr1397 bool = false - var yynn1397 int - if yyr1397 || yy2arr1397 { + yysep1411 := !z.EncBinary() + yy2arr1411 := z.EncBasicHandle().StructToArray + var yyq1411 [7]bool + _, _, _ = yysep1411, yyq1411, yy2arr1411 + const yyr1411 bool = false + var yynn1411 int + if yyr1411 || yy2arr1411 { r.EncodeArrayStart(7) } else { - yynn1397 = 7 - for _, b := range yyq1397 { + yynn1411 = 7 + for _, b := range yyq1411 { if b { - yynn1397++ + yynn1411++ } } - r.EncodeMapStart(yynn1397) - yynn1397 = 0 + r.EncodeMapStart(yynn1411) + yynn1411 = 0 } - if yyr1397 || yy2arr1397 { + if yyr1411 || yy2arr1411 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1399 := z.EncBinary() - _ = yym1399 + yym1413 := z.EncBinary() + _ = yym1413 if false { } else { r.EncodeInt(int64(x.MaximumRetry)) @@ -12407,17 +12515,17 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecEncodeSelf(e *codec1978.Enc z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("maximumRetry")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1400 := z.EncBinary() - _ = yym1400 + yym1414 := z.EncBinary() + _ = yym1414 if false { } else { r.EncodeInt(int64(x.MaximumRetry)) } } - if yyr1397 || yy2arr1397 { + if yyr1411 || yy2arr1411 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1402 := z.EncBinary() - _ = yym1402 + yym1416 := z.EncBinary() + _ = yym1416 if false { } else { r.EncodeInt(int64(x.MinimumTimeoutNFS)) @@ -12426,17 +12534,17 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecEncodeSelf(e *codec1978.Enc z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("minimumTimeoutNFS")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1403 := z.EncBinary() - _ = yym1403 + yym1417 := z.EncBinary() + _ = yym1417 if false { } else { r.EncodeInt(int64(x.MinimumTimeoutNFS)) } } - if yyr1397 || yy2arr1397 { + if yyr1411 || yy2arr1411 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1405 := z.EncBinary() - _ = yym1405 + yym1419 := z.EncBinary() + _ = yym1419 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.PodTemplateFilePathNFS)) @@ -12445,17 +12553,17 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecEncodeSelf(e *codec1978.Enc z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("podTemplateFilePathNFS")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1406 := z.EncBinary() - _ = yym1406 + yym1420 := z.EncBinary() + _ = yym1420 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.PodTemplateFilePathNFS)) } } - if yyr1397 || yy2arr1397 { + if yyr1411 || yy2arr1411 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1408 := z.EncBinary() - _ = yym1408 + yym1422 := z.EncBinary() + _ = yym1422 if false { } else { r.EncodeInt(int64(x.IncrementTimeoutNFS)) @@ -12464,17 +12572,17 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecEncodeSelf(e *codec1978.Enc z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("incrementTimeoutNFS")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1409 := z.EncBinary() - _ = yym1409 + yym1423 := z.EncBinary() + _ = yym1423 if false { } else { r.EncodeInt(int64(x.IncrementTimeoutNFS)) } } - if yyr1397 || yy2arr1397 { + if yyr1411 || yy2arr1411 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1411 := z.EncBinary() - _ = yym1411 + yym1425 := z.EncBinary() + _ = yym1425 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.PodTemplateFilePathHostPath)) @@ -12483,17 +12591,17 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecEncodeSelf(e *codec1978.Enc z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("podTemplateFilePathHostPath")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1412 := z.EncBinary() - _ = yym1412 + yym1426 := z.EncBinary() + _ = yym1426 if false { } else { r.EncodeString(codecSelferC_UTF81234, string(x.PodTemplateFilePathHostPath)) } } - if yyr1397 || yy2arr1397 { + if yyr1411 || yy2arr1411 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1414 := z.EncBinary() - _ = yym1414 + yym1428 := z.EncBinary() + _ = yym1428 if false { } else { r.EncodeInt(int64(x.MinimumTimeoutHostPath)) @@ -12502,17 +12610,17 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecEncodeSelf(e *codec1978.Enc z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("minimumTimeoutHostPath")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1415 := z.EncBinary() - _ = yym1415 + yym1429 := z.EncBinary() + _ = yym1429 if false { } else { r.EncodeInt(int64(x.MinimumTimeoutHostPath)) } } - if yyr1397 || yy2arr1397 { + if yyr1411 || yy2arr1411 { z.EncSendContainerState(codecSelfer_containerArrayElem1234) - yym1417 := z.EncBinary() - _ = yym1417 + yym1431 := z.EncBinary() + _ = yym1431 if false { } else { r.EncodeInt(int64(x.IncrementTimeoutHostPath)) @@ -12521,14 +12629,14 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecEncodeSelf(e *codec1978.Enc z.EncSendContainerState(codecSelfer_containerMapKey1234) r.EncodeString(codecSelferC_UTF81234, string("incrementTimeoutHostPath")) z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1418 := z.EncBinary() - _ = yym1418 + yym1432 := z.EncBinary() + _ = yym1432 if false { } else { r.EncodeInt(int64(x.IncrementTimeoutHostPath)) } } - if yyr1397 || yy2arr1397 { + if yyr1411 || yy2arr1411 { z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } else { z.EncSendContainerState(codecSelfer_containerMapEnd1234) @@ -12541,25 +12649,25 @@ func (x *PersistentVolumeRecyclerConfiguration) CodecDecodeSelf(d *codec1978.Dec var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - yym1419 := z.DecBinary() - _ = yym1419 + yym1433 := z.DecBinary() + _ = yym1433 if false { } else if z.HasExtensions() && z.DecExt(x) { } else { - yyct1420 := r.ContainerType() - if yyct1420 == codecSelferValueTypeMap1234 { - yyl1420 := r.ReadMapStart() - if yyl1420 == 0 { + yyct1434 := r.ContainerType() + if yyct1434 == codecSelferValueTypeMap1234 { + yyl1434 := r.ReadMapStart() + if yyl1434 == 0 { z.DecSendContainerState(codecSelfer_containerMapEnd1234) } else { - x.codecDecodeSelfFromMap(yyl1420, d) + x.codecDecodeSelfFromMap(yyl1434, d) } - } else if yyct1420 == codecSelferValueTypeArray1234 { - yyl1420 := r.ReadArrayStart() - if yyl1420 == 0 { + } else if yyct1434 == codecSelferValueTypeArray1234 { + yyl1434 := r.ReadArrayStart() + if yyl1434 == 0 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } else { - x.codecDecodeSelfFromArray(yyl1420, d) + x.codecDecodeSelfFromArray(yyl1434, d) } } else { panic(codecSelferOnlyMapOrArrayEncodeToStructErr1234) @@ -12571,12 +12679,12 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromMap(l int, d var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yys1421Slc = z.DecScratchBuffer() // default slice to decode into - _ = yys1421Slc - var yyhl1421 bool = l >= 0 - for yyj1421 := 0; ; yyj1421++ { - if yyhl1421 { - if yyj1421 >= l { + var yys1435Slc = z.DecScratchBuffer() // default slice to decode into + _ = yys1435Slc + var yyhl1435 bool = l >= 0 + for yyj1435 := 0; ; yyj1435++ { + if yyhl1435 { + if yyj1435 >= l { break } } else { @@ -12585,10 +12693,10 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromMap(l int, d } } z.DecSendContainerState(codecSelfer_containerMapKey1234) - yys1421Slc = r.DecodeBytes(yys1421Slc, true, true) - yys1421 := string(yys1421Slc) + yys1435Slc = r.DecodeBytes(yys1435Slc, true, true) + yys1435 := string(yys1435Slc) z.DecSendContainerState(codecSelfer_containerMapValue1234) - switch yys1421 { + switch yys1435 { case "maximumRetry": if r.TryDecodeAsNil() { x.MaximumRetry = 0 @@ -12632,9 +12740,9 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromMap(l int, d x.IncrementTimeoutHostPath = int32(r.DecodeInt(32)) } default: - z.DecStructFieldNotFound(-1, yys1421) - } // end switch yys1421 - } // end for yyj1421 + z.DecStructFieldNotFound(-1, yys1435) + } // end switch yys1435 + } // end for yyj1435 z.DecSendContainerState(codecSelfer_containerMapEnd1234) } @@ -12642,16 +12750,16 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromArray(l int, var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - var yyj1429 int - var yyb1429 bool - var yyhl1429 bool = l >= 0 - yyj1429++ - if yyhl1429 { - yyb1429 = yyj1429 > l + var yyj1443 int + var yyb1443 bool + var yyhl1443 bool = l >= 0 + yyj1443++ + if yyhl1443 { + yyb1443 = yyj1443 > l } else { - yyb1429 = r.CheckBreak() + yyb1443 = r.CheckBreak() } - if yyb1429 { + if yyb1443 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12661,13 +12769,13 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromArray(l int, } else { x.MaximumRetry = int32(r.DecodeInt(32)) } - yyj1429++ - if yyhl1429 { - yyb1429 = yyj1429 > l + yyj1443++ + if yyhl1443 { + yyb1443 = yyj1443 > l } else { - yyb1429 = r.CheckBreak() + yyb1443 = r.CheckBreak() } - if yyb1429 { + if yyb1443 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12677,13 +12785,13 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromArray(l int, } else { x.MinimumTimeoutNFS = int32(r.DecodeInt(32)) } - yyj1429++ - if yyhl1429 { - yyb1429 = yyj1429 > l + yyj1443++ + if yyhl1443 { + yyb1443 = yyj1443 > l } else { - yyb1429 = r.CheckBreak() + yyb1443 = r.CheckBreak() } - if yyb1429 { + if yyb1443 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12693,13 +12801,13 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromArray(l int, } else { x.PodTemplateFilePathNFS = string(r.DecodeString()) } - yyj1429++ - if yyhl1429 { - yyb1429 = yyj1429 > l + yyj1443++ + if yyhl1443 { + yyb1443 = yyj1443 > l } else { - yyb1429 = r.CheckBreak() + yyb1443 = r.CheckBreak() } - if yyb1429 { + if yyb1443 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12709,13 +12817,13 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromArray(l int, } else { x.IncrementTimeoutNFS = int32(r.DecodeInt(32)) } - yyj1429++ - if yyhl1429 { - yyb1429 = yyj1429 > l + yyj1443++ + if yyhl1443 { + yyb1443 = yyj1443 > l } else { - yyb1429 = r.CheckBreak() + yyb1443 = r.CheckBreak() } - if yyb1429 { + if yyb1443 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12725,13 +12833,13 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromArray(l int, } else { x.PodTemplateFilePathHostPath = string(r.DecodeString()) } - yyj1429++ - if yyhl1429 { - yyb1429 = yyj1429 > l + yyj1443++ + if yyhl1443 { + yyb1443 = yyj1443 > l } else { - yyb1429 = r.CheckBreak() + yyb1443 = r.CheckBreak() } - if yyb1429 { + if yyb1443 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12741,13 +12849,13 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromArray(l int, } else { x.MinimumTimeoutHostPath = int32(r.DecodeInt(32)) } - yyj1429++ - if yyhl1429 { - yyb1429 = yyj1429 > l + yyj1443++ + if yyhl1443 { + yyb1443 = yyj1443 > l } else { - yyb1429 = r.CheckBreak() + yyb1443 = r.CheckBreak() } - if yyb1429 { + if yyb1443 { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) return } @@ -12758,17 +12866,17 @@ func (x *PersistentVolumeRecyclerConfiguration) codecDecodeSelfFromArray(l int, x.IncrementTimeoutHostPath = int32(r.DecodeInt(32)) } for { - yyj1429++ - if yyhl1429 { - yyb1429 = yyj1429 > l + yyj1443++ + if yyhl1443 { + yyb1443 = yyj1443 > l } else { - yyb1429 = r.CheckBreak() + yyb1443 = r.CheckBreak() } - if yyb1429 { + if yyb1443 { break } z.DecSendContainerState(codecSelfer_containerArrayElem1234) - z.DecStructFieldNotFound(yyj1429-1, "") + z.DecStructFieldNotFound(yyj1443-1, "") } z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } @@ -12778,20 +12886,20 @@ func (x codecSelfer1234) encconfig_ConfigurationMap(v pkg2_config.ConfigurationM z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r r.EncodeMapStart(len(v)) - for yyk1437, yyv1437 := range v { + for yyk1451, yyv1451 := range v { z.EncSendContainerState(codecSelfer_containerMapKey1234) - yym1438 := z.EncBinary() - _ = yym1438 + yym1452 := z.EncBinary() + _ = yym1452 if false { } else { - r.EncodeString(codecSelferC_UTF81234, string(yyk1437)) + r.EncodeString(codecSelferC_UTF81234, string(yyk1451)) } z.EncSendContainerState(codecSelfer_containerMapValue1234) - yym1439 := z.EncBinary() - _ = yym1439 + yym1453 := z.EncBinary() + _ = yym1453 if false { } else { - r.EncodeString(codecSelferC_UTF81234, string(yyv1437)) + r.EncodeString(codecSelferC_UTF81234, string(yyv1451)) } } z.EncSendContainerState(codecSelfer_containerMapEnd1234) @@ -12802,63 +12910,63 @@ func (x codecSelfer1234) decconfig_ConfigurationMap(v *pkg2_config.Configuration z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r - yyv1440 := *v - yyl1440 := r.ReadMapStart() - yybh1440 := z.DecBasicHandle() - if yyv1440 == nil { - yyrl1440, _ := z.DecInferLen(yyl1440, yybh1440.MaxInitLen, 32) - yyv1440 = make(map[string]string, yyrl1440) - *v = yyv1440 + yyv1454 := *v + yyl1454 := r.ReadMapStart() + yybh1454 := z.DecBasicHandle() + if yyv1454 == nil { + yyrl1454, _ := z.DecInferLen(yyl1454, yybh1454.MaxInitLen, 32) + yyv1454 = make(map[string]string, yyrl1454) + *v = yyv1454 } - var yymk1440 string - var yymv1440 string - var yymg1440 bool - if yybh1440.MapValueReset { + var yymk1454 string + var yymv1454 string + var yymg1454 bool + if yybh1454.MapValueReset { } - if yyl1440 > 0 { - for yyj1440 := 0; yyj1440 < yyl1440; yyj1440++ { + if yyl1454 > 0 { + for yyj1454 := 0; yyj1454 < yyl1454; yyj1454++ { z.DecSendContainerState(codecSelfer_containerMapKey1234) if r.TryDecodeAsNil() { - yymk1440 = "" + yymk1454 = "" } else { - yymk1440 = string(r.DecodeString()) + yymk1454 = string(r.DecodeString()) } - if yymg1440 { - yymv1440 = yyv1440[yymk1440] + if yymg1454 { + yymv1454 = yyv1454[yymk1454] } z.DecSendContainerState(codecSelfer_containerMapValue1234) if r.TryDecodeAsNil() { - yymv1440 = "" + yymv1454 = "" } else { - yymv1440 = string(r.DecodeString()) + yymv1454 = string(r.DecodeString()) } - if yyv1440 != nil { - yyv1440[yymk1440] = yymv1440 + if yyv1454 != nil { + yyv1454[yymk1454] = yymv1454 } } - } else if yyl1440 < 0 { - for yyj1440 := 0; !r.CheckBreak(); yyj1440++ { + } else if yyl1454 < 0 { + for yyj1454 := 0; !r.CheckBreak(); yyj1454++ { z.DecSendContainerState(codecSelfer_containerMapKey1234) if r.TryDecodeAsNil() { - yymk1440 = "" + yymk1454 = "" } else { - yymk1440 = string(r.DecodeString()) + yymk1454 = string(r.DecodeString()) } - if yymg1440 { - yymv1440 = yyv1440[yymk1440] + if yymg1454 { + yymv1454 = yyv1454[yymk1454] } z.DecSendContainerState(codecSelfer_containerMapValue1234) if r.TryDecodeAsNil() { - yymv1440 = "" + yymv1454 = "" } else { - yymv1440 = string(r.DecodeString()) + yymv1454 = string(r.DecodeString()) } - if yyv1440 != nil { - yyv1440[yymk1440] = yymv1440 + if yyv1454 != nil { + yyv1454[yymk1454] = yymv1454 } } } // else len==0: TODO: Should we clear map entries? diff --git a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/types.go b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/types.go index 78a07ec246..25235a1695 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/types.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/types.go @@ -763,6 +763,13 @@ type KubeControllerManagerConfiguration struct { // Zone is treated as unhealthy in nodeEvictionRate and secondaryNodeEvictionRate when at least // unhealthyZoneThreshold (no less than 3) of Nodes in the zone are NotReady UnhealthyZoneThreshold float32 `json:"unhealthyZoneThreshold"` + // Reconciler runs a periodic loop to reconcile the desired state of the with + // the actual state of the world by triggering attach detach operations. + // This flag enables or disables reconcile. Is false by default, and thus enabled. + DisableAttachDetachReconcilerSync bool `json:"disableAttachDetachReconcilerSync"` + // ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop + // wait between successive executions. Is set to 5 min by default. + ReconcilerSyncLoopPeriod unversioned.Duration `json:"reconcilerSyncLoopPeriod"` } // VolumeConfiguration contains *all* enumerated flags meant to configure all volume diff --git a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.conversion.go index b76653e914..4cefb3d8db 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.deepcopy.go index a725d641e2..97313aecec 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.defaults.go index a0cf834df5..33614d2e0a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/v1alpha1/zz_generated.defaults.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/zz_generated.deepcopy.go index 9c536b6845..53c92bdb40 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/componentconfig/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -132,6 +132,8 @@ func DeepCopy_componentconfig_KubeControllerManagerConfiguration(in interface{}, out.SecondaryNodeEvictionRate = in.SecondaryNodeEvictionRate out.LargeClusterSizeThreshold = in.LargeClusterSizeThreshold out.UnhealthyZoneThreshold = in.UnhealthyZoneThreshold + out.DisableAttachDetachReconcilerSync = in.DisableAttachDetachReconcilerSync + out.ReconcilerSyncLoopPeriod = in.ReconcilerSyncLoopPeriod return nil } } diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.pb.go index 88f3559acf..68eea44dcd 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto index da5d6d3bd7..df0affb038 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.conversion.go index 2a56a2384e..59948345c4 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go index a5e2ecb17d..7f6882ba63 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.defaults.go index 9be3b426f8..c807dbe4e3 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/v1beta1/zz_generated.defaults.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/extensions/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/extensions/zz_generated.deepcopy.go index 8714d2dbe8..2b69bbda56 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/extensions/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/extensions/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/generated.pb.go index a7a1437a41..2c001fad4f 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/generated.proto index 7b26db9353..968c283f3e 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/zz_generated.conversion.go index aa40b0a52f..255fffcfee 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/zz_generated.deepcopy.go index 88192e5009..9053264fda 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/v1alpha1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/zz_generated.deepcopy.go index a8748f5f17..1bae1a867f 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/imagepolicy/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.pb.go index 4e26157669..128b8e9d33 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto index 7782fd5253..c3f3176ecc 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.conversion.go index e3015bb0a1..0f9f531bac 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go index c60bac0bd8..47154cca7b 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/v1beta1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/policy/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/policy/zz_generated.deepcopy.go index 3b840ec04d..f31e0b0ea1 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/policy/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/policy/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.pb.go index 8c2ab6c6f8..e63b0a69f9 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.proto index 09f11e33b0..63731b9b2c 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.conversion.go index 21c79541f4..4711321e2a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.deepcopy.go index d4d2dfcf3f..98bb07efa2 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.defaults.go b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.defaults.go index 05e68f657b..ee52f1cd72 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.defaults.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/v1alpha1/zz_generated.defaults.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/rbac/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/rbac/zz_generated.deepcopy.go index a216d2c052..a4c747e16f 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/rbac/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/rbac/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.pb.go index 0a22e648f0..db2dac4aa5 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.proto b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.proto index bdc0631cf2..328f1bd66a 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/zz_generated.conversion.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/zz_generated.conversion.go index ef6b401489..b494bdbceb 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/zz_generated.conversion.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/zz_generated.conversion.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/zz_generated.deepcopy.go index d9e7ed0956..a0540414d6 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/v1beta1/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/apis/storage/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/apis/storage/zz_generated.deepcopy.go index 7542669781..0451db7795 100644 --- a/vendor/k8s.io/kubernetes/pkg/apis/storage/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/apis/storage/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/clientset.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/clientset.go index 7819009c80..6f353e0177 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/clientset.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/clientset.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/doc.go index cf081af2ca..6d5a0d8cb4 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake/clientset_generated.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake/clientset_generated.go index e6eac0081c..16d4b2a874 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake/clientset_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake/clientset_generated.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake/doc.go index 937b6ba852..97d6fe8d4f 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/apps_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/apps_client.go index 84ffd5f9fe..0e59c75f50 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/apps_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/apps_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/fake_apps_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/fake_apps_client.go index f38c729600..9b1f71c1cb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/fake_apps_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/fake_apps_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/fake_statefulset.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/fake_statefulset.go index be5392632a..e1fdf665c9 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/fake_statefulset.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/fake/fake_statefulset.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/generated_expansion.go index 14e220e7a3..29b6b52318 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/statefulset.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/statefulset.go index 18089e70a6..c3dd088a45 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/statefulset.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/apps/internalversion/statefulset.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/authentication_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/authentication_client.go index a4f9bdef4c..dbf2352815 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/authentication_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/authentication_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/fake_authentication_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/fake_authentication_client.go index ca8db0215b..20f3330eba 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/fake_authentication_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/fake_authentication_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/fake_tokenreview.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/fake_tokenreview.go index 6508f5a94a..f88556a649 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/fake_tokenreview.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/fake/fake_tokenreview.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/generated_expansion.go index 85214a8140..b0f76eeede 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/tokenreview.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/tokenreview.go index 9987d63e2e..d6cbc51f79 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/tokenreview.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authentication/internalversion/tokenreview.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/authorization_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/authorization_client.go index b9b85f6370..9f101ef4c9 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/authorization_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/authorization_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_authorization_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_authorization_client.go index ce668628f6..5c34558d38 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_authorization_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_authorization_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_localsubjectaccessreview.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_localsubjectaccessreview.go index 50a1e3a899..ddc53b8dd6 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_localsubjectaccessreview.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_localsubjectaccessreview.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_selfsubjectaccessreview.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_selfsubjectaccessreview.go index b107c1b2c4..7af01048ec 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_selfsubjectaccessreview.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_selfsubjectaccessreview.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_subjectaccessreview.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_subjectaccessreview.go index 0a01cd81a4..e0a92c737a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_subjectaccessreview.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/fake/fake_subjectaccessreview.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/generated_expansion.go index 85214a8140..b0f76eeede 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/localsubjectaccessreview.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/localsubjectaccessreview.go index 5277a227d7..cc5805657a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/localsubjectaccessreview.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/localsubjectaccessreview.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/selfsubjectaccessreview.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/selfsubjectaccessreview.go index 7e22f832b3..961e37c8c0 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/selfsubjectaccessreview.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/selfsubjectaccessreview.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/subjectaccessreview.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/subjectaccessreview.go index 344bcebf09..e11f016238 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/subjectaccessreview.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/authorization/internalversion/subjectaccessreview.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/autoscaling_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/autoscaling_client.go index 0291b6d6c8..f41a7e7457 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/autoscaling_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/autoscaling_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/fake_autoscaling_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/fake_autoscaling_client.go index b36326f4a2..07e962152f 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/fake_autoscaling_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/fake_autoscaling_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/fake_horizontalpodautoscaler.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/fake_horizontalpodautoscaler.go index 408d39b71a..8b62ced70e 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/fake_horizontalpodautoscaler.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/fake/fake_horizontalpodautoscaler.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/generated_expansion.go index 386fb42223..bf7296c51a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/horizontalpodautoscaler.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/horizontalpodautoscaler.go index fea42bb821..2c18825878 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/horizontalpodautoscaler.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/autoscaling/internalversion/horizontalpodautoscaler.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/batch_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/batch_client.go index c1b62f1f29..75832c5f3c 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/batch_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/batch_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/cronjob.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/cronjob.go index 2c17896aaa..8efbfe6bd1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/cronjob.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/cronjob.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_batch_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_batch_client.go index bc7695b735..8adbdac56c 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_batch_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_batch_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_cronjob.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_cronjob.go index aa2d7e5b9e..2fe0924304 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_cronjob.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_cronjob.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_job.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_job.go index 1914c73b1e..c61fa633f3 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_job.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/fake/fake_job.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/generated_expansion.go index 866c057afc..28a62926cd 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/job.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/job.go index f5fb8ffa22..f47c7eaf88 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/job.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/batch/internalversion/job.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/certificates_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/certificates_client.go index 0c10fdb59c..46e0494026 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/certificates_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/certificates_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/certificatesigningrequest.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/certificatesigningrequest.go index b647475fb2..cbb84f31b8 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/certificatesigningrequest.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/certificatesigningrequest.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/fake_certificates_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/fake_certificates_client.go index d52bcdd2ea..9ea0c45c9c 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/fake_certificates_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/fake_certificates_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/fake_certificatesigningrequest.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/fake_certificatesigningrequest.go index 482d41930e..dd93556f47 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/fake_certificatesigningrequest.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/fake/fake_certificatesigningrequest.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/generated_expansion.go index 85214a8140..b0f76eeede 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/certificates/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/componentstatus.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/componentstatus.go index 25ec37e4e8..b5eab101b0 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/componentstatus.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/componentstatus.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/configmap.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/configmap.go index 0956777bb7..a2118f5177 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/configmap.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/configmap.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/core_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/core_client.go index b5d4a88893..af03d447e2 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/core_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/core_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/endpoints.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/endpoints.go index a7989de3ba..2dd3e3fbfd 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/endpoints.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/endpoints.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/event.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/event.go index 8667ac4688..71bdb367b9 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/event.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/event.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_componentstatus.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_componentstatus.go index da32f6f8c2..c97d00a11c 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_componentstatus.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_componentstatus.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_configmap.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_configmap.go index 2e00fabb5b..bf9fbacd12 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_configmap.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_configmap.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_core_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_core_client.go index 66808c32db..10f001b43f 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_core_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_core_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_endpoints.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_endpoints.go index 2705a25e8b..23e2ba1bf4 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_endpoints.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_endpoints.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_event.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_event.go index 21980a7a7d..f43218a101 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_event.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_event.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_limitrange.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_limitrange.go index 1706df0c82..1a4595abb6 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_limitrange.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_limitrange.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_namespace.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_namespace.go index e5c4ceca05..2bf79ee238 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_namespace.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_namespace.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_node.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_node.go index 2788608c72..8c164f7ad2 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_node.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_node.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_persistentvolume.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_persistentvolume.go index e7d0446cde..a6d4edd1a4 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_persistentvolume.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_persistentvolume.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_persistentvolumeclaim.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_persistentvolumeclaim.go index c394f43c95..d29ead55d1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_persistentvolumeclaim.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_persistentvolumeclaim.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_pod.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_pod.go index dd50f12ccb..24b9a45b37 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_pod.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_pod.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_podtemplate.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_podtemplate.go index 57a95a21dd..1f8a30f4ce 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_podtemplate.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_podtemplate.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_replicationcontroller.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_replicationcontroller.go index 935dc1f126..522050787d 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_replicationcontroller.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_replicationcontroller.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_resourcequota.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_resourcequota.go index 40188d77ad..dca3cd140a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_resourcequota.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_resourcequota.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_secret.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_secret.go index b0c339ce56..1165f25626 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_secret.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_secret.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_service.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_service.go index 20d81829f7..2f5156c355 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_service.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_service.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_serviceaccount.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_serviceaccount.go index 5c70cf4b1f..2bdcdd7864 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_serviceaccount.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/fake/fake_serviceaccount.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/generated_expansion.go index 39ad1b2fe3..6591a3af0d 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/limitrange.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/limitrange.go index 51c7b799a2..902d06f387 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/limitrange.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/limitrange.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/namespace.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/namespace.go index b94a2aa27f..16d1ca88f3 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/namespace.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/namespace.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/node.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/node.go index ebf6d77e07..d9f0943111 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/node.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/node.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/persistentvolume.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/persistentvolume.go index dd63e5d01d..7b640e7a65 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/persistentvolume.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/persistentvolume.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/persistentvolumeclaim.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/persistentvolumeclaim.go index ff87b85e00..913b0db04e 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/persistentvolumeclaim.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/persistentvolumeclaim.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/pod.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/pod.go index 1495f1ea0c..114ab08a67 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/pod.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/pod.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/podtemplate.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/podtemplate.go index a610e4db2b..8d4ca63e80 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/podtemplate.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/podtemplate.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/replicationcontroller.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/replicationcontroller.go index 58f97f9181..4a82f7e13a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/replicationcontroller.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/replicationcontroller.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/resourcequota.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/resourcequota.go index 254a7361f9..0fee440e80 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/resourcequota.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/resourcequota.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/secret.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/secret.go index 6fb40f5a6e..3123d23005 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/secret.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/secret.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/service.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/service.go index 2e912e4b1d..d785ba7f27 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/service.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/service.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/serviceaccount.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/serviceaccount.go index 1ace726198..2c8d445bbe 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/serviceaccount.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion/serviceaccount.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/daemonset.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/daemonset.go index c219deddb9..d49657fd54 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/daemonset.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/daemonset.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/deployment.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/deployment.go index 7da091b6c2..f85541dfda 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/deployment.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/deployment.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/extensions_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/extensions_client.go index 99bf3b5977..cbe3f6dae5 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/extensions_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/extensions_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_daemonset.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_daemonset.go index 6b193b5f2a..0d8917d90f 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_daemonset.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_daemonset.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_deployment.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_deployment.go index d001e6048a..bbfdf3d744 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_deployment.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_deployment.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_extensions_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_extensions_client.go index 9ab490eb13..d2805ef00c 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_extensions_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_extensions_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_ingress.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_ingress.go index 12d6b27db9..0a9c73fb59 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_ingress.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_ingress.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_networkpolicy.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_networkpolicy.go index 6e86fe8e95..2056b7616e 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_networkpolicy.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_networkpolicy.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_podsecuritypolicy.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_podsecuritypolicy.go index ce469529a4..97a6913c05 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_podsecuritypolicy.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_podsecuritypolicy.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_replicaset.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_replicaset.go index 52779dd09c..f0bab086ad 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_replicaset.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_replicaset.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_scale.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_scale.go index 0179e4edce..2d2eb4f6e4 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_scale.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_scale.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_thirdpartyresource.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_thirdpartyresource.go index 196120566c..189772d926 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_thirdpartyresource.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/fake/fake_thirdpartyresource.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/generated_expansion.go index 070aeeaa60..7081551e98 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/ingress.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/ingress.go index 2b031e9ae2..e7fcf9834f 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/ingress.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/ingress.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/networkpolicy.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/networkpolicy.go index 40127cf117..2d15c91f16 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/networkpolicy.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/networkpolicy.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/podsecuritypolicy.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/podsecuritypolicy.go index cffa9e874f..546f50469b 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/podsecuritypolicy.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/podsecuritypolicy.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/replicaset.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/replicaset.go index 02d386574b..49b38354af 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/replicaset.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/replicaset.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/scale.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/scale.go index f1e703c3d4..892a07e37b 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/scale.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/scale.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/thirdpartyresource.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/thirdpartyresource.go index a3056f330a..b6a41f68bc 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/thirdpartyresource.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/extensions/internalversion/thirdpartyresource.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/eviction.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/eviction.go index b16a393437..012a67e167 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/eviction.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/eviction.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_eviction.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_eviction.go index 70b7ebc56a..52abe617c5 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_eviction.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_eviction.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_poddisruptionbudget.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_poddisruptionbudget.go index d5c2337ea4..39d8def246 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_poddisruptionbudget.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_poddisruptionbudget.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_policy_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_policy_client.go index c277e61f42..d8dd4c722f 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_policy_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/fake/fake_policy_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/generated_expansion.go index f60d699df6..d323ea6c62 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/poddisruptionbudget.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/poddisruptionbudget.go index d71984dbad..80505dcfcb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/poddisruptionbudget.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/poddisruptionbudget.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/policy_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/policy_client.go index b968424b00..9d74525030 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/policy_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/policy/internalversion/policy_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/clusterrole.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/clusterrole.go index e595057e2f..20e6e3dbe9 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/clusterrole.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/clusterrole.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/clusterrolebinding.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/clusterrolebinding.go index 92300ce2a6..9a12544e32 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/clusterrolebinding.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/clusterrolebinding.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_clusterrole.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_clusterrole.go index 10fe274ced..4a84082e20 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_clusterrole.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_clusterrole.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_clusterrolebinding.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_clusterrolebinding.go index 1e59d65710..412331c79b 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_clusterrolebinding.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_clusterrolebinding.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_rbac_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_rbac_client.go index eba5b0375a..a17bbf1fc3 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_rbac_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_rbac_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_role.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_role.go index b1a197f6df..e8d097232d 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_role.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_role.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_rolebinding.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_rolebinding.go index dd80ede851..92564c1001 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_rolebinding.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/fake/fake_rolebinding.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/generated_expansion.go index bbdee22a35..749e7d2ca8 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/rbac_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/rbac_client.go index 40dfd5a630..faa428bf8a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/rbac_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/rbac_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/role.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/role.go index 1203535b47..798047f903 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/role.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/role.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/rolebinding.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/rolebinding.go index 839aff4b0b..cbcaa86ddf 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/rolebinding.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/rbac/internalversion/rolebinding.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/doc.go index d908962a44..0a27970fbb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/doc.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/doc.go index 083f78f3a4..a0ecb96ba1 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/fake_storage_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/fake_storage_client.go index 37721e0510..e954f15299 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/fake_storage_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/fake_storage_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/fake_storageclass.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/fake_storageclass.go index c6cc03375f..88ee0809e3 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/fake_storageclass.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/fake/fake_storageclass.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/generated_expansion.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/generated_expansion.go index 6b85162067..2fe8e8d7ed 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/generated_expansion.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/generated_expansion.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/storage_client.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/storage_client.go index 75692f1afb..4e102ec896 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/storage_client.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/storage_client.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/storageclass.go b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/storageclass.go index 4d2ece0788..2fabf88f8f 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/storageclass.go +++ b/vendor/k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/storage/internalversion/storageclass.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/cronjob.go b/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/cronjob.go index 0d085d874c..dd8280876d 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/cronjob.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/cronjob.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/expansion_generated.go b/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/expansion_generated.go index 8c5401f200..9da1ef3d6d 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/expansion_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/expansion_generated.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/job.go b/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/job.go index 49e02f8ae6..0b892fedde 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/job.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/batch/internalversion/job.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/componentstatus.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/componentstatus.go index 711cba1e75..29de700c2a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/componentstatus.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/componentstatus.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/configmap.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/configmap.go index 6de8d43ccf..5ef6737456 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/configmap.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/configmap.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/endpoints.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/endpoints.go index 881b4873c6..9cbcd1a45a 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/endpoints.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/endpoints.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/event.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/event.go index b1ec8289b7..1ae0c9d1fb 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/event.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/event.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/expansion_generated.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/expansion_generated.go index 0fa7a1efee..e844c1b5a5 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/expansion_generated.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/expansion_generated.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/limitrange.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/limitrange.go index 60868afec0..957ac5dd1b 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/limitrange.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/limitrange.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/namespace.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/namespace.go index 9fe35bbbe6..f30dd17845 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/namespace.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/namespace.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/node.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/node.go index a0289ad139..f2fca08d34 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/node.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/node.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/persistentvolume.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/persistentvolume.go index 2aca397e4f..3233574840 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/persistentvolume.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/persistentvolume.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/persistentvolumeclaim.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/persistentvolumeclaim.go index b46fdc2912..ef6b574328 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/persistentvolumeclaim.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/persistentvolumeclaim.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/pod.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/pod.go index b5fd25cff0..10eb6cddbd 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/pod.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/pod.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/podtemplate.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/podtemplate.go index 1a0091f1c0..a911268098 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/podtemplate.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/podtemplate.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/replicationcontroller.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/replicationcontroller.go index c9b475bd14..30aec3f761 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/replicationcontroller.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/replicationcontroller.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/resourcequota.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/resourcequota.go index 3d6ed077c6..881b37411b 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/resourcequota.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/resourcequota.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/secret.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/secret.go index cc6563fbab..daca6fa8d2 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/secret.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/secret.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/service.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/service.go index 2c0e69408e..c2a2d9f8e5 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/service.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/service.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/serviceaccount.go b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/serviceaccount.go index 91c700d138..c22043b964 100644 --- a/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/serviceaccount.go +++ b/vendor/k8s.io/kubernetes/pkg/client/listers/core/internalversion/serviceaccount.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_instances.go b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_instances.go index a03c5dd9b0..bff305def4 100644 --- a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_instances.go +++ b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_instances.go @@ -68,7 +68,7 @@ func (az *Cloud) InstanceType(name types.NodeName) (string, error) { } else if !exists { return "", cloudprovider.InstanceNotFound } - return string(machine.Properties.HardwareProfile.VMSize), nil + return string(machine.HardwareProfile.VMSize), nil } // List lists instances that match 'filter' which is a regular expression which must match the entire instance name (fqdn) diff --git a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_loadbalancer.go b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_loadbalancer.go index bd26a41c52..41b0c0e888 100644 --- a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_loadbalancer.go +++ b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_loadbalancer.go @@ -57,7 +57,7 @@ func (az *Cloud) GetLoadBalancer(clusterName string, service *api.Service) (stat } return &api.LoadBalancerStatus{ - Ingress: []api.LoadBalancerIngress{{IP: *pip.Properties.IPAddress}}, + Ingress: []api.LoadBalancerIngress{{IP: *pip.IPAddress}}, }, true, nil } @@ -95,9 +95,9 @@ func (az *Cloud) EnsureLoadBalancer(clusterName string, service *api.Service, no } if !existsLb { lb = network.LoadBalancer{ - Name: &lbName, - Location: &az.Location, - Properties: &network.LoadBalancerPropertiesFormat{}, + Name: &lbName, + Location: &az.Location, + LoadBalancerPropertiesFormat: &network.LoadBalancerPropertiesFormat{}, } } @@ -134,9 +134,9 @@ func (az *Cloud) EnsureLoadBalancer(clusterName string, service *api.Service, no return nil, utilerrors.Flatten(errs) } - glog.V(2).Infof("ensure(%s): FINISH - %s", serviceName, *pip.Properties.IPAddress) + glog.V(2).Infof("ensure(%s): FINISH - %s", serviceName, *pip.IPAddress) return &api.LoadBalancerStatus{ - Ingress: []api.LoadBalancerIngress{{IP: *pip.Properties.IPAddress}}, + Ingress: []api.LoadBalancerIngress{{IP: *pip.IPAddress}}, }, nil } @@ -172,7 +172,7 @@ func (az *Cloud) EnsureLoadBalancerDeleted(clusterName string, service *api.Serv return reconcileErr } if lbNeedsUpdate { - if len(*lb.Properties.FrontendIPConfigurations) > 0 { + if len(*lb.FrontendIPConfigurations) > 0 { glog.V(3).Infof("delete(%s): lb(%s) - updating", serviceName, lbName) _, err = az.LoadBalancerClient.CreateOrUpdate(az.ResourceGroup, *lb.Name, lb, nil) if err != nil { @@ -227,7 +227,7 @@ func (az *Cloud) ensurePublicIPExists(serviceName, pipName string) (*network.Pub pip.Name = to.StringPtr(pipName) pip.Location = to.StringPtr(az.Location) - pip.Properties = &network.PublicIPAddressPropertiesFormat{ + pip.PublicIPAddressPropertiesFormat = &network.PublicIPAddressPropertiesFormat{ PublicIPAllocationMethod: network.Static, } pip.Tags = &map[string]*string{"service": &serviceName} @@ -272,17 +272,17 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub // Ensure LoadBalancer's Backend Pool Configuration if wantLb { - if lb.Properties.BackendAddressPools == nil || - len(*lb.Properties.BackendAddressPools) == 0 { - lb.Properties.BackendAddressPools = &[]network.BackendAddressPool{ + if lb.BackendAddressPools == nil || + len(*lb.BackendAddressPools) == 0 { + lb.BackendAddressPools = &[]network.BackendAddressPool{ { Name: to.StringPtr(lbBackendPoolName), }, } glog.V(10).Infof("reconcile(%s)(%t): lb backendpool - adding", serviceName, wantLb) dirtyLb = true - } else if len(*lb.Properties.BackendAddressPools) != 1 || - !strings.EqualFold(*(*lb.Properties.BackendAddressPools)[0].Name, lbBackendPoolName) { + } else if len(*lb.BackendAddressPools) != 1 || + !strings.EqualFold(*(*lb.BackendAddressPools)[0].Name, lbBackendPoolName) { return lb, false, fmt.Errorf("loadbalancer is misconfigured with a different backend pool") } } @@ -290,8 +290,8 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub // Ensure LoadBalancer's Frontend IP Configurations dirtyConfigs := false newConfigs := []network.FrontendIPConfiguration{} - if lb.Properties.FrontendIPConfigurations != nil { - newConfigs = *lb.Properties.FrontendIPConfigurations + if lb.FrontendIPConfigurations != nil { + newConfigs = *lb.FrontendIPConfigurations } if !wantLb { for i := len(newConfigs) - 1; i >= 0; i-- { @@ -314,7 +314,7 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub newConfigs = append(newConfigs, network.FrontendIPConfiguration{ Name: to.StringPtr(lbFrontendIPConfigName), - Properties: &network.FrontendIPConfigurationPropertiesFormat{ + FrontendIPConfigurationPropertiesFormat: &network.FrontendIPConfigurationPropertiesFormat{ PublicIPAddress: &network.PublicIPAddress{ ID: pip.ID, }, @@ -326,7 +326,7 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub } if dirtyConfigs { dirtyLb = true - lb.Properties.FrontendIPConfigurations = &newConfigs + lb.FrontendIPConfigurations = &newConfigs } // update probes/rules @@ -345,7 +345,7 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub expectedProbes[i] = network.Probe{ Name: &lbRuleName, - Properties: &network.ProbePropertiesFormat{ + ProbePropertiesFormat: &network.ProbePropertiesFormat{ RequestPath: to.StringPtr(podPresencePath), Protocol: network.ProbeProtocolHTTP, Port: to.Int32Ptr(podPresencePort), @@ -356,7 +356,7 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub } else { expectedProbes[i] = network.Probe{ Name: &lbRuleName, - Properties: &network.ProbePropertiesFormat{ + ProbePropertiesFormat: &network.ProbePropertiesFormat{ Protocol: probeProto, Port: to.Int32Ptr(port.NodePort), IntervalInSeconds: to.Int32Ptr(5), @@ -367,7 +367,7 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub expectedRules[i] = network.LoadBalancingRule{ Name: &lbRuleName, - Properties: &network.LoadBalancingRulePropertiesFormat{ + LoadBalancingRulePropertiesFormat: &network.LoadBalancingRulePropertiesFormat{ Protocol: transportProto, FrontendIPConfiguration: &network.SubResource{ ID: to.StringPtr(lbFrontendIPConfigID), @@ -388,8 +388,8 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub // remove unwanted probes dirtyProbes := false var updatedProbes []network.Probe - if lb.Properties.Probes != nil { - updatedProbes = *lb.Properties.Probes + if lb.Probes != nil { + updatedProbes = *lb.Probes } for i := len(updatedProbes) - 1; i >= 0; i-- { existingProbe := updatedProbes[i] @@ -422,14 +422,14 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub } if dirtyProbes { dirtyLb = true - lb.Properties.Probes = &updatedProbes + lb.Probes = &updatedProbes } // update rules dirtyRules := false var updatedRules []network.LoadBalancingRule - if lb.Properties.LoadBalancingRules != nil { - updatedRules = *lb.Properties.LoadBalancingRules + if lb.LoadBalancingRules != nil { + updatedRules = *lb.LoadBalancingRules } // update rules: remove unwanted for i := len(updatedRules) - 1; i >= 0; i-- { @@ -463,7 +463,7 @@ func (az *Cloud) reconcileLoadBalancer(lb network.LoadBalancer, pip *network.Pub } if dirtyRules { dirtyLb = true - lb.Properties.LoadBalancingRules = &updatedRules + lb.LoadBalancingRules = &updatedRules } return lb, dirtyLb, nil @@ -499,7 +499,7 @@ func (az *Cloud) reconcileSecurityGroup(sg network.SecurityGroup, clusterName st ix := i*len(sourceAddressPrefixes) + j expectedSecurityRules[ix] = network.SecurityRule{ Name: to.StringPtr(securityRuleName), - Properties: &network.SecurityRulePropertiesFormat{ + SecurityRulePropertiesFormat: &network.SecurityRulePropertiesFormat{ Protocol: securityProto, SourcePortRange: to.StringPtr("*"), DestinationPortRange: to.StringPtr(strconv.Itoa(int(port.Port))), @@ -515,8 +515,8 @@ func (az *Cloud) reconcileSecurityGroup(sg network.SecurityGroup, clusterName st // update security rules dirtySg := false var updatedRules []network.SecurityRule - if sg.Properties.SecurityRules != nil { - updatedRules = *sg.Properties.SecurityRules + if sg.SecurityRules != nil { + updatedRules = *sg.SecurityRules } // update security rules: remove unwanted for i := len(updatedRules) - 1; i >= 0; i-- { @@ -550,13 +550,13 @@ func (az *Cloud) reconcileSecurityGroup(sg network.SecurityGroup, clusterName st return sg, false, err } - expectedRule.Properties.Priority = to.Int32Ptr(nextAvailablePriority) + expectedRule.Priority = to.Int32Ptr(nextAvailablePriority) updatedRules = append(updatedRules, expectedRule) dirtySg = true } } if dirtySg { - sg.Properties.SecurityRules = &updatedRules + sg.SecurityRules = &updatedRules } return sg, dirtySg, nil } @@ -609,7 +609,7 @@ func (az *Cloud) ensureHostInPool(serviceName string, nodeName types.NodeName, b // Check availability set if az.PrimaryAvailabilitySetName != "" { expectedAvailabilitySetName := az.getAvailabilitySetID(az.PrimaryAvailabilitySetName) - if !strings.EqualFold(*machine.Properties.AvailabilitySet.ID, expectedAvailabilitySetName) { + if !strings.EqualFold(*machine.AvailabilitySet.ID, expectedAvailabilitySetName) { glog.V(3).Infof( "nicupdate(%s): skipping nic (%s) since it is not in the primaryAvailabilitSet(%s)", serviceName, nicName, az.PrimaryAvailabilitySetName) @@ -630,8 +630,8 @@ func (az *Cloud) ensureHostInPool(serviceName string, nodeName types.NodeName, b foundPool := false newBackendPools := []network.BackendAddressPool{} - if primaryIPConfig.Properties.LoadBalancerBackendAddressPools != nil { - newBackendPools = *primaryIPConfig.Properties.LoadBalancerBackendAddressPools + if primaryIPConfig.LoadBalancerBackendAddressPools != nil { + newBackendPools = *primaryIPConfig.LoadBalancerBackendAddressPools } for _, existingPool := range newBackendPools { if strings.EqualFold(backendPoolID, *existingPool.ID) { @@ -645,7 +645,7 @@ func (az *Cloud) ensureHostInPool(serviceName string, nodeName types.NodeName, b ID: to.StringPtr(backendPoolID), }) - primaryIPConfig.Properties.LoadBalancerBackendAddressPools = &newBackendPools + primaryIPConfig.LoadBalancerBackendAddressPools = &newBackendPools glog.V(3).Infof("nicupdate(%s): nic(%s) - updating", serviceName, nicName) _, err := az.InterfacesClient.CreateOrUpdate(az.ResourceGroup, *nic.Name, nic, nil) diff --git a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_routes.go b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_routes.go index 23707fdf7b..f7f763f49f 100644 --- a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_routes.go +++ b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_routes.go @@ -39,11 +39,11 @@ func (az *Cloud) ListRoutes(clusterName string) (routes []*cloudprovider.Route, } var kubeRoutes []*cloudprovider.Route - if routeTable.Properties.Routes != nil { - kubeRoutes = make([]*cloudprovider.Route, len(*routeTable.Properties.Routes)) - for i, route := range *routeTable.Properties.Routes { + if routeTable.Routes != nil { + kubeRoutes = make([]*cloudprovider.Route, len(*routeTable.Routes)) + for i, route := range *routeTable.Routes { instance := mapRouteNameToNodeName(*route.Name) - cidr := *route.Properties.AddressPrefix + cidr := *route.AddressPrefix glog.V(10).Infof("list: * instance=%q, cidr=%q", instance, cidr) kubeRoutes[i] = &cloudprovider.Route{ @@ -70,9 +70,9 @@ func (az *Cloud) CreateRoute(clusterName string, nameHint string, kubeRoute *clo } if !existsRouteTable { routeTable = network.RouteTable{ - Name: to.StringPtr(az.RouteTableName), - Location: to.StringPtr(az.Location), - Properties: &network.RouteTablePropertiesFormat{}, + Name: to.StringPtr(az.RouteTableName), + Location: to.StringPtr(az.Location), + RouteTablePropertiesFormat: &network.RouteTablePropertiesFormat{}, } glog.V(3).Infof("create: creating routetable. routeTableName=%q", az.RouteTableName) @@ -93,12 +93,12 @@ func (az *Cloud) CreateRoute(clusterName string, nameHint string, kubeRoute *clo // 404 is fatal here return err } - if subnet.Properties.RouteTable != nil { - if *subnet.Properties.RouteTable.ID != *routeTable.ID { - return fmt.Errorf("The subnet has a route table, but it was unrecognized. Refusing to modify it. active_routetable=%q expected_routetable=%q", *subnet.Properties.RouteTable.ID, *routeTable.ID) + if subnet.RouteTable != nil { + if *subnet.RouteTable.ID != *routeTable.ID { + return fmt.Errorf("The subnet has a route table, but it was unrecognized. Refusing to modify it. active_routetable=%q expected_routetable=%q", *subnet.RouteTable.ID, *routeTable.ID) } } else { - subnet.Properties.RouteTable = &network.RouteTable{ + subnet.RouteTable = &network.RouteTable{ ID: routeTable.ID, } glog.V(3).Info("create: updating subnet") @@ -116,7 +116,7 @@ func (az *Cloud) CreateRoute(clusterName string, nameHint string, kubeRoute *clo routeName := mapNodeNameToRouteName(kubeRoute.TargetNode) route := network.Route{ Name: to.StringPtr(routeName), - Properties: &network.RoutePropertiesFormat{ + RoutePropertiesFormat: &network.RoutePropertiesFormat{ AddressPrefix: to.StringPtr(kubeRoute.DestinationCIDR), NextHopType: network.RouteNextHopTypeVirtualAppliance, NextHopIPAddress: to.StringPtr(targetIP), diff --git a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_storage.go b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_storage.go index 490ee8a3cf..b69e3cdffb 100644 --- a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_storage.go +++ b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_storage.go @@ -39,7 +39,7 @@ func (az *Cloud) AttachDisk(diskName, diskURI string, nodeName types.NodeName, l } else if !exists { return cloudprovider.InstanceNotFound } - disks := *vm.Properties.StorageProfile.DataDisks + disks := *vm.StorageProfile.DataDisks disks = append(disks, compute.DataDisk{ Name: &diskName, @@ -53,7 +53,7 @@ func (az *Cloud) AttachDisk(diskName, diskURI string, nodeName types.NodeName, l newVM := compute.VirtualMachine{ Location: vm.Location, - Properties: &compute.VirtualMachineProperties{ + VirtualMachineProperties: &compute.VirtualMachineProperties{ StorageProfile: &compute.StorageProfile{ DataDisks: &disks, }, @@ -91,7 +91,7 @@ func (az *Cloud) DisksAreAttached(diskNames []string, nodeName types.NodeName) ( return attached, err } - disks := *vm.Properties.StorageProfile.DataDisks + disks := *vm.StorageProfile.DataDisks for _, disk := range disks { for _, diskName := range diskNames { if disk.Name != nil && diskName != "" && *disk.Name == diskName { @@ -113,7 +113,7 @@ func (az *Cloud) DetachDiskByName(diskName, diskURI string, nodeName types.NodeN return nil } - disks := *vm.Properties.StorageProfile.DataDisks + disks := *vm.StorageProfile.DataDisks for i, disk := range disks { if (disk.Name != nil && diskName != "" && *disk.Name == diskName) || (disk.Vhd.URI != nil && diskURI != "" && *disk.Vhd.URI == diskURI) { // found the disk @@ -124,7 +124,7 @@ func (az *Cloud) DetachDiskByName(diskName, diskURI string, nodeName types.NodeN } newVM := compute.VirtualMachine{ Location: vm.Location, - Properties: &compute.VirtualMachineProperties{ + VirtualMachineProperties: &compute.VirtualMachineProperties{ StorageProfile: &compute.StorageProfile{ DataDisks: &disks, }, @@ -148,7 +148,7 @@ func (az *Cloud) GetDiskLun(diskName, diskURI string, nodeName types.NodeName) ( } else if !exists { return -1, cloudprovider.InstanceNotFound } - disks := *vm.Properties.StorageProfile.DataDisks + disks := *vm.StorageProfile.DataDisks for _, disk := range disks { if disk.Lun != nil && (disk.Name != nil && diskName != "" && *disk.Name == diskName) || (disk.Vhd.URI != nil && diskURI != "" && *disk.Vhd.URI == diskURI) { // found the disk @@ -169,7 +169,7 @@ func (az *Cloud) GetNextDiskLun(nodeName types.NodeName) (int32, error) { return -1, cloudprovider.InstanceNotFound } used := make([]bool, maxLUN) - disks := *vm.Properties.StorageProfile.DataDisks + disks := *vm.StorageProfile.DataDisks for _, disk := range disks { if disk.Lun != nil { used[*disk.Lun] = true diff --git a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_util.go b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_util.go index c020671042..51a40ee89f 100644 --- a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_util.go +++ b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/azure/azure_util.go @@ -133,12 +133,12 @@ func getProtocolsFromKubernetesProtocol(protocol api.Protocol) (network.Transpor // This returns the full identifier of the primary NIC for the given VM. func getPrimaryInterfaceID(machine compute.VirtualMachine) (string, error) { - if len(*machine.Properties.NetworkProfile.NetworkInterfaces) == 1 { - return *(*machine.Properties.NetworkProfile.NetworkInterfaces)[0].ID, nil + if len(*machine.NetworkProfile.NetworkInterfaces) == 1 { + return *(*machine.NetworkProfile.NetworkInterfaces)[0].ID, nil } - for _, ref := range *machine.Properties.NetworkProfile.NetworkInterfaces { - if *ref.Properties.Primary { + for _, ref := range *machine.NetworkProfile.NetworkInterfaces { + if *ref.Primary { return *ref.ID, nil } } @@ -147,12 +147,12 @@ func getPrimaryInterfaceID(machine compute.VirtualMachine) (string, error) { } func getPrimaryIPConfig(nic network.Interface) (*network.InterfaceIPConfiguration, error) { - if len(*nic.Properties.IPConfigurations) == 1 { - return &((*nic.Properties.IPConfigurations)[0]), nil + if len(*nic.IPConfigurations) == 1 { + return &((*nic.IPConfigurations)[0]), nil } - for _, ref := range *nic.Properties.IPConfigurations { - if *ref.Properties.Primary { + for _, ref := range *nic.IPConfigurations { + if *ref.Primary { return &ref, nil } } @@ -204,7 +204,7 @@ func getNextAvailablePriority(rules []network.SecurityRule) (int32, error) { outer: for smallest < loadBalancerMaximumPriority { for _, rule := range rules { - if *rule.Properties.Priority == smallest { + if *rule.Priority == smallest { smallest += spread continue outer } @@ -245,6 +245,6 @@ func (az *Cloud) getIPForMachine(nodeName types.NodeName) (string, error) { return "", err } - targetIP := *ipConfig.Properties.PrivateIPAddress + targetIP := *ipConfig.PrivateIPAddress return targetIP, nil } diff --git a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vsphere.go b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vsphere.go index 804931a96b..9aef4d053f 100644 --- a/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vsphere.go +++ b/vendor/k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vsphere.go @@ -360,8 +360,11 @@ func vSphereLogin(vs *VSphere, ctx context.Context) error { m := session.NewManager(vs.client.Client) // retrieve client's current session u, err := m.UserSession(ctx) - if err == nil && u == nil { - // current session is valid + if err != nil { + glog.Errorf("Error while obtaining user session. err: %q", err) + return err + } + if u != nil { return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/controller/garbagecollector/garbagecollector.go b/vendor/k8s.io/kubernetes/pkg/controller/garbagecollector/garbagecollector.go index e3beadff91..77b8251ca5 100644 --- a/vendor/k8s.io/kubernetes/pkg/controller/garbagecollector/garbagecollector.go +++ b/vendor/k8s.io/kubernetes/pkg/controller/garbagecollector/garbagecollector.go @@ -563,6 +563,14 @@ func NewGarbageCollector(metaOnlyClientPool dynamic.ClientPool, clientPool dynam } kind, err := gc.restMapper.KindFor(resource) if err != nil { + if _, ok := err.(*meta.NoResourceMatchError); ok { + // ignore NoResourceMatchErrors for now because TPRs won't be registered + // and hence the RestMapper does not know about them. The deletableResources + // though are using discovery which included TPRs. + // TODO: use dynamic discovery for RestMapper and deletableResources + glog.Warningf("ignore NoResourceMatchError for %v", resource) + continue + } return nil, err } monitor, err := gc.monitorFor(resource, kind) diff --git a/vendor/k8s.io/kubernetes/pkg/controller/podautoscaler/metrics/utilization.go b/vendor/k8s.io/kubernetes/pkg/controller/podautoscaler/metrics/utilization.go index f0e909207f..ebae3ea645 100644 --- a/vendor/k8s.io/kubernetes/pkg/controller/podautoscaler/metrics/utilization.go +++ b/vendor/k8s.io/kubernetes/pkg/controller/podautoscaler/metrics/utilization.go @@ -16,6 +16,10 @@ limitations under the License. package metrics +import ( + "fmt" +) + // GetResourceUtilizationRatio takes in a set of metrics, a set of matching requests, // and a target utilization percentage, and calcuates the the ratio of // desired to actual utilization (returning that and the actual utilization) @@ -34,6 +38,12 @@ func GetResourceUtilizationRatio(metrics PodResourceInfo, requests map[string]in requestsTotal += request } + // if the set of requests is completely disjoint from the set of metrics, + // then we could have an issue where the requests total is zero + if requestsTotal == 0 { + return 0, 0, fmt.Errorf("no metrics returned matched known pods") + } + currentUtilization := int32((metricsTotal * 100) / requestsTotal) return float64(currentUtilization) / float64(targetUtilization), currentUtilization, nil diff --git a/vendor/k8s.io/kubernetes/pkg/controller/service/servicecontroller.go b/vendor/k8s.io/kubernetes/pkg/controller/service/servicecontroller.go index c41b0daa01..482bad0757 100644 --- a/vendor/k8s.io/kubernetes/pkg/controller/service/servicecontroller.go +++ b/vendor/k8s.io/kubernetes/pkg/controller/service/servicecontroller.go @@ -324,12 +324,10 @@ func (s *ServiceController) persistUpdate(service *api.Service) error { return nil } // TODO: Try to resolve the conflict if the change was unrelated to load - // balancer status. For now, just rely on the fact that we'll - // also process the update that caused the resource version to change. + // balancer status. For now, just pass it up the stack. if errors.IsConflict(err) { - glog.V(4).Infof("Not persisting update to service '%s/%s' that has been changed since we received it: %v", + return fmt.Errorf("Not persisting update to service '%s/%s' that has been changed since we received it: %v", service.Namespace, service.Name, err) - return nil } glog.Warningf("Failed to persist updated LoadBalancerStatus to service '%s/%s' after creating its load balancer: %v", service.Namespace, service.Name, err) diff --git a/vendor/k8s.io/kubernetes/pkg/controller/volume/attachdetach/attach_detach_controller.go b/vendor/k8s.io/kubernetes/pkg/controller/volume/attachdetach/attach_detach_controller.go index a6aadeddee..d02a3ceb3f 100644 --- a/vendor/k8s.io/kubernetes/pkg/controller/volume/attachdetach/attach_detach_controller.go +++ b/vendor/k8s.io/kubernetes/pkg/controller/volume/attachdetach/attach_detach_controller.go @@ -56,10 +56,6 @@ const ( // desiredStateOfWorldPopulatorLoopSleepPeriod is the amount of time the // DesiredStateOfWorldPopulator loop waits between successive executions desiredStateOfWorldPopulatorLoopSleepPeriod time.Duration = 1 * time.Minute - - // reconcilerSyncDuration is the amount of time the reconciler sync states loop - // wait between successive executions - reconcilerSyncDuration time.Duration = 5 * time.Second ) // AttachDetachController defines the operations supported by this controller. @@ -76,7 +72,9 @@ func NewAttachDetachController( pvInformer kcache.SharedInformer, cloud cloudprovider.Interface, plugins []volume.VolumePlugin, - recorder record.EventRecorder) (AttachDetachController, error) { + recorder record.EventRecorder, + disableReconciliationSync bool, + reconcilerSyncDuration time.Duration) (AttachDetachController, error) { // TODO: The default resyncPeriod for shared informers is 12 hours, this is // unacceptable for the attach/detach controller. For example, if a pod is // skipped because the node it is scheduled to didn't set its annotation in @@ -124,10 +122,13 @@ func NewAttachDetachController( false) // flag for experimental binary check for volume mount adc.nodeStatusUpdater = statusupdater.NewNodeStatusUpdater( kubeClient, nodeInformer, adc.actualStateOfWorld) + + // Default these to values in options adc.reconciler = reconciler.NewReconciler( reconcilerLoopPeriod, reconcilerMaxWaitForUnmountDuration, reconcilerSyncDuration, + disableReconciliationSync, adc.desiredStateOfWorld, adc.actualStateOfWorld, adc.attacherDetacher, diff --git a/vendor/k8s.io/kubernetes/pkg/controller/volume/attachdetach/reconciler/reconciler.go b/vendor/k8s.io/kubernetes/pkg/controller/volume/attachdetach/reconciler/reconciler.go index b12bd113eb..5bce52f92d 100644 --- a/vendor/k8s.io/kubernetes/pkg/controller/volume/attachdetach/reconciler/reconciler.go +++ b/vendor/k8s.io/kubernetes/pkg/controller/volume/attachdetach/reconciler/reconciler.go @@ -57,6 +57,7 @@ func NewReconciler( loopPeriod time.Duration, maxWaitForUnmountDuration time.Duration, syncDuration time.Duration, + disableReconciliationSync bool, desiredStateOfWorld cache.DesiredStateOfWorld, actualStateOfWorld cache.ActualStateOfWorld, attacherDetacher operationexecutor.OperationExecutor, @@ -65,6 +66,7 @@ func NewReconciler( loopPeriod: loopPeriod, maxWaitForUnmountDuration: maxWaitForUnmountDuration, syncDuration: syncDuration, + disableReconciliationSync: disableReconciliationSync, desiredStateOfWorld: desiredStateOfWorld, actualStateOfWorld: actualStateOfWorld, attacherDetacher: attacherDetacher, @@ -82,18 +84,27 @@ type reconciler struct { attacherDetacher operationexecutor.OperationExecutor nodeStatusUpdater statusupdater.NodeStatusUpdater timeOfLastSync time.Time + disableReconciliationSync bool } func (rc *reconciler) Run(stopCh <-chan struct{}) { wait.Until(rc.reconciliationLoopFunc(), rc.loopPeriod, stopCh) } +// reconciliationLoopFunc this can be disabled via cli option disableReconciliation. +// It periodically checks whether the attached volumes from actual state +// are still attached to the node and udpate the status if they are not. func (rc *reconciler) reconciliationLoopFunc() func() { return func() { + rc.reconcile() - // reconciler periodically checks whether the attached volumes from actual state - // are still attached to the node and udpate the status if they are not. - if time.Since(rc.timeOfLastSync) > rc.syncDuration { + + if rc.disableReconciliationSync { + glog.V(5).Info("Skipping reconciling attached volumes still attached since it is disabled via the command line.") + } else if rc.syncDuration < time.Second { + glog.V(5).Info("Skipping reconciling attached volumes still attached since it is set to less than one second via the command line.") + } else if time.Since(rc.timeOfLastSync) > rc.syncDuration { + glog.V(5).Info("Starting reconciling attached volumes still attached") rc.sync() } } diff --git a/vendor/k8s.io/kubernetes/pkg/credentialprovider/aws/aws_credentials.go b/vendor/k8s.io/kubernetes/pkg/credentialprovider/aws/aws_credentials.go index f8a9e41bfc..81fe377464 100644 --- a/vendor/k8s.io/kubernetes/pkg/credentialprovider/aws/aws_credentials.go +++ b/vendor/k8s.io/kubernetes/pkg/credentialprovider/aws/aws_credentials.go @@ -44,6 +44,7 @@ var AWSRegions = [...]string{ "ap-southeast-2", "ap-northeast-1", "ap-northeast-2", + "ca-central-1", "cn-north-1", "us-gov-west-1", "sa-east-1", diff --git a/vendor/k8s.io/kubernetes/pkg/credentialprovider/azure/BUILD b/vendor/k8s.io/kubernetes/pkg/credentialprovider/azure/BUILD new file mode 100644 index 0000000000..ef0a7591e9 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/credentialprovider/azure/BUILD @@ -0,0 +1,37 @@ +package(default_visibility = ["//visibility:public"]) + +licenses(["notice"]) + +load( + "@io_bazel_rules_go//go:def.bzl", + "go_binary", + "go_library", + "go_test", + "cgo_library", +) + +go_library( + name = "go_default_library", + srcs = ["azure_credentials.go"], + tags = ["automanaged"], + deps = [ + "//pkg/cloudprovider/providers/azure:go_default_library", + "//pkg/credentialprovider:go_default_library", + "//vendor:github.com/Azure/azure-sdk-for-go/arm/containerregistry", + "//vendor:github.com/Azure/go-autorest/autorest/azure", + "//vendor:github.com/golang/glog", + "//vendor:github.com/spf13/pflag", + "//vendor:gopkg.in/yaml.v2", + ], +) + +go_test( + name = "go_default_test", + srcs = ["azure_credentials_test.go"], + library = "go_default_library", + tags = ["automanaged"], + deps = [ + "//vendor:github.com/Azure/azure-sdk-for-go/arm/containerregistry", + "//vendor:github.com/Azure/go-autorest/autorest/to", + ], +) diff --git a/vendor/k8s.io/kubernetes/pkg/credentialprovider/azure/azure_credentials.go b/vendor/k8s.io/kubernetes/pkg/credentialprovider/azure/azure_credentials.go new file mode 100644 index 0000000000..b0191567f6 --- /dev/null +++ b/vendor/k8s.io/kubernetes/pkg/credentialprovider/azure/azure_credentials.go @@ -0,0 +1,144 @@ +/* +Copyright 2016 The Kubernetes Authors. + +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 + + 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. +*/ + +package azure + +import ( + "fmt" + "io/ioutil" + "time" + + yaml "gopkg.in/yaml.v2" + + "github.com/Azure/azure-sdk-for-go/arm/containerregistry" + azureapi "github.com/Azure/go-autorest/autorest/azure" + "github.com/golang/glog" + "github.com/spf13/pflag" + "k8s.io/kubernetes/pkg/cloudprovider/providers/azure" + "k8s.io/kubernetes/pkg/credentialprovider" +) + +var flagConfigFile = pflag.String("azure-container-registry-config", "", + "Path to the file container Azure container registry configuration information.") + +const dummyRegistryEmail = "name@contoso.com" + +// init registers the various means by which credentials may +// be resolved on Azure. +func init() { + credentialprovider.RegisterCredentialProvider("azure", + &credentialprovider.CachingDockerConfigProvider{ + Provider: NewACRProvider(flagConfigFile), + Lifetime: 1 * time.Minute, + }) +} + +type RegistriesClient interface { + List() (containerregistry.RegistryListResult, error) +} + +func NewACRProvider(configFile *string) credentialprovider.DockerConfigProvider { + return &acrProvider{ + file: configFile, + } +} + +type acrProvider struct { + file *string + config azure.Config + environment azureapi.Environment + registryClient RegistriesClient +} + +func (a *acrProvider) loadConfig(contents []byte) error { + err := yaml.Unmarshal(contents, &a.config) + if err != nil { + return err + } + + if a.config.Cloud == "" { + a.environment = azureapi.PublicCloud + } else { + a.environment, err = azureapi.EnvironmentFromName(a.config.Cloud) + if err != nil { + return err + } + } + return nil +} + +func (a *acrProvider) Enabled() bool { + if a.file == nil || len(*a.file) == 0 { + glog.V(5).Infof("Azure config unspecified, disabling") + return false + } + contents, err := ioutil.ReadFile(*a.file) + if err != nil { + glog.Errorf("Failed to load azure credential file: %v", err) + return false + } + if err := a.loadConfig(contents); err != nil { + glog.Errorf("Failed to parse azure credential file: %v", err) + return false + } + + oauthConfig, err := a.environment.OAuthConfigForTenant(a.config.TenantID) + if err != nil { + glog.Errorf("Failed to get oauth config: %v", err) + return false + } + + servicePrincipalToken, err := azureapi.NewServicePrincipalToken( + *oauthConfig, + a.config.AADClientID, + a.config.AADClientSecret, + a.environment.ServiceManagementEndpoint) + if err != nil { + glog.Errorf("Failed to create service principal token: %v", err) + return false + } + + registryClient := containerregistry.NewRegistriesClient(a.config.SubscriptionID) + registryClient.BaseURI = a.environment.ResourceManagerEndpoint + registryClient.Authorizer = servicePrincipalToken + a.registryClient = registryClient + + return true +} + +func (a *acrProvider) Provide() credentialprovider.DockerConfig { + cfg := credentialprovider.DockerConfig{} + entry := credentialprovider.DockerConfigEntry{ + Username: a.config.AADClientID, + Password: a.config.AADClientSecret, + Email: dummyRegistryEmail, + } + + res, err := a.registryClient.List() + if err != nil { + glog.Errorf("Failed to list registries: %v", err) + return cfg + } + for ix := range *res.Value { + // TODO: I don't think this will work for national clouds + cfg[fmt.Sprintf("%s.azurecr.io", *(*res.Value)[ix].Name)] = entry + } + return cfg +} + +func (a *acrProvider) LazyProvide() *credentialprovider.DockerConfigEntry { + return nil +} diff --git a/vendor/k8s.io/kubernetes/pkg/generated/openapi/zz_generated.openapi.go b/vendor/k8s.io/kubernetes/pkg/generated/openapi/zz_generated.openapi.go index bba05efb1f..4f81195242 100644 --- a/vendor/k8s.io/kubernetes/pkg/generated/openapi/zz_generated.openapi.go +++ b/vendor/k8s.io/kubernetes/pkg/generated/openapi/zz_generated.openapi.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -34,6 +34,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "StatefulSet represents a set of pods with consistent identities. Identities are defined as:\n - Network: A single stable DNS and hostname.\n - Storage: As many VolumeClaims as requested.\nThe StatefulSet guarantees that a given network identity will always map to the same storage identity.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/api.ObjectMeta"), @@ -62,6 +76,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "StatefulSetList is a collection of StatefulSets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -653,6 +681,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "configuration of a horizontal pod autoscaler.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/api.ObjectMeta"), @@ -681,6 +723,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "list of horizontal pod autoscaler objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -796,6 +852,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Scale represents a scaling request for a resource.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", @@ -867,6 +937,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "CronJob represents the configuration of a single cron job.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -896,6 +980,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "CronJobList is a collection of cron jobs.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -1003,6 +1101,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Job represents the configuration of a single job.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -1084,6 +1196,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "JobList is a collection of jobs.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -1224,6 +1350,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "JobTemplate describes a template for creating copies of a predefined pod.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -1270,6 +1410,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Describes a certificate signing request", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/api.ObjectMeta"), @@ -1335,6 +1489,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -1854,8 +2022,21 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Format: "float", }, }, + "disableAttachDetachReconcilerSync": { + SchemaProps: spec.SchemaProps{ + Description: "Reconciler runs a periodic loop to reconcile the desired state of the with the actual state of the world by triggering attach detach operations. This flag enables or disables reconcile. Is false by default, and thus enabled.", + Type: []string{"boolean"}, + Format: "", + }, + }, + "reconcilerSyncLoopPeriod": { + SchemaProps: spec.SchemaProps{ + Description: "ReconcilerSyncLoopPeriod is the amount of time the reconciler sync states loop wait between successive executions. Is set to 5 min by default.", + Ref: spec.MustCreateRef("#/definitions/unversioned.Duration"), + }, + }, }, - Required: []string{"TypeMeta", "port", "address", "useServiceAccountCredentials", "cloudProvider", "cloudConfigFile", "concurrentEndpointSyncs", "concurrentRSSyncs", "concurrentRCSyncs", "concurrentServiceSyncs", "concurrentResourceQuotaSyncs", "concurrentDeploymentSyncs", "concurrentDaemonSetSyncs", "concurrentJobSyncs", "concurrentNamespaceSyncs", "concurrentSATokenSyncs", "lookupCacheSizeForRC", "lookupCacheSizeForRS", "lookupCacheSizeForDaemonSet", "serviceSyncPeriod", "nodeSyncPeriod", "routeReconciliationPeriod", "resourceQuotaSyncPeriod", "namespaceSyncPeriod", "pvClaimBinderSyncPeriod", "minResyncPeriod", "terminatedPodGCThreshold", "horizontalPodAutoscalerSyncPeriod", "deploymentControllerSyncPeriod", "podEvictionTimeout", "deletingPodsQps", "deletingPodsBurst", "nodeMonitorGracePeriod", "registerRetryCount", "nodeStartupGracePeriod", "nodeMonitorPeriod", "serviceAccountKeyFile", "clusterSigningCertFile", "clusterSigningKeyFile", "approveAllKubeletCSRsForGroup", "enableProfiling", "clusterName", "clusterCIDR", "serviceCIDR", "nodeCIDRMaskSize", "allocateNodeCIDRs", "configureCloudRoutes", "rootCAFile", "contentType", "kubeAPIQPS", "kubeAPIBurst", "leaderElection", "volumeConfiguration", "controllerStartInterval", "enableGarbageCollector", "concurrentGCSyncs", "nodeEvictionRate", "secondaryNodeEvictionRate", "largeClusterSizeThreshold", "unhealthyZoneThreshold"}, + Required: []string{"TypeMeta", "port", "address", "useServiceAccountCredentials", "cloudProvider", "cloudConfigFile", "concurrentEndpointSyncs", "concurrentRSSyncs", "concurrentRCSyncs", "concurrentServiceSyncs", "concurrentResourceQuotaSyncs", "concurrentDeploymentSyncs", "concurrentDaemonSetSyncs", "concurrentJobSyncs", "concurrentNamespaceSyncs", "concurrentSATokenSyncs", "lookupCacheSizeForRC", "lookupCacheSizeForRS", "lookupCacheSizeForDaemonSet", "serviceSyncPeriod", "nodeSyncPeriod", "routeReconciliationPeriod", "resourceQuotaSyncPeriod", "namespaceSyncPeriod", "pvClaimBinderSyncPeriod", "minResyncPeriod", "terminatedPodGCThreshold", "horizontalPodAutoscalerSyncPeriod", "deploymentControllerSyncPeriod", "podEvictionTimeout", "deletingPodsQps", "deletingPodsBurst", "nodeMonitorGracePeriod", "registerRetryCount", "nodeStartupGracePeriod", "nodeMonitorPeriod", "serviceAccountKeyFile", "clusterSigningCertFile", "clusterSigningKeyFile", "approveAllKubeletCSRsForGroup", "enableProfiling", "clusterName", "clusterCIDR", "serviceCIDR", "nodeCIDRMaskSize", "allocateNodeCIDRs", "configureCloudRoutes", "rootCAFile", "contentType", "kubeAPIQPS", "kubeAPIBurst", "leaderElection", "volumeConfiguration", "controllerStartInterval", "enableGarbageCollector", "concurrentGCSyncs", "nodeEvictionRate", "secondaryNodeEvictionRate", "largeClusterSizeThreshold", "unhealthyZoneThreshold", "disableAttachDetachReconcilerSync", "reconcilerSyncLoopPeriod"}, }, }, Dependencies: []string{ @@ -3356,6 +3537,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "DaemonSet represents the configuration of a daemon set.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -3385,6 +3580,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "DaemonSetList is a collection of daemon sets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -3478,6 +3687,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/api.ObjectMeta"), @@ -3557,6 +3780,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -3587,6 +3824,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "DeploymentRollback stores the information required to rollback a deployment.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "name": { SchemaProps: spec.SchemaProps{ Description: "Required: This must match the Name of a deployment.", @@ -3908,6 +4159,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -3962,6 +4227,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "IngressList is a collection of Ingress.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -4000,10 +4279,16 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Format: "", }, }, + "http": { + SchemaProps: spec.SchemaProps{ + Ref: spec.MustCreateRef("#/definitions/extensions.HTTPIngressRuleValue"), + }, + }, }, }, }, - Dependencies: []string{}, + Dependencies: []string{ + "extensions.HTTPIngressRuleValue"}, }, "extensions.IngressRuleValue": { Schema: spec.Schema{ @@ -4116,6 +4401,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/api.ObjectMeta"), @@ -4175,6 +4474,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "NetworkPolicyList is a list of NetworkPolicy objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -4279,6 +4592,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodSecurityPolicy governs the ability to make requests that affect the SecurityContext that will be applied to a pod and container.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/api.ObjectMeta"), @@ -4301,6 +4628,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodSecurityPolicyList is a list of PodSecurityPolicy objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -4470,6 +4811,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ReplicaSet represents the configuration of a replica set.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/api.ObjectMeta"), @@ -4544,6 +4899,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ReplicaSetList is a collection of ReplicaSets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -4670,7 +5039,22 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Description: "Dummy definition", - Properties: map[string]spec.Schema{}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + }, }, }, Dependencies: []string{}, @@ -4776,6 +5160,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "represents a scaling request for a resource.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", @@ -4878,6 +5276,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "A ThirdPartyResource is a generic representation of a resource, it is used by add-ons and plugins to add new resource types to the API. It consists of one or more Versions of the api.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata", @@ -4915,6 +5327,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "An internal object, used for versioned storage in etcd. Not exposed to the end user.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata.", @@ -4938,6 +5364,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -4968,6 +5408,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata.", @@ -5122,6 +5576,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Eviction evicts a pod from its node subject to certain policies and safety constraints. This is a subresource of Pod. A request to cause such an eviction is created by POSTing to .../pods//eviction.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "ObjectMeta describes the pod that is being evicted.", @@ -5145,6 +5613,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/api.ObjectMeta"), @@ -5173,6 +5655,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodDisruptionBudgetList is a collection of PodDisruptionBudgets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -5839,6 +6335,18 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Unknown allows api objects with unknown types to be passed-through. This can be used to deal with the API objects from a plug-in. Unknown objects still have functioning TypeMeta features-- kind, version, etc. metadata and field mutatation.", Properties: map[string]spec.Schema{ + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, + "kind": { + SchemaProps: spec.SchemaProps{ + Type: []string{"string"}, + Format: "", + }, + }, "Raw": { SchemaProps: spec.SchemaProps{ Description: "Raw will hold the complete serialized object which couldn't be matched with a registered type. Most likely, nothing should be done with this except for passing it through the system.", @@ -5871,6 +6379,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "APIGroup contains the name, the supported versions, and the preferred version of a group.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "name": { SchemaProps: spec.SchemaProps{ Description: "name is the name of the group.", @@ -5922,6 +6444,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "APIGroupList is a list of APIGroup, to allow clients to discover the API at /apis.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "groups": { SchemaProps: spec.SchemaProps{ Description: "groups is a list of APIGroup.", @@ -5979,6 +6515,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "APIResourceList is a list of APIResource, it is used to expose the name of the resources supported in a specific group and version, and if the resource is namespaced.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "groupVersion": { SchemaProps: spec.SchemaProps{ Description: "groupVersion is the group and version this APIResourceList is for.", @@ -6011,6 +6561,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "APIVersions lists the versions that are available, to allow clients to discover the API at /api, which is the root path of the legacy v1 API.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "versions": { SchemaProps: spec.SchemaProps{ Description: "versions are the api versions that are available.", @@ -6067,6 +6631,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ExportOptions is the query options to the standard REST get call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "export": { SchemaProps: spec.SchemaProps{ Description: "Should this value be exported. Export strips fields that a user can not specify.`", @@ -6404,6 +6982,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Status is a return value for calls that don't return other objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -6790,6 +7382,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Binding ties one object to another. For example, a pod is bound to a node by a scheduler.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -6983,6 +7589,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ComponentStatus (and ComponentStatusList) holds the cluster validation info.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -7013,6 +7633,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Status of all the conditions for the component as a list of ComponentStatus objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -7044,6 +7678,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ConfigMap holds configuration data for pods to consume.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -7075,6 +7723,13 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Selects a key from a ConfigMap.", Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names", + Type: []string{"string"}, + Format: "", + }, + }, "key": { SchemaProps: spec.SchemaProps{ Description: "The key to select.", @@ -7093,6 +7748,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ConfigMapList is a resource containing a list of ConfigMap objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -7124,6 +7793,13 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Adapts a ConfigMap into a volume.\n\nThe contents of the target ConfigMap's Data field will be presented in a volume as files using the keys in the Data field as the file names, unless the items element is populated with specific mappings of keys to paths. ConfigMap volumes support ownership management and SELinux relabeling.", Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names", + Type: []string{"string"}, + Format: "", + }, + }, "items": { SchemaProps: spec.SchemaProps{ Description: "If unspecified, each key-value pair in the Data field of the referenced ConfigMap will be projected into the volume as a file whose name is the key and content is the value. If specified, the listed keys will be projected into the specified paths, and unlisted keys will not be present. If a key is specified which is not present in the ConfigMap, the volume setup will error. Paths must be relative and may not contain the '..' path or start with '..'.", @@ -7643,6 +8319,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "DeleteOptions may be provided when deleting an API object", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "gracePeriodSeconds": { SchemaProps: spec.SchemaProps{ Description: "The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.", @@ -7881,6 +8571,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Endpoints is a collection of endpoints that implement the actual service. Example:\n Name: \"mysvc\",\n Subsets: [\n {\n Addresses: [{\"ip\": \"10.10.1.1\"}, {\"ip\": \"10.10.2.2\"}],\n Ports: [{\"name\": \"a\", \"port\": 8675}, {\"name\": \"b\", \"port\": 309}]\n },\n {\n Addresses: [{\"ip\": \"10.10.3.3\"}],\n Ports: [{\"name\": \"a\", \"port\": 93}, {\"name\": \"b\", \"port\": 76}]\n },\n ]", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -7912,6 +8616,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "EndpointsList is a list of endpoints.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -8010,6 +8728,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Event is a report of an event somewhere in the cluster.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -8080,6 +8812,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "EventList is a list of events.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -8159,6 +8905,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ExportOptions is the query options to the standard REST get call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "export": { SchemaProps: spec.SchemaProps{ Description: "Should this value be exported. Export strips fields that a user can not specify.", @@ -8516,6 +9276,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "configuration of a horizontal pod autoscaler.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -8545,6 +9319,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "list of horizontal pod autoscaler objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata.", @@ -8732,6 +9520,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Job represents the configuration of a single job.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -8813,6 +9615,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "JobList is a collection of jobs.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -9008,6 +9824,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "LimitRange sets resource usage limits for each kind of resource in a Namespace.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -9114,6 +9944,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "LimitRangeList is a list of LimitRange items.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -9170,6 +10014,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "List holds a list of objects, which may not be known by the server.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -9201,6 +10059,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ListOptions is the query options to a standard REST list call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "labelSelector": { SchemaProps: spec.SchemaProps{ Description: "A selector to restrict the list of returned objects by their labels. Defaults to everything.", @@ -9343,6 +10215,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Namespace provides a scope for Names. Use of multiple namespaces is optional.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -9372,6 +10258,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "NamespaceList is a list of Namespaces.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -9444,6 +10344,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Node is a worker node in Kubernetes. Each node will have a unique identifier in the cache (i.e. in etcd).", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -9597,6 +10511,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "NodeList is the whole list of all Nodes which have been registered with master.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -9628,6 +10556,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "NodeProxyOptions is the query options to a Node's proxy call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "path": { SchemaProps: spec.SchemaProps{ Description: "Path is the URL path to use for the current proxy request to node.", @@ -10246,6 +11188,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PersistentVolume (PV) is a storage resource provisioned by an administrator. It is analogous to a node. More info: http://kubernetes.io/docs/user-guide/persistent-volumes", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -10275,6 +11231,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PersistentVolumeClaim is a user's request for and claim to a persistent volume", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -10304,6 +11274,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PersistentVolumeClaimList is a list of PersistentVolumeClaim items.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -10449,6 +11433,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PersistentVolumeList is a list of PersistentVolume items.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -10606,6 +11604,108 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ }, }, }, + "gcePersistentDisk": { + SchemaProps: spec.SchemaProps{ + Description: "GCEPersistentDisk represents a GCE Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Provisioned by an admin. More info: http://kubernetes.io/docs/user-guide/volumes#gcepersistentdisk", + Ref: spec.MustCreateRef("#/definitions/v1.GCEPersistentDiskVolumeSource"), + }, + }, + "awsElasticBlockStore": { + SchemaProps: spec.SchemaProps{ + Description: "AWSElasticBlockStore represents an AWS Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://kubernetes.io/docs/user-guide/volumes#awselasticblockstore", + Ref: spec.MustCreateRef("#/definitions/v1.AWSElasticBlockStoreVolumeSource"), + }, + }, + "hostPath": { + SchemaProps: spec.SchemaProps{ + Description: "HostPath represents a directory on the host. Provisioned by a developer or tester. This is useful for single-node development and testing only! On-host storage is not supported in any way and WILL NOT WORK in a multi-node cluster. More info: http://kubernetes.io/docs/user-guide/volumes#hostpath", + Ref: spec.MustCreateRef("#/definitions/v1.HostPathVolumeSource"), + }, + }, + "glusterfs": { + SchemaProps: spec.SchemaProps{ + Description: "Glusterfs represents a Glusterfs volume that is attached to a host and exposed to the pod. Provisioned by an admin. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md", + Ref: spec.MustCreateRef("#/definitions/v1.GlusterfsVolumeSource"), + }, + }, + "nfs": { + SchemaProps: spec.SchemaProps{ + Description: "NFS represents an NFS mount on the host. Provisioned by an admin. More info: http://kubernetes.io/docs/user-guide/volumes#nfs", + Ref: spec.MustCreateRef("#/definitions/v1.NFSVolumeSource"), + }, + }, + "rbd": { + SchemaProps: spec.SchemaProps{ + Description: "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md", + Ref: spec.MustCreateRef("#/definitions/v1.RBDVolumeSource"), + }, + }, + "iscsi": { + SchemaProps: spec.SchemaProps{ + Description: "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. Provisioned by an admin.", + Ref: spec.MustCreateRef("#/definitions/v1.ISCSIVolumeSource"), + }, + }, + "cinder": { + SchemaProps: spec.SchemaProps{ + Description: "Cinder represents a cinder volume attached and mounted on kubelets host machine More info: http://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md", + Ref: spec.MustCreateRef("#/definitions/v1.CinderVolumeSource"), + }, + }, + "cephfs": { + SchemaProps: spec.SchemaProps{ + Description: "CephFS represents a Ceph FS mount on the host that shares a pod's lifetime", + Ref: spec.MustCreateRef("#/definitions/v1.CephFSVolumeSource"), + }, + }, + "fc": { + SchemaProps: spec.SchemaProps{ + Description: "FC represents a Fibre Channel resource that is attached to a kubelet's host machine and then exposed to the pod.", + Ref: spec.MustCreateRef("#/definitions/v1.FCVolumeSource"), + }, + }, + "flocker": { + SchemaProps: spec.SchemaProps{ + Description: "Flocker represents a Flocker volume attached to a kubelet's host machine and exposed to the pod for its usage. This depends on the Flocker control service being running", + Ref: spec.MustCreateRef("#/definitions/v1.FlockerVolumeSource"), + }, + }, + "flexVolume": { + SchemaProps: spec.SchemaProps{ + Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin. This is an alpha feature and may change in future.", + Ref: spec.MustCreateRef("#/definitions/v1.FlexVolumeSource"), + }, + }, + "azureFile": { + SchemaProps: spec.SchemaProps{ + Description: "AzureFile represents an Azure File Service mount on the host and bind mount to the pod.", + Ref: spec.MustCreateRef("#/definitions/v1.AzureFileVolumeSource"), + }, + }, + "vsphereVolume": { + SchemaProps: spec.SchemaProps{ + Description: "VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine", + Ref: spec.MustCreateRef("#/definitions/v1.VsphereVirtualDiskVolumeSource"), + }, + }, + "quobyte": { + SchemaProps: spec.SchemaProps{ + Description: "Quobyte represents a Quobyte mount on the host that shares a pod's lifetime", + Ref: spec.MustCreateRef("#/definitions/v1.QuobyteVolumeSource"), + }, + }, + "azureDisk": { + SchemaProps: spec.SchemaProps{ + Description: "AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod.", + Ref: spec.MustCreateRef("#/definitions/v1.AzureDiskVolumeSource"), + }, + }, + "photonPersistentDisk": { + SchemaProps: spec.SchemaProps{ + Description: "PhotonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine", + Ref: spec.MustCreateRef("#/definitions/v1.PhotonPersistentDiskVolumeSource"), + }, + }, "accessModes": { SchemaProps: spec.SchemaProps{ Description: "AccessModes contains all ways the volume can be mounted. More info: http://kubernetes.io/docs/user-guide/persistent-volumes#access-modes", @@ -10637,7 +11737,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ }, }, Dependencies: []string{ - "resource.Quantity", "v1.ObjectReference"}, + "resource.Quantity", "v1.AWSElasticBlockStoreVolumeSource", "v1.AzureDiskVolumeSource", "v1.AzureFileVolumeSource", "v1.CephFSVolumeSource", "v1.CinderVolumeSource", "v1.FCVolumeSource", "v1.FlexVolumeSource", "v1.FlockerVolumeSource", "v1.GCEPersistentDiskVolumeSource", "v1.GlusterfsVolumeSource", "v1.HostPathVolumeSource", "v1.ISCSIVolumeSource", "v1.NFSVolumeSource", "v1.ObjectReference", "v1.PhotonPersistentDiskVolumeSource", "v1.QuobyteVolumeSource", "v1.RBDVolumeSource", "v1.VsphereVirtualDiskVolumeSource"}, }, "v1.PersistentVolumeStatus": { Schema: spec.Schema{ @@ -10700,6 +11800,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Pod is a collection of containers that can run on a host. This resource is created by clients and scheduled onto hosts.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -10842,6 +11956,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodAttachOptions is the query options to a Pod's remote attach call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "stdin": { SchemaProps: spec.SchemaProps{ Description: "Stdin if true, redirects the standard input stream of the pod for this call. Defaults to false.", @@ -10939,6 +12067,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodExecOptions is the query options to a Pod's remote exec call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "stdin": { SchemaProps: spec.SchemaProps{ Description: "Redirect the standard input stream of the pod for this call. Defaults to false.", @@ -10999,6 +12141,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodList is a list of Pods.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -11030,6 +12186,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodLogOptions is the query options for a Pod's logs REST call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "container": { SchemaProps: spec.SchemaProps{ Description: "The container for which to stream logs. Defaults to only container if there is one container in the pod.", @@ -11096,6 +12266,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodProxyOptions is the query options to a Pod's proxy call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "path": { SchemaProps: spec.SchemaProps{ Description: "Path is the URL path to use for the current proxy request to pod.", @@ -11415,6 +12599,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodStatusResult is a wrapper for PodStatus returned by kubelet that can be encode/decoded", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -11438,6 +12636,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodTemplate describes a template for creating copies of a predefined pod.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -11461,6 +12673,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodTemplateList is a list of PodTemplates.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -11595,6 +12821,24 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Probe describes a health check to be performed against a container to determine whether it is alive or ready to receive traffic.", Properties: map[string]spec.Schema{ + "exec": { + SchemaProps: spec.SchemaProps{ + Description: "One and only one of the following should be specified. Exec specifies the action to take.", + Ref: spec.MustCreateRef("#/definitions/v1.ExecAction"), + }, + }, + "httpGet": { + SchemaProps: spec.SchemaProps{ + Description: "HTTPGet specifies the http request to perform.", + Ref: spec.MustCreateRef("#/definitions/v1.HTTPGetAction"), + }, + }, + "tcpSocket": { + SchemaProps: spec.SchemaProps{ + Description: "TCPSocket specifies an action involving a TCP port. TCP hooks not yet supported", + Ref: spec.MustCreateRef("#/definitions/v1.TCPSocketAction"), + }, + }, "initialDelaySeconds": { SchemaProps: spec.SchemaProps{ Description: "Number of seconds after the container has started before liveness probes are initiated. More info: http://kubernetes.io/docs/user-guide/pod-states#container-probes", @@ -11633,7 +12877,8 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ }, }, }, - Dependencies: []string{}, + Dependencies: []string{ + "v1.ExecAction", "v1.HTTPGetAction", "v1.TCPSocketAction"}, }, "v1.QuobyteVolumeSource": { Schema: spec.Schema{ @@ -11760,6 +13005,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "RangeAllocation is not a public type.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -11792,6 +13051,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ReplicationController represents the configuration of a replication controller.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "If the Labels of a ReplicationController are empty, they are defaulted to be the same as the Pod(s) that the replication controller manages. Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -11867,6 +13140,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ReplicationControllerList is a collection of replication controllers.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -12035,6 +13322,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ResourceQuota sets aggregate quota restrictions enforced per namespace", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -12064,6 +13365,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ResourceQuotaList is a list of ResourceQuota items.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -12245,6 +13560,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Scale represents a scaling request for a resource.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", @@ -12316,6 +13645,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Secret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -12368,6 +13711,13 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "SecretKeySelector selects a key of a Secret.", Properties: map[string]spec.Schema{ + "name": { + SchemaProps: spec.SchemaProps{ + Description: "Name of the referent. More info: http://kubernetes.io/docs/user-guide/identifiers#names", + Type: []string{"string"}, + Format: "", + }, + }, "key": { SchemaProps: spec.SchemaProps{ Description: "The key of the secret to select from. Must be a valid secret key.", @@ -12386,6 +13736,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "SecretList is a list of Secret.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -12506,6 +13870,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "SerializedReference is a reference to serialized object.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "reference": { SchemaProps: spec.SchemaProps{ Description: "The reference to an object in the system.", @@ -12523,6 +13901,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Service is a named abstraction of software service (for example, mysql) consisting of local port (for example 3306) that the proxy listens on, and the selector that determines which pods will answer requests sent through the proxy.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -12552,6 +13944,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ServiceAccount binds together: * a name, understood by users, and perhaps by peripheral systems, for an identity * a principal that can be authenticated and authorized * a set of secrets", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -12595,6 +14001,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ServiceAccountList is a list of ServiceAccount objects", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -12626,6 +14046,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ServiceList holds a list of services.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -12703,6 +14137,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ServiceProxyOptions is the query options to a Service's proxy call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "path": { SchemaProps: spec.SchemaProps{ Description: "Path is the part of URLs that include service endpoints, suffixes, and parameters to use for the current proxy request to service. For example, the whole request URL is http://localhost/api/v1/namespaces/kube-system/services/elasticsearch-logging/_search?q=user:kimchy. Path is _search?q=user:kimchy.", @@ -12902,6 +14350,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "status": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.TestTypeStatus"), @@ -12917,6 +14379,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -13007,11 +14483,150 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Format: "", }, }, + "hostPath": { + SchemaProps: spec.SchemaProps{ + Description: "HostPath represents a pre-existing file or directory on the host machine that is directly exposed to the container. This is generally used for system agents or other privileged things that are allowed to see the host machine. Most containers will NOT need this. More info: http://kubernetes.io/docs/user-guide/volumes#hostpath", + Ref: spec.MustCreateRef("#/definitions/v1.HostPathVolumeSource"), + }, + }, + "emptyDir": { + SchemaProps: spec.SchemaProps{ + Description: "EmptyDir represents a temporary directory that shares a pod's lifetime. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir", + Ref: spec.MustCreateRef("#/definitions/v1.EmptyDirVolumeSource"), + }, + }, + "gcePersistentDisk": { + SchemaProps: spec.SchemaProps{ + Description: "GCEPersistentDisk represents a GCE Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://kubernetes.io/docs/user-guide/volumes#gcepersistentdisk", + Ref: spec.MustCreateRef("#/definitions/v1.GCEPersistentDiskVolumeSource"), + }, + }, + "awsElasticBlockStore": { + SchemaProps: spec.SchemaProps{ + Description: "AWSElasticBlockStore represents an AWS Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://kubernetes.io/docs/user-guide/volumes#awselasticblockstore", + Ref: spec.MustCreateRef("#/definitions/v1.AWSElasticBlockStoreVolumeSource"), + }, + }, + "gitRepo": { + SchemaProps: spec.SchemaProps{ + Description: "GitRepo represents a git repository at a particular revision.", + Ref: spec.MustCreateRef("#/definitions/v1.GitRepoVolumeSource"), + }, + }, + "secret": { + SchemaProps: spec.SchemaProps{ + Description: "Secret represents a secret that should populate this volume. More info: http://kubernetes.io/docs/user-guide/volumes#secrets", + Ref: spec.MustCreateRef("#/definitions/v1.SecretVolumeSource"), + }, + }, + "nfs": { + SchemaProps: spec.SchemaProps{ + Description: "NFS represents an NFS mount on the host that shares a pod's lifetime More info: http://kubernetes.io/docs/user-guide/volumes#nfs", + Ref: spec.MustCreateRef("#/definitions/v1.NFSVolumeSource"), + }, + }, + "iscsi": { + SchemaProps: spec.SchemaProps{ + Description: "ISCSI represents an ISCSI Disk resource that is attached to a kubelet's host machine and then exposed to the pod. More info: http://releases.k8s.io/HEAD/examples/volumes/iscsi/README.md", + Ref: spec.MustCreateRef("#/definitions/v1.ISCSIVolumeSource"), + }, + }, + "glusterfs": { + SchemaProps: spec.SchemaProps{ + Description: "Glusterfs represents a Glusterfs mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/glusterfs/README.md", + Ref: spec.MustCreateRef("#/definitions/v1.GlusterfsVolumeSource"), + }, + }, + "persistentVolumeClaim": { + SchemaProps: spec.SchemaProps{ + Description: "PersistentVolumeClaimVolumeSource represents a reference to a PersistentVolumeClaim in the same namespace. More info: http://kubernetes.io/docs/user-guide/persistent-volumes#persistentvolumeclaims", + Ref: spec.MustCreateRef("#/definitions/v1.PersistentVolumeClaimVolumeSource"), + }, + }, + "rbd": { + SchemaProps: spec.SchemaProps{ + Description: "RBD represents a Rados Block Device mount on the host that shares a pod's lifetime. More info: http://releases.k8s.io/HEAD/examples/volumes/rbd/README.md", + Ref: spec.MustCreateRef("#/definitions/v1.RBDVolumeSource"), + }, + }, + "flexVolume": { + SchemaProps: spec.SchemaProps{ + Description: "FlexVolume represents a generic volume resource that is provisioned/attached using an exec based plugin. This is an alpha feature and may change in future.", + Ref: spec.MustCreateRef("#/definitions/v1.FlexVolumeSource"), + }, + }, + "cinder": { + SchemaProps: spec.SchemaProps{ + Description: "Cinder represents a cinder volume attached and mounted on kubelets host machine More info: http://releases.k8s.io/HEAD/examples/mysql-cinder-pd/README.md", + Ref: spec.MustCreateRef("#/definitions/v1.CinderVolumeSource"), + }, + }, + "cephfs": { + SchemaProps: spec.SchemaProps{ + Description: "CephFS represents a Ceph FS mount on the host that shares a pod's lifetime", + Ref: spec.MustCreateRef("#/definitions/v1.CephFSVolumeSource"), + }, + }, + "flocker": { + SchemaProps: spec.SchemaProps{ + Description: "Flocker represents a Flocker volume attached to a kubelet's host machine. This depends on the Flocker control service being running", + Ref: spec.MustCreateRef("#/definitions/v1.FlockerVolumeSource"), + }, + }, + "downwardAPI": { + SchemaProps: spec.SchemaProps{ + Description: "DownwardAPI represents downward API about the pod that should populate this volume", + Ref: spec.MustCreateRef("#/definitions/v1.DownwardAPIVolumeSource"), + }, + }, + "fc": { + SchemaProps: spec.SchemaProps{ + Description: "FC represents a Fibre Channel resource that is attached to a kubelet's host machine and then exposed to the pod.", + Ref: spec.MustCreateRef("#/definitions/v1.FCVolumeSource"), + }, + }, + "azureFile": { + SchemaProps: spec.SchemaProps{ + Description: "AzureFile represents an Azure File Service mount on the host and bind mount to the pod.", + Ref: spec.MustCreateRef("#/definitions/v1.AzureFileVolumeSource"), + }, + }, + "configMap": { + SchemaProps: spec.SchemaProps{ + Description: "ConfigMap represents a configMap that should populate this volume", + Ref: spec.MustCreateRef("#/definitions/v1.ConfigMapVolumeSource"), + }, + }, + "vsphereVolume": { + SchemaProps: spec.SchemaProps{ + Description: "VsphereVolume represents a vSphere volume attached and mounted on kubelets host machine", + Ref: spec.MustCreateRef("#/definitions/v1.VsphereVirtualDiskVolumeSource"), + }, + }, + "quobyte": { + SchemaProps: spec.SchemaProps{ + Description: "Quobyte represents a Quobyte mount on the host that shares a pod's lifetime", + Ref: spec.MustCreateRef("#/definitions/v1.QuobyteVolumeSource"), + }, + }, + "azureDisk": { + SchemaProps: spec.SchemaProps{ + Description: "AzureDisk represents an Azure Data Disk mount on the host and bind mount to the pod.", + Ref: spec.MustCreateRef("#/definitions/v1.AzureDiskVolumeSource"), + }, + }, + "photonPersistentDisk": { + SchemaProps: spec.SchemaProps{ + Description: "PhotonPersistentDisk represents a PhotonController persistent disk attached and mounted on kubelets host machine", + Ref: spec.MustCreateRef("#/definitions/v1.PhotonPersistentDiskVolumeSource"), + }, + }, }, Required: []string{"name"}, }, }, - Dependencies: []string{}, + Dependencies: []string{ + "v1.AWSElasticBlockStoreVolumeSource", "v1.AzureDiskVolumeSource", "v1.AzureFileVolumeSource", "v1.CephFSVolumeSource", "v1.CinderVolumeSource", "v1.ConfigMapVolumeSource", "v1.DownwardAPIVolumeSource", "v1.EmptyDirVolumeSource", "v1.FCVolumeSource", "v1.FlexVolumeSource", "v1.FlockerVolumeSource", "v1.GCEPersistentDiskVolumeSource", "v1.GitRepoVolumeSource", "v1.GlusterfsVolumeSource", "v1.HostPathVolumeSource", "v1.ISCSIVolumeSource", "v1.NFSVolumeSource", "v1.PersistentVolumeClaimVolumeSource", "v1.PhotonPersistentDiskVolumeSource", "v1.QuobyteVolumeSource", "v1.RBDVolumeSource", "v1.SecretVolumeSource", "v1.VsphereVirtualDiskVolumeSource"}, }, "v1.VolumeMount": { Schema: spec.Schema{ @@ -13256,6 +14871,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Describes a certificate signing request", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.ObjectMeta"), @@ -13321,6 +14950,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -13424,6 +15067,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ClusterRole is a cluster level, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding or ClusterRoleBinding.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata.", @@ -13455,6 +15112,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ClusterRoleBinding references a ClusterRole, but not contain it. It can reference a ClusterRole in the global namespace, and adds who information via Subject.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata.", @@ -13492,6 +15163,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ClusterRoleBindingList is a collection of ClusterRoleBindings", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata.", @@ -13523,6 +15208,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ClusterRoleList is a collection of ClusterRoles", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata.", @@ -13554,6 +15253,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ImageReview checks if the set of images in a pod are allowed.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.ObjectMeta"), @@ -15022,6 +16735,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Role is a namespaced, logical grouping of PolicyRules that can be referenced as a unit by a RoleBinding.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata.", @@ -15053,6 +16780,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "RoleBinding references a role, but does not contain it. It can reference a Role in the same namespace or a ClusterRole in the global namespace. It adds who information via Subjects and namespace information by which namespace it exists in. RoleBindings in a given namespace only have effect in that namespace.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata.", @@ -15090,6 +16831,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "RoleBindingList is a collection of RoleBindings", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata.", @@ -15121,6 +16876,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "RoleList is a collection of Roles", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata.", @@ -15257,6 +17026,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Information about a registered cluster in a federated kubernetes setup. Clusters are not namespaced and have unique names in the federation.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -15338,6 +17121,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "A list of all the kubernetes clusters registered to the federation", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -15540,6 +17337,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "DaemonSet represents the configuration of a daemon set.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -15569,6 +17380,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "DaemonSetList is a collection of daemon sets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -15663,6 +17488,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Deployment enables declarative updates for Pods and ReplicaSets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata.", @@ -15744,6 +17583,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "DeploymentList is a list of Deployments.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata.", @@ -15775,6 +17628,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "DeploymentRollback stores the information required to rollback a deployment.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "name": { SchemaProps: spec.SchemaProps{ Description: "Required: This must match the Name of a deployment.", @@ -15968,6 +17835,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Eviction evicts a pod from its node subject to certain policies and safety constraints. This is a subresource of Pod. A request to cause such an eviction is created by POSTing to .../pods//evictions.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "ObjectMeta describes the pod that is being evicted.", @@ -15991,6 +17872,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ExportOptions is the query options to the standard REST get call.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "export": { SchemaProps: spec.SchemaProps{ Description: "Should this value be exported. Export strips fields that a user can not specify.", @@ -16097,6 +17992,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "configuration of a horizontal pod autoscaler.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -16126,6 +18035,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "list of horizontal pod autoscaler objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata.", @@ -16291,6 +18214,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -16345,6 +18282,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "IngressList is a collection of Ingress.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -16383,10 +18334,16 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Format: "", }, }, + "http": { + SchemaProps: spec.SchemaProps{ + Ref: spec.MustCreateRef("#/definitions/v1beta1.HTTPIngressRuleValue"), + }, + }, }, }, }, - Dependencies: []string{}, + Dependencies: []string{ + "v1beta1.HTTPIngressRuleValue"}, }, "v1beta1.IngressRuleValue": { Schema: spec.Schema{ @@ -16500,6 +18457,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Job represents the configuration of a single job. DEPRECATED: extensions/v1beta1.Job is deprecated, use batch/v1.Job instead.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -16581,6 +18552,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "JobList is a collection of jobs. DEPRECATED: extensions/v1beta1.JobList is deprecated, use batch/v1.JobList instead.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -16721,6 +18706,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions checking.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.ObjectMeta"), @@ -16749,6 +18748,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -16809,6 +18822,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Network Policy List is a list of NetworkPolicy objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -16939,6 +18966,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodDisruptionBudget is an object to define the max disruption that can be caused to a collection of pods", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.ObjectMeta"), @@ -16967,6 +19008,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "PodDisruptionBudgetList is a collection of PodDisruptionBudgets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -17079,6 +19134,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Pod Security Policy governs the ability to make requests that affect the Security Context that will be applied to a pod and container.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -17102,6 +19171,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Pod Security Policy List is a list of PodSecurityPolicy objects.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -17273,6 +19356,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ReplicaSet represents the configuration of a ReplicaSet.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "If the Labels of a ReplicaSet are empty, they are defaulted to be the same as the Pod(s) that the ReplicaSet manages. Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -17348,6 +19445,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ReplicaSetList is a collection of ReplicaSets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", @@ -17475,7 +19586,22 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ Schema: spec.Schema{ SchemaProps: spec.SchemaProps{ Description: "Dummy definition", - Properties: map[string]spec.Schema{}, + Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, + }, }, }, Dependencies: []string{}, @@ -17640,6 +19766,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "represents a scaling request for a resource.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata; More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata.", @@ -17725,6 +19865,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "SelfSubjectAccessReview checks whether or the current user can perform an action. Not filling in a spec.namespace means \"in all namespaces\". Self is a special case, because users should always be able to check whether they can perform an action", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.ObjectMeta"), @@ -17802,6 +19956,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "StatefulSet represents a set of pods with consistent identities. Identities are defined as:\n - Network: A single stable DNS and hostname.\n - Storage: As many VolumeClaims as requested.\nThe StatefulSet guarantees that a given network identity will always map to the same storage identity.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.ObjectMeta"), @@ -17830,6 +19998,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "StatefulSetList is a collection of StatefulSets.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/unversioned.ListMeta"), @@ -17935,6 +20117,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "StorageClass describes the parameters for a class of storage for which PersistentVolumes can be dynamically provisioned.\n\nStorageClasses are non-namespaced; the name of the storage class according to etcd is in ObjectMeta.Name.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -17974,6 +20170,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "StorageClassList is a collection of storage classes.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -18005,6 +20215,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "SubjectAccessReview checks whether or not a user or group can perform an action.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.ObjectMeta"), @@ -18200,6 +20424,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "A ThirdPartyResource is a generic representation of a resource, it is used by add-ons and plugins to add new resource types to the API. It consists of one or more Versions of the api.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata", @@ -18237,6 +20475,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "An internal object, used for versioned storage in etcd. Not exposed to the end user.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object metadata.", @@ -18261,6 +20513,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ThirdPartyResrouceDataList is a list of ThirdPartyResourceData.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -18292,6 +20558,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "ThirdPartyResourceList is a list of ThirdPartyResources.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata.", @@ -18323,6 +20603,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "TokenReview attempts to authenticate a token to a known user. Note: TokenReview requests may be cached by the webhook token authenticator plugin in the kube-apiserver.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Ref: spec.MustCreateRef("#/definitions/v1.ObjectMeta"), @@ -18459,6 +20753,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "CronJob represents the configuration of a single cron job.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -18488,6 +20796,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "CronJobList is a collection of cron jobs.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -18595,6 +20917,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "Job represents the configuration of a single job.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -18676,6 +21012,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "JobList is a collection of jobs.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard list metadata More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", @@ -18816,6 +21166,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{ SchemaProps: spec.SchemaProps{ Description: "JobTemplate describes a template for creating copies of a predefined pod.", Properties: map[string]spec.Schema{ + "kind": { + SchemaProps: spec.SchemaProps{ + Description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds", + Type: []string{"string"}, + Format: "", + }, + }, + "apiVersion": { + SchemaProps: spec.SchemaProps{ + Description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources", + Type: []string{"string"}, + Format: "", + }, + }, "metadata": { SchemaProps: spec.SchemaProps{ Description: "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata", diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/runtime/api.pb.go b/vendor/k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/runtime/api.pb.go index ec3d90b5b9..6bc7048eb6 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/runtime/api.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/runtime/api.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/eviction/BUILD b/vendor/k8s.io/kubernetes/pkg/kubelet/eviction/BUILD index 0d3bf2663b..86863442de 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/eviction/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/eviction/BUILD @@ -27,6 +27,7 @@ go_library( "//pkg/kubelet/api/v1alpha1/stats:go_default_library", "//pkg/kubelet/cm:go_default_library", "//pkg/kubelet/lifecycle:go_default_library", + "//pkg/kubelet/pod:go_default_library", "//pkg/kubelet/qos:go_default_library", "//pkg/kubelet/server/stats:go_default_library", "//pkg/kubelet/util/format:go_default_library", @@ -53,6 +54,7 @@ go_test( "//pkg/client/record:go_default_library", "//pkg/kubelet/api/v1alpha1/stats:go_default_library", "//pkg/kubelet/lifecycle:go_default_library", + "//pkg/kubelet/types:go_default_library", "//pkg/quota:go_default_library", "//pkg/types:go_default_library", "//pkg/util/clock:go_default_library", diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/eviction/eviction_manager.go b/vendor/k8s.io/kubernetes/pkg/kubelet/eviction/eviction_manager.go index b261cfdf12..dfcc2d411e 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/eviction/eviction_manager.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/eviction/eviction_manager.go @@ -28,8 +28,10 @@ import ( "k8s.io/kubernetes/pkg/client/record" "k8s.io/kubernetes/pkg/kubelet/cm" "k8s.io/kubernetes/pkg/kubelet/lifecycle" + kubepod "k8s.io/kubernetes/pkg/kubelet/pod" "k8s.io/kubernetes/pkg/kubelet/qos" "k8s.io/kubernetes/pkg/kubelet/server/stats" + kubetypes "k8s.io/kubernetes/pkg/kubelet/types" "k8s.io/kubernetes/pkg/kubelet/util/format" "k8s.io/kubernetes/pkg/util/clock" "k8s.io/kubernetes/pkg/util/wait" @@ -108,7 +110,7 @@ func (m *managerImpl) Admit(attrs *lifecycle.PodAdmitAttributes) lifecycle.PodAd // the node has memory pressure, admit if not best-effort if hasNodeCondition(m.nodeConditions, api.NodeMemoryPressure) { notBestEffort := qos.BestEffort != qos.GetPodQOS(attrs.Pod) - if notBestEffort { + if notBestEffort || kubetypes.IsCriticalPod(attrs.Pod) { return lifecycle.PodAdmitResult{Admit: true} } } @@ -311,6 +313,15 @@ func (m *managerImpl) synchronize(diskInfoProvider DiskInfoProvider, podFunc Act // we kill at most a single pod during each eviction interval for i := range activePods { pod := activePods[i] + if kubepod.IsStaticPod(pod) { + // The eviction manager doesn't evict static pods. To stop a static + // pod, the admin needs to remove the manifest from kubelet's + // --config directory. + // TODO(39124): This is a short term fix, we can't assume static pods + // are always well behaved. + glog.Infof("eviction manager: NOT evicting static pod %v", pod.Name) + continue + } status := api.PodStatus{ Phase: api.PodFailed, Message: fmt.Sprintf(message, resourceToReclaim), diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/images/image_gc_manager.go b/vendor/k8s.io/kubernetes/pkg/kubelet/images/image_gc_manager.go index c17c874127..831d47e789 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/images/image_gc_manager.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/images/image_gc_manager.go @@ -89,6 +89,31 @@ type realImageGCManager struct { // Track initialization initialized bool + + // imageCache is the cache of latest image list. + imageCache imageCache +} + +// imageCache caches latest result of ListImages. +type imageCache struct { + // sync.RWMutex is the mutex protects the image cache. + sync.RWMutex + // images is the image cache. + images []kubecontainer.Image +} + +// set updates image cache. +func (i *imageCache) set(images []kubecontainer.Image) { + i.Lock() + defer i.Unlock() + i.images = images +} + +// get gets image list from image cache. +func (i *imageCache) get() []kubecontainer.Image { + i.RLock() + defer i.RUnlock() + return i.images } // Information about the images we track. @@ -142,16 +167,23 @@ func (im *realImageGCManager) Start() error { } }, 5*time.Minute, wait.NeverStop) + // Start a goroutine periodically updates image cache. + // TODO(random-liu): Merge this with the previous loop. + go wait.Until(func() { + images, err := im.runtime.ListImages() + if err != nil { + glog.Warningf("[imageGCManager] Failed to update image list: %v", err) + } else { + im.imageCache.set(images) + } + }, 30*time.Second, wait.NeverStop) + return nil } // Get a list of images on this node func (im *realImageGCManager) GetImageList() ([]kubecontainer.Image, error) { - images, err := im.runtime.ListImages() - if err != nil { - return nil, err - } - return images, nil + return im.imageCache.get(), nil } func (im *realImageGCManager) detectImages(detectTime time.Time) error { diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/kubelet.go b/vendor/k8s.io/kubernetes/pkg/kubelet/kubelet.go index 1703c731cd..9c9bcf651a 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/kubelet.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/kubelet.go @@ -1909,8 +1909,21 @@ func (kl *Kubelet) handleMirrorPod(mirrorPod *api.Pod, start time.Time) { // a config source. func (kl *Kubelet) HandlePodAdditions(pods []*api.Pod) { start := kl.clock.Now() - sort.Sort(sliceutils.PodsByCreationTime(pods)) - for _, pod := range pods { + + // Pass critical pods through admission check first. + var criticalPods []*api.Pod + var nonCriticalPods []*api.Pod + for _, p := range pods { + if kubetypes.IsCriticalPod(p) { + criticalPods = append(criticalPods, p) + } else { + nonCriticalPods = append(nonCriticalPods, p) + } + } + sort.Sort(sliceutils.PodsByCreationTime(criticalPods)) + sort.Sort(sliceutils.PodsByCreationTime(nonCriticalPods)) + + for _, pod := range append(criticalPods, nonCriticalPods...) { existingPods := kl.podManager.GetPods() // Always add the pod to the pod manager. Kubelet relies on the pod // manager as the source of truth for the desired state. If a pod does diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/qos/policy.go b/vendor/k8s.io/kubernetes/pkg/kubelet/qos/policy.go index 7c142f5cd1..818268a41b 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/qos/policy.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/qos/policy.go @@ -18,6 +18,7 @@ package qos import ( "k8s.io/kubernetes/pkg/api" + kubetypes "k8s.io/kubernetes/pkg/kubelet/types" ) const ( @@ -25,7 +26,10 @@ const ( // sense to set sandbox level oom score, e.g. a sandbox could only be a namespace // without a process. // TODO: Handle infra container oom score adj in a runtime agnostic way. + // TODO: Should handle critical pod oom score adj with a proper preemption priority. + // This is the workaround for https://github.com/kubernetes/kubernetes/issues/38322. PodInfraOOMAdj int = -998 + CriticalPodOOMAdj int = -998 KubeletOOMScoreAdj int = -999 DockerOOMScoreAdj int = -999 KubeProxyOOMScoreAdj int = -999 @@ -40,6 +44,10 @@ const ( // and 1000. Containers with higher OOM scores are killed if the system runs out of memory. // See https://lwn.net/Articles/391222/ for more information. func GetContainerOOMScoreAdjust(pod *api.Pod, container *api.Container, memoryCapacity int64) int { + if kubetypes.IsCriticalPod(pod) { + return CriticalPodOOMAdj + } + switch GetPodQOS(pod) { case Guaranteed: // Guaranteed containers should be the last to get killed. diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/types/pod_update.go b/vendor/k8s.io/kubernetes/pkg/kubelet/types/pod_update.go index e98489df6b..229eefd0a4 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/types/pod_update.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/types/pod_update.go @@ -27,6 +27,15 @@ const ConfigMirrorAnnotationKey = "kubernetes.io/config.mirror" const ConfigFirstSeenAnnotationKey = "kubernetes.io/config.seen" const ConfigHashAnnotationKey = "kubernetes.io/config.hash" +// This key needs to sync with the key used by the rescheduler, which currently +// lives in contrib. Its presence indicates 2 things, as far as the kubelet is +// concerned: +// 1. Resource related admission checks will prioritize the admission of +// pods bearing the key, over pods without the key, regardless of QoS. +// 2. The OOM score of pods bearing the key will be <= pods without +// the key (where the <= part is determied by QoS). +const CriticalPodAnnotationKey = "scheduler.alpha.kubernetes.io/critical-pod" + // PodOperation defines what changes will be made on a pod configuration. type PodOperation int @@ -131,3 +140,11 @@ func (sp SyncPodType) String() string { return "unknown" } } + +// IsCriticalPod returns true if the pod bears the critical pod annotation +// key. Both the rescheduler and the kubelet use this key to make admission +// and scheduling decisions. +func IsCriticalPod(pod *api.Pod) bool { + _, ok := pod.Annotations[CriticalPodAnnotationKey] + return ok +} diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go b/vendor/k8s.io/kubernetes/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go index 888cf9c343..d1ca0c995c 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/volumemanager/populator/desired_state_of_world_populator.go @@ -160,6 +160,9 @@ func (dswp *desiredStateOfWorldPopulator) findAndRemoveDeletedPods() { } // Skip non-memory backed volumes belonging to terminated pods volume := volumeToMount.VolumeSpec.Volume + if volume == nil { + continue + } if (volume.EmptyDir == nil || volume.EmptyDir.Medium != api.StorageMediumMemory) && volume.ConfigMap == nil && volume.Secret == nil { continue diff --git a/vendor/k8s.io/kubernetes/pkg/kubelet/volumemanager/volume_manager.go b/vendor/k8s.io/kubernetes/pkg/kubelet/volumemanager/volume_manager.go index f70590e134..2a3129d9e5 100644 --- a/vendor/k8s.io/kubernetes/pkg/kubelet/volumemanager/volume_manager.go +++ b/vendor/k8s.io/kubernetes/pkg/kubelet/volumemanager/volume_manager.go @@ -357,8 +357,8 @@ func (vm *volumeManager) WaitForAttachAndMount(pod *api.Pod) error { return fmt.Errorf( "timeout expired waiting for volumes to attach/mount for pod %q/%q. list of unattached/unmounted volumes=%v", - pod.Name, pod.Namespace, + pod.Name, ummountedVolumes) } diff --git a/vendor/k8s.io/kubernetes/pkg/master/thirdparty/thirdparty.go b/vendor/k8s.io/kubernetes/pkg/master/thirdparty/thirdparty.go index 55d8c7acef..3f7ae497d1 100644 --- a/vendor/k8s.io/kubernetes/pkg/master/thirdparty/thirdparty.go +++ b/vendor/k8s.io/kubernetes/pkg/master/thirdparty/thirdparty.go @@ -281,6 +281,7 @@ func (m *ThirdPartyResourceServer) InstallThirdPartyResource(rsrc *extensions.Th m.genericAPIServer.HandlerContainer.Add(apiserver.NewGroupWebService(api.Codecs, path, apiGroup)) m.addThirdPartyResourceStorage(path, plural.Resource, thirdparty.Storage[plural.Resource].(*thirdpartyresourcedataetcd.REST), apiGroup) + registered.AddThirdPartyAPIGroupVersions(unversioned.GroupVersion{Group: group, Version: rsrc.Versions[0].Name}) return nil } diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/BUILD b/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/BUILD index e3202b30a9..ae7aac6a52 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/BUILD @@ -28,5 +28,5 @@ go_test( ], library = "go_default_library", tags = ["automanaged"], - deps = [], + deps = ["//vendor:k8s.io/client-go/pkg/util/sets"], ) diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/bitmap.go b/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/bitmap.go index 9394d59fc3..225e859740 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/bitmap.go +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/bitmap.go @@ -124,6 +124,33 @@ func (r *AllocationBitmap) Release(offset int) error { return nil } +const ( + // Find the size of a big.Word in bytes. + notZero = uint64(^big.Word(0)) + wordPower = (notZero>>8)&1 + (notZero>>16)&1 + (notZero>>32)&1 + wordSize = 1 << wordPower +) + +// ForEach calls the provided function for each allocated bit. The +// AllocationBitmap may not be modified while this loop is running. +func (r *AllocationBitmap) ForEach(fn func(int)) { + r.lock.Lock() + defer r.lock.Unlock() + + words := r.allocated.Bits() + for wordIdx, word := range words { + bit := 0 + for word > 0 { + if (word & 1) != 0 { + fn((wordIdx * wordSize * 8) + bit) + word = word &^ 1 + } + bit++ + word = word >> 1 + } + } +} + // Has returns true if the provided item is already allocated and a call // to Allocate(offset) would fail. func (r *AllocationBitmap) Has(offset int) bool { diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/etcd/etcd.go b/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/etcd/etcd.go index 80985d0340..7105352698 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/etcd/etcd.go +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/etcd/etcd.go @@ -144,6 +144,12 @@ func (e *Etcd) Release(item int) error { }) } +func (e *Etcd) ForEach(fn func(int)) { + e.lock.Lock() + defer e.lock.Unlock() + e.alloc.ForEach(fn) +} + // tryUpdate performs a read-update to persist the latest snapshot state of allocation. func (e *Etcd) tryUpdate(fn func() error) error { err := e.storage.GuaranteedUpdate(context.TODO(), e.baseKey, &api.RangeAllocation{}, true, nil, diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/interfaces.go b/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/interfaces.go index 88231dafc1..0d18feff20 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/interfaces.go +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/allocator/interfaces.go @@ -22,6 +22,7 @@ type Interface interface { Allocate(int) (bool, error) AllocateNext() (int, bool, error) Release(int) error + ForEach(func(int)) // For testing Has(int) bool diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/ipallocator/allocator.go b/vendor/k8s.io/kubernetes/pkg/registry/core/service/ipallocator/allocator.go index 85e0b5f679..7adb30101b 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/ipallocator/allocator.go +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/ipallocator/allocator.go @@ -32,6 +32,7 @@ type Interface interface { Allocate(net.IP) error AllocateNext() (net.IP, error) Release(net.IP) error + ForEach(func(net.IP)) } var ( @@ -89,6 +90,19 @@ func NewCIDRRange(cidr *net.IPNet) *Range { }) } +// NewFromSnapshot allocates a Range and initializes it from a snapshot. +func NewFromSnapshot(snap *api.RangeAllocation) (*Range, error) { + _, ipnet, err := net.ParseCIDR(snap.Range) + if err != nil { + return nil, err + } + r := NewCIDRRange(ipnet) + if err := r.Restore(ipnet, snap.Data); err != nil { + return nil, err + } + return r, nil +} + func maximum(a, b int) int { if a > b { return a @@ -101,6 +115,16 @@ func (r *Range) Free() int { return r.alloc.Free() } +// Used returns the count of IP addresses used in the range. +func (r *Range) Used() int { + return r.max - r.alloc.Free() +} + +// CIDR returns the CIDR covered by the range. +func (r *Range) CIDR() net.IPNet { + return *r.net +} + // Allocate attempts to reserve the provided IP. ErrNotInRange or // ErrAllocated will be returned if the IP is not valid for this range // or has already been reserved. ErrFull will be returned if there @@ -146,6 +170,14 @@ func (r *Range) Release(ip net.IP) error { return r.alloc.Release(offset) } +// ForEach calls the provided function for each allocated IP. +func (r *Range) ForEach(fn func(net.IP)) { + r.alloc.ForEach(func(offset int) { + ip, _ := GetIndexedIP(r.net, offset+1) // +1 because Range doesn't store IP 0 + fn(ip) + }) +} + // Has returns true if the provided IP is already allocated and a call // to Allocate(ip) would fail with ErrAllocated. func (r *Range) Has(ip net.IP) bool { diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/ipallocator/controller/repair.go b/vendor/k8s.io/kubernetes/pkg/registry/core/service/ipallocator/controller/repair.go index e06ef571ff..a3b19d1e9b 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/ipallocator/controller/repair.go +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/ipallocator/controller/repair.go @@ -51,8 +51,13 @@ type Repair struct { registry service.Registry network *net.IPNet alloc rangeallocation.RangeRegistry + leaks map[string]int // counter per leaked IP } +// How many times we need to detect a leak before we clean up. This is to +// avoid races between allocating an IP and using it. +const numRepairsBeforeLeakCleanup = 3 + // NewRepair creates a controller that periodically ensures that all clusterIPs are uniquely allocated across the cluster // and generates informational warnings for a cluster that is not in sync. func NewRepair(interval time.Duration, registry service.Registry, network *net.IPNet, alloc rangeallocation.RangeRegistry) *Repair { @@ -61,6 +66,7 @@ func NewRepair(interval time.Duration, registry service.Registry, network *net.I registry: registry, network: network, alloc: alloc, + leaks: map[string]int{}, } } @@ -89,19 +95,28 @@ func (c *Repair) runOnce() error { // If etcd server is not running we should wait for some time and fail only then. This is particularly // important when we start apiserver and etcd at the same time. - var latest *api.RangeAllocation - var err error - err = wait.PollImmediate(time.Second, 10*time.Second, func() (bool, error) { - latest, err = c.alloc.Get() + var snapshot *api.RangeAllocation + err := wait.PollImmediate(time.Second, 10*time.Second, func() (bool, error) { + var err error + snapshot, err = c.alloc.Get() return err == nil, err }) if err != nil { return fmt.Errorf("unable to refresh the service IP block: %v", err) } + // If not yet initialized. + if snapshot.Range == "" { + snapshot.Range = c.network.String() + } + // Create an allocator because it is easy to use. + stored, err := ipallocator.NewFromSnapshot(snapshot) + if err != nil { + return fmt.Errorf("unable to rebuild allocator from snapshot: %v", err) + } ctx := api.WithNamespace(api.NewDefaultContext(), api.NamespaceAll) // We explicitly send no resource version, since the resource version - // of 'latest' is from a different collection, it's not comparable to + // of 'snapshot' is from a different collection, it's not comparable to // the service collection. The caching layer keeps per-collection RVs, // and this is proper, since in theory the collections could be hosted // in separate etcd (or even non-etcd) instances. @@ -110,40 +125,73 @@ func (c *Repair) runOnce() error { return fmt.Errorf("unable to refresh the service IP block: %v", err) } - r := ipallocator.NewCIDRRange(c.network) + rebuilt := ipallocator.NewCIDRRange(c.network) + // Check every Service's ClusterIP, and rebuild the state as we think it should be. for _, svc := range list.Items { if !api.IsServiceIPSet(&svc) { + // didn't need a cluster IP continue } ip := net.ParseIP(svc.Spec.ClusterIP) if ip == nil { - // cluster IP is broken, reallocate + // cluster IP is corrupt runtime.HandleError(fmt.Errorf("the cluster IP %s for service %s/%s is not a valid IP; please recreate", svc.Spec.ClusterIP, svc.Name, svc.Namespace)) continue } - switch err := r.Allocate(ip); err { + // mark it as in-use + switch err := rebuilt.Allocate(ip); err { case nil: + if stored.Has(ip) { + // remove it from the old set, so we can find leaks + stored.Release(ip) + } else { + // cluster IP doesn't seem to be allocated + runtime.HandleError(fmt.Errorf("the cluster IP %s for service %s/%s is not allocated; repairing", svc.Spec.ClusterIP, svc.Name, svc.Namespace)) + } + delete(c.leaks, ip.String()) // it is used, so it can't be leaked case ipallocator.ErrAllocated: // TODO: send event - // cluster IP is broken, reallocate + // cluster IP is duplicate runtime.HandleError(fmt.Errorf("the cluster IP %s for service %s/%s was assigned to multiple services; please recreate", ip, svc.Name, svc.Namespace)) case ipallocator.ErrNotInRange: // TODO: send event - // cluster IP is broken, reallocate + // cluster IP is out of range runtime.HandleError(fmt.Errorf("the cluster IP %s for service %s/%s is not within the service CIDR %s; please recreate", ip, svc.Name, svc.Namespace, c.network)) case ipallocator.ErrFull: // TODO: send event - return fmt.Errorf("the service CIDR %v is full; you must widen the CIDR in order to create new services", r) + // somehow we are out of IPs + return fmt.Errorf("the service CIDR %v is full; you must widen the CIDR in order to create new services", rebuilt) default: return fmt.Errorf("unable to allocate cluster IP %s for service %s/%s due to an unknown error, exiting: %v", ip, svc.Name, svc.Namespace, err) } } - if err := r.Snapshot(latest); err != nil { + // Check for IPs that are left in the old set. They appear to have been leaked. + stored.ForEach(func(ip net.IP) { + count, found := c.leaks[ip.String()] + switch { + case !found: + // flag it to be cleaned up after any races (hopefully) are gone + runtime.HandleError(fmt.Errorf("the cluster IP %s may have leaked: flagging for later clean up", ip)) + count = numRepairsBeforeLeakCleanup - 1 + fallthrough + case count > 0: + // pretend it is still in use until count expires + c.leaks[ip.String()] = count - 1 + if err := rebuilt.Allocate(ip); err != nil { + runtime.HandleError(fmt.Errorf("the cluster IP %s may have leaked, but can not be allocated: %v", ip, err)) + } + default: + // do not add it to the rebuilt set, which means it will be available for reuse + runtime.HandleError(fmt.Errorf("the cluster IP %s appears to have leaked: cleaning up", ip)) + } + }) + + // Blast the rebuilt state into storage. + if err := rebuilt.Snapshot(snapshot); err != nil { return fmt.Errorf("unable to snapshot the updated service IP allocations: %v", err) } - - if err := c.alloc.CreateOrUpdate(latest); err != nil { + if err := c.alloc.CreateOrUpdate(snapshot); err != nil { if errors.IsConflict(err) { return err } diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/allocator.go b/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/allocator.go index 8e3d42be08..d066fe2d57 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/allocator.go +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/allocator.go @@ -33,6 +33,7 @@ type Interface interface { Allocate(int) error AllocateNext() (int, error) Release(int) error + ForEach(func(int)) } var ( @@ -77,11 +78,29 @@ func NewPortAllocator(pr net.PortRange) *PortAllocator { }) } +// NewFromSnapshot allocates a PortAllocator and initializes it from a snapshot. +func NewFromSnapshot(snap *api.RangeAllocation) (*PortAllocator, error) { + pr, err := net.ParsePortRange(snap.Range) + if err != nil { + return nil, err + } + r := NewPortAllocator(*pr) + if err := r.Restore(*pr, snap.Data); err != nil { + return nil, err + } + return r, nil +} + // Free returns the count of port left in the range. func (r *PortAllocator) Free() int { return r.alloc.Free() } +// Used returns the count of ports used in the range. +func (r *PortAllocator) Used() int { + return r.portRange.Size - r.alloc.Free() +} + // Allocate attempts to reserve the provided port. ErrNotInRange or // ErrAllocated will be returned if the port is not valid for this range // or has already been reserved. ErrFull will be returned if there @@ -117,6 +136,13 @@ func (r *PortAllocator) AllocateNext() (int, error) { return r.portRange.Base + offset, nil } +// ForEach calls the provided function for each allocated port. +func (r *PortAllocator) ForEach(fn func(int)) { + r.alloc.ForEach(func(offset int) { + fn(r.portRange.Base + offset) + }) +} + // Release releases the port back to the pool. Releasing an // unallocated port or a port out of the range is a no-op and // returns no error. diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller/BUILD b/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller/BUILD index 6f4b703797..eed13e911d 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller/BUILD @@ -8,6 +8,7 @@ load( "go_library", "go_test", "cgo_library", + "go_test", ) go_library( @@ -26,3 +27,16 @@ go_library( "//pkg/util/wait:go_default_library", ], ) + +go_test( + name = "go_default_test", + srcs = ["repair_test.go"], + library = "go_default_library", + tags = ["automanaged"], + deps = [ + "//pkg/api:go_default_library", + "//pkg/client/clientset_generated/internalclientset/fake:go_default_library", + "//pkg/registry/core/service/portallocator:go_default_library", + "//pkg/util/net:go_default_library", + ], +) diff --git a/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller/repair.go b/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller/repair.go index 5ad15c3294..843dc156a6 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller/repair.go +++ b/vendor/k8s.io/kubernetes/pkg/registry/core/service/portallocator/controller/repair.go @@ -37,8 +37,13 @@ type Repair struct { registry service.Registry portRange net.PortRange alloc rangeallocation.RangeRegistry + leaks map[int]int // counter per leaked port } +// How many times we need to detect a leak before we clean up. This is to +// avoid races between allocating a ports and using it. +const numRepairsBeforeLeakCleanup = 3 + // NewRepair creates a controller that periodically ensures that all ports are uniquely allocated across the cluster // and generates informational warnings for a cluster that is not in sync. func NewRepair(interval time.Duration, registry service.Registry, portRange net.PortRange, alloc rangeallocation.RangeRegistry) *Repair { @@ -47,6 +52,7 @@ func NewRepair(interval time.Duration, registry service.Registry, portRange net. registry: registry, portRange: portRange, alloc: alloc, + leaks: map[int]int{}, } } @@ -75,22 +81,29 @@ func (c *Repair) runOnce() error { // If etcd server is not running we should wait for some time and fail only then. This is particularly // important when we start apiserver and etcd at the same time. - var latest *api.RangeAllocation - var err error - for i := 0; i < 10; i++ { - if latest, err = c.alloc.Get(); err != nil { - time.Sleep(time.Second) - } else { - break - } - } + var snapshot *api.RangeAllocation + + err := wait.PollImmediate(time.Second, 10*time.Second, func() (bool, error) { + var err error + snapshot, err = c.alloc.Get() + return err == nil, err + }) if err != nil { - return fmt.Errorf("unable to refresh the port block: %v", err) + return fmt.Errorf("unable to refresh the port allocations: %v", err) + } + // If not yet initialized. + if snapshot.Range == "" { + snapshot.Range = c.portRange.String() + } + // Create an allocator because it is easy to use. + stored, err := portallocator.NewFromSnapshot(snapshot) + if err != nil { + return fmt.Errorf("unable to rebuild allocator from snapshot: %v", err) } ctx := api.WithNamespace(api.NewDefaultContext(), api.NamespaceAll) // We explicitly send no resource version, since the resource version - // of 'latest' is from a different collection, it's not comparable to + // of 'snapshot' is from a different collection, it's not comparable to // the service collection. The caching layer keeps per-collection RVs, // and this is proper, since in theory the collections could be hosted // in separate etcd (or even non-etcd) instances. @@ -99,7 +112,8 @@ func (c *Repair) runOnce() error { return fmt.Errorf("unable to refresh the port block: %v", err) } - r := portallocator.NewPortAllocator(c.portRange) + rebuilt := portallocator.NewPortAllocator(c.portRange) + // Check every Service's ports, and rebuild the state as we think it should be. for i := range list.Items { svc := &list.Items[i] ports := service.CollectServiceNodePorts(svc) @@ -108,18 +122,27 @@ func (c *Repair) runOnce() error { } for _, port := range ports { - switch err := r.Allocate(port); err { + switch err := rebuilt.Allocate(port); err { case nil: + if stored.Has(port) { + // remove it from the old set, so we can find leaks + stored.Release(port) + } else { + // doesn't seem to be allocated + runtime.HandleError(fmt.Errorf("the node port %d for service %s/%s is not allocated; repairing", port, svc.Name, svc.Namespace)) + } + delete(c.leaks, port) // it is used, so it can't be leaked case portallocator.ErrAllocated: // TODO: send event - // port is broken, reallocate - runtime.HandleError(fmt.Errorf("the port %d for service %s/%s was assigned to multiple services; please recreate", port, svc.Name, svc.Namespace)) + // port is duplicate, reallocate + runtime.HandleError(fmt.Errorf("the node port %d for service %s/%s was assigned to multiple services; please recreate", port, svc.Name, svc.Namespace)) case err.(*portallocator.ErrNotInRange): // TODO: send event - // port is broken, reallocate + // port is out of range, reallocate runtime.HandleError(fmt.Errorf("the port %d for service %s/%s is not within the port range %v; please recreate", port, svc.Name, svc.Namespace, c.portRange)) case portallocator.ErrFull: // TODO: send event + // somehow we are out of ports return fmt.Errorf("the port range %v is full; you must widen the port range in order to create new services", c.portRange) default: return fmt.Errorf("unable to allocate port %d for service %s/%s due to an unknown error, exiting: %v", port, svc.Name, svc.Namespace, err) @@ -127,12 +150,33 @@ func (c *Repair) runOnce() error { } } - err = r.Snapshot(latest) - if err != nil { + // Check for ports that are left in the old set. They appear to have been leaked. + stored.ForEach(func(port int) { + count, found := c.leaks[port] + switch { + case !found: + // flag it to be cleaned up after any races (hopefully) are gone + runtime.HandleError(fmt.Errorf("the node port %d may have leaked: flagging for later clean up", port)) + count = numRepairsBeforeLeakCleanup - 1 + fallthrough + case count > 0: + // pretend it is still in use until count expires + c.leaks[port] = count - 1 + if err := rebuilt.Allocate(port); err != nil { + runtime.HandleError(fmt.Errorf("the node port %d may have leaked, but can not be allocated: %v", port, err)) + } + default: + // do not add it to the rebuilt set, which means it will be available for reuse + runtime.HandleError(fmt.Errorf("the node port %d appears to have leaked: cleaning up", port)) + } + }) + + // Blast the rebuilt state into storage. + if err := rebuilt.Snapshot(snapshot); err != nil { return fmt.Errorf("unable to snapshot the updated port allocations: %v", err) } - if err := c.alloc.CreateOrUpdate(latest); err != nil { + if err := c.alloc.CreateOrUpdate(snapshot); err != nil { if errors.IsConflict(err) { return err } diff --git a/vendor/k8s.io/kubernetes/pkg/registry/extensions/thirdpartyresourcedata/codec.go b/vendor/k8s.io/kubernetes/pkg/registry/extensions/thirdpartyresourcedata/codec.go index a64ad974e6..0155bbe998 100644 --- a/vendor/k8s.io/kubernetes/pkg/registry/extensions/thirdpartyresourcedata/codec.go +++ b/vendor/k8s.io/kubernetes/pkg/registry/extensions/thirdpartyresourcedata/codec.go @@ -369,6 +369,10 @@ func (t *thirdPartyResourceDataDecoder) Decode(data []byte, gvk *unversioned.Gro } return o, outGVK, nil default: + if gvk != nil && registered.IsThirdPartyAPIGroupVersion(gvk.GroupVersion()) { + // delegate won't recognize a thirdparty group version + gvk = nil + } return t.delegate.Decode(data, gvk, into) } diff --git a/vendor/k8s.io/kubernetes/pkg/runtime/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/runtime/generated.pb.go index 6321677421..37d6aff4f9 100644 --- a/vendor/k8s.io/kubernetes/pkg/runtime/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/runtime/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/runtime/generated.proto b/vendor/k8s.io/kubernetes/pkg/runtime/generated.proto index 136ab0b5e3..df9dfc915b 100644 --- a/vendor/k8s.io/kubernetes/pkg/runtime/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/runtime/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/runtime/zz_generated.deepcopy.go b/vendor/k8s.io/kubernetes/pkg/runtime/zz_generated.deepcopy.go index 627c22b63a..8ba61db1da 100644 --- a/vendor/k8s.io/kubernetes/pkg/runtime/zz_generated.deepcopy.go +++ b/vendor/k8s.io/kubernetes/pkg/runtime/zz_generated.deepcopy.go @@ -1,7 +1,7 @@ // +build !ignore_autogenerated /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/storage/BUILD b/vendor/k8s.io/kubernetes/pkg/storage/BUILD index de2d97e923..ebf5eb8159 100644 --- a/vendor/k8s.io/kubernetes/pkg/storage/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/storage/BUILD @@ -48,6 +48,7 @@ go_library( go_test( name = "go_default_test", srcs = [ + "cacher_whitebox_test.go", "selection_predicate_test.go", "util_test.go", "watch_cache_test.go", diff --git a/vendor/k8s.io/kubernetes/pkg/storage/cacher.go b/vendor/k8s.io/kubernetes/pkg/storage/cacher.go index f7f5febf4a..5d578b0176 100644 --- a/vendor/k8s.io/kubernetes/pkg/storage/cacher.go +++ b/vendor/k8s.io/kubernetes/pkg/storage/cacher.go @@ -696,6 +696,7 @@ type cacheWatcher struct { input chan watchCacheEvent result chan watch.Event filter filterObjectFunc + done chan struct{} stopped bool forget func(bool) } @@ -704,6 +705,7 @@ func newCacheWatcher(resourceVersion uint64, chanSize int, initEvents []watchCac watcher := &cacheWatcher{ input: make(chan watchCacheEvent, chanSize), result: make(chan watch.Event, chanSize), + done: make(chan struct{}), filter: filter, stopped: false, forget: forget, @@ -728,6 +730,7 @@ func (c *cacheWatcher) stop() { defer c.Unlock() if !c.stopped { c.stopped = true + close(c.done) close(c.input) } } @@ -793,13 +796,37 @@ func (c *cacheWatcher) sendWatchCacheEvent(event *watchCacheEvent) { glog.Errorf("unexpected copy error: %v", err) return } + var watchEvent watch.Event switch { case curObjPasses && !oldObjPasses: - c.result <- watch.Event{Type: watch.Added, Object: object} + watchEvent = watch.Event{Type: watch.Added, Object: object} case curObjPasses && oldObjPasses: - c.result <- watch.Event{Type: watch.Modified, Object: object} + watchEvent = watch.Event{Type: watch.Modified, Object: object} case !curObjPasses && oldObjPasses: - c.result <- watch.Event{Type: watch.Deleted, Object: object} + watchEvent = watch.Event{Type: watch.Deleted, Object: object} + } + + // We need to ensure that if we put event X to the c.result, all + // previous events were already put into it before, no matter whether + // c.done is close or not. + // Thus we cannot simply select from c.done and c.result and this + // would give us non-determinism. + // At the same time, we don't want to block infinitely on putting + // to c.result, when c.done is already closed. + + // This ensures that with c.done already close, we at most once go + // into the next select after this. With that, no matter which + // statement we choose there, we will deliver only consecutive + // events. + select { + case <-c.done: + return + default: + } + + select { + case c.result <- watchEvent: + case <-c.done: } } diff --git a/vendor/k8s.io/kubernetes/pkg/util/intstr/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/util/intstr/generated.pb.go index 4d60cfc7c6..f6257af63c 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/intstr/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/util/intstr/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/util/intstr/generated.proto b/vendor/k8s.io/kubernetes/pkg/util/intstr/generated.proto index 4dc4e994a7..6ac2cfb0bf 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/intstr/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/util/intstr/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/util/sets/byte.go b/vendor/k8s.io/kubernetes/pkg/util/sets/byte.go index 3d6d0dfe43..a460e4b1f5 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/sets/byte.go +++ b/vendor/k8s.io/kubernetes/pkg/util/sets/byte.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/util/sets/doc.go b/vendor/k8s.io/kubernetes/pkg/util/sets/doc.go index c5e541621f..28a6a7d5c7 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/sets/doc.go +++ b/vendor/k8s.io/kubernetes/pkg/util/sets/doc.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/util/sets/empty.go b/vendor/k8s.io/kubernetes/pkg/util/sets/empty.go index 5654edd773..cd22b953aa 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/sets/empty.go +++ b/vendor/k8s.io/kubernetes/pkg/util/sets/empty.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/util/sets/int.go b/vendor/k8s.io/kubernetes/pkg/util/sets/int.go index 6d32f84c78..0614e9fb00 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/sets/int.go +++ b/vendor/k8s.io/kubernetes/pkg/util/sets/int.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/util/sets/int64.go b/vendor/k8s.io/kubernetes/pkg/util/sets/int64.go index 1de18319b7..82e1ba7821 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/sets/int64.go +++ b/vendor/k8s.io/kubernetes/pkg/util/sets/int64.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/util/sets/string.go b/vendor/k8s.io/kubernetes/pkg/util/sets/string.go index da66eaf8e7..baef7a6a2b 100644 --- a/vendor/k8s.io/kubernetes/pkg/util/sets/string.go +++ b/vendor/k8s.io/kubernetes/pkg/util/sets/string.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/version/base.go b/vendor/k8s.io/kubernetes/pkg/version/base.go index 6c8af1c70c..b1b82c9a86 100644 --- a/vendor/k8s.io/kubernetes/pkg/version/base.go +++ b/vendor/k8s.io/kubernetes/pkg/version/base.go @@ -29,7 +29,7 @@ package version // works for GitHub tar downloads. // // When releasing a new Kubernetes version, this file is updated by -// build-tools/mark_new_version.sh to reflect the new version, and then a +// build/mark_new_version.sh to reflect the new version, and then a // git annotated tag (using format vX.Y where X == Major version and Y // == Minor version) is created to point to the commit that updates // pkg/version/base.go @@ -51,7 +51,7 @@ var ( // semantic version is a git hash, but the version itself is no // longer the direct output of "git describe", but a slight // translation to be semver compliant. - gitVersion string = "v1.5.1+$Format:%h$" + gitVersion string = "v1.5.2+$Format:%h$" gitCommit string = "$Format:%H$" // sha1 from git, output of $(git rev-parse HEAD) gitTreeState string = "not a git tree" // state of git tree, either "clean" or "dirty" diff --git a/vendor/k8s.io/kubernetes/pkg/volume/aws_ebs/aws_ebs.go b/vendor/k8s.io/kubernetes/pkg/volume/aws_ebs/aws_ebs.go index fbc88791bf..17213e68e8 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/aws_ebs/aws_ebs.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/aws_ebs/aws_ebs.go @@ -33,6 +33,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" kstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util" ) // This is the primary entrypoint for volume plugins. @@ -393,33 +394,7 @@ func (c *awsElasticBlockStoreUnmounter) TearDown() error { // Unmounts the bind mount func (c *awsElasticBlockStoreUnmounter) TearDownAt(dir string) error { - notMnt, err := c.mounter.IsLikelyNotMountPoint(dir) - if err != nil { - glog.V(2).Info("Error checking if mountpoint ", dir, ": ", err) - return err - } - if notMnt { - glog.V(2).Info("Not mountpoint, deleting") - return os.Remove(dir) - } - - // Unmount the bind-mount inside this pod - if err := c.mounter.Unmount(dir); err != nil { - glog.V(2).Info("Error unmounting dir ", dir, ": ", err) - return err - } - notMnt, mntErr := c.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - glog.Errorf("IsLikelyNotMountPoint check failed: %v", mntErr) - return err - } - if notMnt { - if err := os.Remove(dir); err != nil { - glog.V(2).Info("Error removing mountpoint ", dir, ": ", err) - return err - } - } - return nil + return util.UnmountPath(dir, c.mounter) } type awsElasticBlockStoreDeleter struct { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/azure_file/BUILD b/vendor/k8s.io/kubernetes/pkg/volume/azure_file/BUILD index 57a854f914..6afe789b94 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/azure_file/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/volume/azure_file/BUILD @@ -24,6 +24,7 @@ go_library( "//pkg/util/mount:go_default_library", "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", + "//pkg/volume/util:go_default_library", "//vendor:github.com/golang/glog", ], ) diff --git a/vendor/k8s.io/kubernetes/pkg/volume/azure_file/azure_file.go b/vendor/k8s.io/kubernetes/pkg/volume/azure_file/azure_file.go index 058b364bdf..0252e5c680 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/azure_file/azure_file.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/azure_file/azure_file.go @@ -27,6 +27,7 @@ import ( "k8s.io/kubernetes/pkg/volume" "github.com/golang/glog" + "k8s.io/kubernetes/pkg/volume/util" ) // This is the primary entrypoint for volume plugins. @@ -240,31 +241,7 @@ func (c *azureFileUnmounter) TearDown() error { } func (c *azureFileUnmounter) TearDownAt(dir string) error { - notMnt, err := c.mounter.IsLikelyNotMountPoint(dir) - if err != nil { - glog.Errorf("Error checking IsLikelyNotMountPoint: %v", err) - return err - } - if notMnt { - return os.Remove(dir) - } - - if err := c.mounter.Unmount(dir); err != nil { - glog.Errorf("Unmounting failed: %v", err) - return err - } - notMnt, mntErr := c.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - glog.Errorf("IsLikelyNotMountPoint check failed: %v", mntErr) - return mntErr - } - if notMnt { - if err := os.Remove(dir); err != nil { - return err - } - } - - return nil + return util.UnmountPath(dir, c.mounter) } func getVolumeSource( diff --git a/vendor/k8s.io/kubernetes/pkg/volume/cephfs/BUILD b/vendor/k8s.io/kubernetes/pkg/volume/cephfs/BUILD index d2357b8c07..f6dfc5afea 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/cephfs/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/volume/cephfs/BUILD @@ -23,6 +23,7 @@ go_library( "//pkg/util/mount:go_default_library", "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", + "//pkg/volume/util:go_default_library", "//vendor:github.com/golang/glog", ], ) diff --git a/vendor/k8s.io/kubernetes/pkg/volume/cephfs/cephfs.go b/vendor/k8s.io/kubernetes/pkg/volume/cephfs/cephfs.go index 442ed8c07e..6e2dd545c5 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/cephfs/cephfs.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/cephfs/cephfs.go @@ -27,6 +27,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" utilstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util" ) // This is the primary entrypoint for volume plugins. @@ -226,7 +227,7 @@ func (cephfsVolume *cephfsMounter) SetUpAt(dir string, fsGroup *int64) error { } // cleanup upon failure - cephfsVolume.cleanup(dir) + util.UnmountPath(dir, cephfsVolume.mounter) // return error return err } @@ -244,7 +245,7 @@ func (cephfsVolume *cephfsUnmounter) TearDown() error { // TearDownAt unmounts the bind mount func (cephfsVolume *cephfsUnmounter) TearDownAt(dir string) error { - return cephfsVolume.cleanup(dir) + return util.UnmountPath(dir, cephfsVolume.mounter) } // GatePath creates global mount path @@ -253,31 +254,6 @@ func (cephfsVolume *cephfs) GetPath() string { return cephfsVolume.plugin.host.GetPodVolumeDir(cephfsVolume.podUID, utilstrings.EscapeQualifiedNameForDisk(name), cephfsVolume.volName) } -func (cephfsVolume *cephfs) cleanup(dir string) error { - noMnt, err := cephfsVolume.mounter.IsLikelyNotMountPoint(dir) - if err != nil && !os.IsNotExist(err) { - return fmt.Errorf("CephFS: Error checking IsLikelyNotMountPoint: %v", err) - } - if noMnt { - return os.RemoveAll(dir) - } - - if err := cephfsVolume.mounter.Unmount(dir); err != nil { - return fmt.Errorf("CephFS: Unmounting failed: %v", err) - } - noMnt, mntErr := cephfsVolume.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - return fmt.Errorf("CephFS: IsMountpoint check failed: %v", mntErr) - } - if noMnt { - if err := os.RemoveAll(dir); err != nil { - return fmt.Errorf("CephFS: removeAll %s/%v", dir, err) - } - } - - return nil -} - func (cephfsVolume *cephfs) execMount(mountpoint string) error { // cephfs mount option ceph_opt := "" diff --git a/vendor/k8s.io/kubernetes/pkg/volume/configmap/configmap.go b/vendor/k8s.io/kubernetes/pkg/volume/configmap/configmap.go index 25347f9c70..f3b51e95a8 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/configmap/configmap.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/configmap/configmap.go @@ -266,14 +266,7 @@ func (c *configMapVolumeUnmounter) TearDown() error { } func (c *configMapVolumeUnmounter) TearDownAt(dir string) error { - glog.V(3).Infof("Tearing down volume %v for pod %v at %v", c.volName, c.podUID, dir) - - // Wrap EmptyDir, let it do the teardown. - wrapped, err := c.plugin.host.NewWrapperUnmounter(c.volName, wrappedVolumeSpec(), c.podUID) - if err != nil { - return err - } - return wrapped.TearDownAt(dir) + return volume.UnmountViaEmptyDir(dir, c.plugin.host, c.volName, wrappedVolumeSpec(), c.podUID) } func getVolumeSource(spec *volume.Spec) (*api.ConfigMapVolumeSource, bool) { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/downwardapi/downwardapi.go b/vendor/k8s.io/kubernetes/pkg/volume/downwardapi/downwardapi.go index ec41ee20a5..d220e2ae5d 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/downwardapi/downwardapi.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/downwardapi/downwardapi.go @@ -272,14 +272,7 @@ func (c *downwardAPIVolumeUnmounter) TearDown() error { } func (c *downwardAPIVolumeUnmounter) TearDownAt(dir string) error { - glog.V(3).Infof("Tearing down volume %v for pod %v at %v", c.volName, c.podUID, dir) - - // Wrap EmptyDir, let it do the teardown. - wrapped, err := c.plugin.host.NewWrapperUnmounter(c.volName, wrappedVolumeSpec(), c.podUID) - if err != nil { - return err - } - return wrapped.TearDownAt(dir) + return volume.UnmountViaEmptyDir(dir, c.plugin.host, c.volName, wrappedVolumeSpec(), c.podUID) } func (b *downwardAPIVolumeMounter) getMetaDir() string { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/empty_dir/empty_dir.go b/vendor/k8s.io/kubernetes/pkg/volume/empty_dir/empty_dir.go index 56ff708ad7..838f9f9fb3 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/empty_dir/empty_dir.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/empty_dir/empty_dir.go @@ -299,6 +299,13 @@ func (ed *emptyDir) TearDown() error { // TearDownAt simply discards everything in the directory. func (ed *emptyDir) TearDownAt(dir string) error { + if pathExists, pathErr := volumeutil.PathExists(dir); pathErr != nil { + return fmt.Errorf("Error checking if path exists: %v", pathErr) + } else if !pathExists { + glog.Warningf("Warning: Unmount skipped because path does not exist: %v", dir) + return nil + } + // Figure out the medium. medium, isMnt, err := ed.mountDetector.GetMountMedium(dir) if err != nil { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/flocker/BUILD b/vendor/k8s.io/kubernetes/pkg/volume/flocker/BUILD index 08369ac714..c84b4072ac 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/flocker/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/volume/flocker/BUILD @@ -28,6 +28,7 @@ go_library( "//pkg/util/rand:go_default_library", "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", + "//pkg/volume/util:go_default_library", "//vendor:github.com/clusterhq/flocker-go", "//vendor:github.com/golang/glog", ], diff --git a/vendor/k8s.io/kubernetes/pkg/volume/flocker/flocker.go b/vendor/k8s.io/kubernetes/pkg/volume/flocker/flocker.go index 6d2d7d8fec..d6819e12ac 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/flocker/flocker.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/flocker/flocker.go @@ -22,6 +22,7 @@ import ( "path" "time" + flockerApi "github.com/clusterhq/flocker-go" "github.com/golang/glog" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/types" @@ -29,8 +30,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" - - flockerApi "github.com/clusterhq/flocker-go" + "k8s.io/kubernetes/pkg/volume/util" ) // This is the primary entrypoint for volume plugins. @@ -421,25 +421,7 @@ func (c *flockerVolumeUnmounter) TearDown() error { // TearDownAt unmounts the bind mount func (c *flockerVolumeUnmounter) TearDownAt(dir string) error { - notMnt, err := c.mounter.IsLikelyNotMountPoint(dir) - if err != nil { - return err - } - if notMnt { - return os.Remove(dir) - } - if err := c.mounter.Unmount(dir); err != nil { - return err - } - notMnt, mntErr := c.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - glog.Errorf("isLikelyNotMountPoint check failed: %v", mntErr) - return err - } - if notMnt { - return os.Remove(dir) - } - return fmt.Errorf("Failed to unmount volume dir") + return util.UnmountPath(dir, c.mounter) } func (plugin *flockerPlugin) NewDeleter(spec *volume.Spec) (volume.Deleter, error) { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/gce_pd/gce_pd.go b/vendor/k8s.io/kubernetes/pkg/volume/gce_pd/gce_pd.go index b9fca2c265..878e565527 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/gce_pd/gce_pd.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/gce_pd/gce_pd.go @@ -29,6 +29,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util" ) // This is the primary entrypoint for volume plugins. @@ -339,25 +340,7 @@ func (c *gcePersistentDiskUnmounter) TearDown() error { // TearDownAt unmounts the bind mount func (c *gcePersistentDiskUnmounter) TearDownAt(dir string) error { - notMnt, err := c.mounter.IsLikelyNotMountPoint(dir) - if err != nil { - return err - } - if notMnt { - return os.Remove(dir) - } - if err := c.mounter.Unmount(dir); err != nil { - return err - } - notMnt, mntErr := c.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - glog.Errorf("IsLikelyNotMountPoint check failed: %v", mntErr) - return err - } - if notMnt { - return os.Remove(dir) - } - return fmt.Errorf("Failed to unmount volume dir") + return util.UnmountPath(dir, c.mounter) } type gcePersistentDiskDeleter struct { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/git_repo/git_repo.go b/vendor/k8s.io/kubernetes/pkg/volume/git_repo/git_repo.go index 3b6e59a9e5..03beb36d5f 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/git_repo/git_repo.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/git_repo/git_repo.go @@ -254,13 +254,7 @@ func (c *gitRepoVolumeUnmounter) TearDown() error { // TearDownAt simply deletes everything in the directory. func (c *gitRepoVolumeUnmounter) TearDownAt(dir string) error { - - // Wrap EmptyDir, let it do the teardown. - wrapped, err := c.plugin.host.NewWrapperUnmounter(c.volName, wrappedVolumeSpec(), c.podUID) - if err != nil { - return err - } - return wrapped.TearDownAt(dir) + return volume.UnmountViaEmptyDir(dir, c.plugin.host, c.volName, wrappedVolumeSpec(), c.podUID) } func getVolumeSource(spec *volume.Spec) (*api.GitRepoVolumeSource, bool) { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/glusterfs/glusterfs.go b/vendor/k8s.io/kubernetes/pkg/volume/glusterfs/glusterfs.go index bb2f49eb3d..c5def0c0bc 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/glusterfs/glusterfs.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/glusterfs/glusterfs.go @@ -245,8 +245,7 @@ func (b *glusterfsMounter) SetUpAt(dir string, fsGroup *int64) error { } // Cleanup upon failure. - c := &glusterfsUnmounter{b.glusterfs} - c.cleanup(dir) + volutil.UnmountPath(dir, b.mounter) return err } @@ -266,32 +265,7 @@ func (c *glusterfsUnmounter) TearDown() error { } func (c *glusterfsUnmounter) TearDownAt(dir string) error { - return c.cleanup(dir) -} - -func (c *glusterfsUnmounter) cleanup(dir string) error { - notMnt, err := c.mounter.IsLikelyNotMountPoint(dir) - if err != nil { - return fmt.Errorf("glusterfs: Error checking IsLikelyNotMountPoint: %v", err) - } - if notMnt { - return os.RemoveAll(dir) - } - - if err := c.mounter.Unmount(dir); err != nil { - return fmt.Errorf("glusterfs: Unmounting failed: %v", err) - } - notMnt, mntErr := c.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - return fmt.Errorf("glusterfs: IsLikelyNotMountPoint check failed: %v", mntErr) - } - if notMnt { - if err := os.RemoveAll(dir); err != nil { - return fmt.Errorf("glusterfs: RemoveAll failed: %v", err) - } - } - - return nil + return volutil.UnmountPath(dir, c.mounter) } func (b *glusterfsMounter) setUpAtInternal(dir string) error { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/nfs/BUILD b/vendor/k8s.io/kubernetes/pkg/volume/nfs/BUILD index 67e1e5c452..5b12035e3a 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/nfs/BUILD +++ b/vendor/k8s.io/kubernetes/pkg/volume/nfs/BUILD @@ -25,6 +25,7 @@ go_library( "//pkg/util/mount:go_default_library", "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", + "//pkg/volume/util:go_default_library", "//vendor:github.com/golang/glog", ], ) diff --git a/vendor/k8s.io/kubernetes/pkg/volume/nfs/nfs.go b/vendor/k8s.io/kubernetes/pkg/volume/nfs/nfs.go index 25d3cb58d7..4a3fff5d07 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/nfs/nfs.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/nfs/nfs.go @@ -29,6 +29,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util" ) // This is the primary entrypoint for volume plugins. @@ -270,31 +271,7 @@ func (c *nfsUnmounter) TearDown() error { } func (c *nfsUnmounter) TearDownAt(dir string) error { - notMnt, err := c.mounter.IsLikelyNotMountPoint(dir) - if err != nil { - glog.Errorf("Error checking IsLikelyNotMountPoint: %v", err) - return err - } - if notMnt { - return os.Remove(dir) - } - - if err := c.mounter.Unmount(dir); err != nil { - glog.Errorf("Unmounting failed: %v", err) - return err - } - notMnt, mntErr := c.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - glog.Errorf("IsLikelyNotMountPoint check failed: %v", mntErr) - return mntErr - } - if notMnt { - if err := os.Remove(dir); err != nil { - return err - } - } - - return nil + return util.UnmountPath(dir, c.mounter) } func newRecycler(pvName string, spec *volume.Spec, eventRecorder volume.RecycleEventRecorder, host volume.VolumeHost, volumeConfig volume.VolumeConfig) (volume.Recycler, error) { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/photon_pd/photon_pd.go b/vendor/k8s.io/kubernetes/pkg/volume/photon_pd/photon_pd.go index 05fd3c2c29..4c3e7714ea 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/photon_pd/photon_pd.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/photon_pd/photon_pd.go @@ -29,6 +29,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" utilstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util" ) // This is the primary entrypoint for volume plugins. @@ -264,29 +265,7 @@ func (c *photonPersistentDiskUnmounter) TearDown() error { // Unmounts the bind mount, and detaches the disk only if the PD // resource was the last reference to that disk on the kubelet. func (c *photonPersistentDiskUnmounter) TearDownAt(dir string) error { - glog.V(4).Infof("Photon Controller Volume TearDown of %s", dir) - notmnt, err := c.mounter.IsLikelyNotMountPoint(dir) - if err != nil { - return err - } - if notmnt { - return os.Remove(dir) - } - - if err := c.mounter.Unmount(dir); err != nil { - glog.Errorf("Unmount failed: %v", err) - return err - } - - notmnt, mntErr := c.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - glog.Errorf("IsLikelyNotMountPoint check failed: %v", mntErr) - return err - } - if notmnt { - return os.Remove(dir) - } - return fmt.Errorf("Failed to unmount volume dir") + return util.UnmountPath(dir, c.mounter) } func makeGlobalPDPath(host volume.VolumeHost, devName string) string { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/secret/secret.go b/vendor/k8s.io/kubernetes/pkg/volume/secret/secret.go index aed4b9fa77..d68ac8c709 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/secret/secret.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/secret/secret.go @@ -293,14 +293,7 @@ func (c *secretVolumeUnmounter) TearDown() error { } func (c *secretVolumeUnmounter) TearDownAt(dir string) error { - glog.V(3).Infof("Tearing down volume %v for pod %v at %v", c.volName, c.podUID, dir) - - // Wrap EmptyDir, let it do the teardown. - wrapped, err := c.plugin.host.NewWrapperUnmounter(c.volName, wrappedVolumeSpec(), c.podUID) - if err != nil { - return err - } - return wrapped.TearDownAt(dir) + return volume.UnmountViaEmptyDir(dir, c.plugin.host, c.volName, wrappedVolumeSpec(), c.podUID) } func getVolumeSource(spec *volume.Spec) (*api.SecretVolumeSource, bool) { diff --git a/vendor/k8s.io/kubernetes/pkg/volume/util.go b/vendor/k8s.io/kubernetes/pkg/volume/util.go index 0438772933..568a05ef7f 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/util.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/util.go @@ -33,7 +33,9 @@ import ( "github.com/golang/glog" "k8s.io/kubernetes/pkg/api/errors" "k8s.io/kubernetes/pkg/api/resource" + "k8s.io/kubernetes/pkg/types" "k8s.io/kubernetes/pkg/util/sets" + volutil "k8s.io/kubernetes/pkg/volume/util" ) type RecycleEventRecorder func(eventtype, message string) @@ -331,3 +333,23 @@ func ChooseZoneForVolume(zones sets.String, pvcName string) string { glog.V(2).Infof("Creating volume for PVC %q; chose zone=%q from zones=%q", pvcName, zone, zoneSlice) return zone } + +// UnmountViaEmptyDir delegates the tear down operation for secret, configmap, git_repo and downwardapi +// to empty_dir +func UnmountViaEmptyDir(dir string, host VolumeHost, volName string, volSpec Spec, podUID types.UID) error { + glog.V(3).Infof("Tearing down volume %v for pod %v at %v", volName, podUID, dir) + + if pathExists, pathErr := volutil.PathExists(dir); pathErr != nil { + return fmt.Errorf("Error checking if path exists: %v", pathErr) + } else if !pathExists { + glog.Warningf("Warning: Unmount skipped because path does not exist: %v", dir) + return nil + } + + // Wrap EmptyDir, let it do the teardown. + wrapped, err := host.NewWrapperUnmounter(volName, volSpec, podUID) + if err != nil { + return err + } + return wrapped.TearDownAt(dir) +} diff --git a/vendor/k8s.io/kubernetes/pkg/volume/util/operationexecutor/operation_executor.go b/vendor/k8s.io/kubernetes/pkg/volume/util/operationexecutor/operation_executor.go index ea00d6f606..b782850e99 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/util/operationexecutor/operation_executor.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/util/operationexecutor/operation_executor.go @@ -1002,7 +1002,7 @@ func (oe *operationExecutor) generateUnmountVolumeFunc( volumeToUnmount.OuterVolumeSpecName, volumeToUnmount.PodName, volumeToUnmount.PodUID, - unmountErr) + markVolMountedErr) } return nil diff --git a/vendor/k8s.io/kubernetes/pkg/volume/util/util.go b/vendor/k8s.io/kubernetes/pkg/volume/util/util.go index 8122e04dd6..937dbc792e 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/util/util.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/util/util.go @@ -97,7 +97,7 @@ func UnmountPath(mountPath string, mounter mount.Interface) error { glog.V(4).Infof("%q is unmounted, deleting the directory", mountPath) return os.Remove(mountPath) } - return nil + return fmt.Errorf("Failed to unmount path %v", mountPath) } // PathExists returns true if the specified path exists. diff --git a/vendor/k8s.io/kubernetes/pkg/volume/vsphere_volume/vsphere_volume.go b/vendor/k8s.io/kubernetes/pkg/volume/vsphere_volume/vsphere_volume.go index 218b022780..4391437ecc 100644 --- a/vendor/k8s.io/kubernetes/pkg/volume/vsphere_volume/vsphere_volume.go +++ b/vendor/k8s.io/kubernetes/pkg/volume/vsphere_volume/vsphere_volume.go @@ -29,6 +29,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" utilstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util" ) // This is the primary entrypoint for volume plugins. @@ -253,26 +254,7 @@ func (v *vsphereVolumeUnmounter) TearDown() error { // Unmounts the bind mount, and detaches the disk only if the PD // resource was the last reference to that disk on the kubelet. func (v *vsphereVolumeUnmounter) TearDownAt(dir string) error { - glog.V(5).Infof("vSphere Volume TearDown of %s", dir) - notMnt, err := v.mounter.IsLikelyNotMountPoint(dir) - if err != nil { - return err - } - if notMnt { - return os.Remove(dir) - } - if err := v.mounter.Unmount(dir); err != nil { - return err - } - notMnt, mntErr := v.mounter.IsLikelyNotMountPoint(dir) - if mntErr != nil { - glog.Errorf("IsLikelyNotMountPoint check failed: %v", mntErr) - return err - } - if notMnt { - return os.Remove(dir) - } - return fmt.Errorf("Failed to unmount volume dir") + return util.UnmountPath(dir, v.mounter) } func makeGlobalPDPath(host volume.VolumeHost, devName string) string { diff --git a/vendor/k8s.io/kubernetes/pkg/watch/versioned/generated.pb.go b/vendor/k8s.io/kubernetes/pkg/watch/versioned/generated.pb.go index db5ffadd60..07b2cfad67 100644 --- a/vendor/k8s.io/kubernetes/pkg/watch/versioned/generated.pb.go +++ b/vendor/k8s.io/kubernetes/pkg/watch/versioned/generated.pb.go @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/pkg/watch/versioned/generated.proto b/vendor/k8s.io/kubernetes/pkg/watch/versioned/generated.proto index 340e18dad8..c5c8545bfc 100644 --- a/vendor/k8s.io/kubernetes/pkg/watch/versioned/generated.proto +++ b/vendor/k8s.io/kubernetes/pkg/watch/versioned/generated.proto @@ -1,5 +1,5 @@ /* -Copyright 2016 The Kubernetes Authors. +Copyright 2017 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/predicates/predicates.go b/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/predicates/predicates.go index e57afcceba..2ab412ef5a 100644 --- a/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/predicates/predicates.go +++ b/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/predicates/predicates.go @@ -909,11 +909,13 @@ func (c *PodAffinityChecker) InterPodAffinityMatches(pod *api.Pod, meta interfac // TODO: Do we really need any pod matching, or all pods matching? I think the latter. func (c *PodAffinityChecker) anyPodMatchesPodAffinityTerm(pod *api.Pod, allPods []*api.Pod, node *api.Node, term *api.PodAffinityTerm) (bool, bool, error) { matchingPodExists := false + namespaces := priorityutil.GetNamespacesFromPodAffinityTerm(pod, term) + selector, err := unversioned.LabelSelectorAsSelector(term.LabelSelector) + if err != nil { + return false, false, err + } for _, existingPod := range allPods { - match, err := priorityutil.PodMatchesTermsNamespaceAndSelector(existingPod, pod, term) - if err != nil { - return false, matchingPodExists, err - } + match := priorityutil.PodMatchesTermsNamespaceAndSelector(existingPod, namespaces, selector) if match { matchingPodExists = true existingPodNode, err := c.info.GetNodeInfo(existingPod.Spec.NodeName) @@ -994,11 +996,13 @@ func getMatchingAntiAffinityTerms(pod *api.Pod, nodeInfoMap map[string]*schedule continue } for _, term := range getPodAntiAffinityTerms(affinity.PodAntiAffinity) { - match, err := priorityutil.PodMatchesTermsNamespaceAndSelector(pod, existingPod, &term) + namespaces := priorityutil.GetNamespacesFromPodAffinityTerm(pod, &term) + selector, err := unversioned.LabelSelectorAsSelector(term.LabelSelector) if err != nil { catchError(err) return } + match := priorityutil.PodMatchesTermsNamespaceAndSelector(pod, namespaces, selector) if match { nodeResult = append(nodeResult, matchingPodAntiAffinityTerm{term: &term, node: node}) } @@ -1025,10 +1029,12 @@ func (c *PodAffinityChecker) getMatchingAntiAffinityTerms(pod *api.Pod, allPods return nil, err } for _, term := range getPodAntiAffinityTerms(affinity.PodAntiAffinity) { - match, err := priorityutil.PodMatchesTermsNamespaceAndSelector(pod, existingPod, &term) + namespaces := priorityutil.GetNamespacesFromPodAffinityTerm(existingPod, &term) + selector, err := unversioned.LabelSelectorAsSelector(term.LabelSelector) if err != nil { return nil, err } + match := priorityutil.PodMatchesTermsNamespaceAndSelector(pod, namespaces, selector) if match { result = append(result, matchingPodAntiAffinityTerm{term: &term, node: existingPodNode}) } @@ -1090,8 +1096,15 @@ func (c *PodAffinityChecker) satisfiesPodsAffinityAntiAffinity(pod *api.Pod, nod // If the requirement matches a pod's own labels are namespace, and there are // no other such pods, then disregard the requirement. This is necessary to // not block forever because the first pod of the collection can't be scheduled. - match, err := priorityutil.PodMatchesTermsNamespaceAndSelector(pod, pod, &term) - if err != nil || !match || matchingPodExists { + namespaces := priorityutil.GetNamespacesFromPodAffinityTerm(pod, &term) + selector, err := unversioned.LabelSelectorAsSelector(term.LabelSelector) + if err != nil { + glog.V(10).Infof("Cannot parse selector on term %v for pod %v. Details %v", + term, podName(pod), err) + return false + } + match := priorityutil.PodMatchesTermsNamespaceAndSelector(pod, namespaces, selector) + if !match || matchingPodExists { glog.V(10).Infof("Cannot schedule pod %+v onto node %v,because of PodAffinityTerm %v, err: %v", podName(pod), node.Name, term, err) return false diff --git a/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/interpod_affinity.go b/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/interpod_affinity.go index 394eb27239..0544a6b681 100644 --- a/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/interpod_affinity.go +++ b/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/interpod_affinity.go @@ -21,6 +21,7 @@ import ( "github.com/golang/glog" "k8s.io/kubernetes/pkg/api" + "k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/util/workqueue" "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm" "k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/predicates" @@ -84,11 +85,13 @@ func (p *podAffinityPriorityMap) setError(err error) { } func (p *podAffinityPriorityMap) processTerm(term *api.PodAffinityTerm, podDefiningAffinityTerm, podToCheck *api.Pod, fixedNode *api.Node, weight float64) { - match, err := priorityutil.PodMatchesTermsNamespaceAndSelector(podToCheck, podDefiningAffinityTerm, term) + namespaces := priorityutil.GetNamespacesFromPodAffinityTerm(podDefiningAffinityTerm, term) + selector, err := unversioned.LabelSelectorAsSelector(term.LabelSelector) if err != nil { p.setError(err) return } + match := priorityutil.PodMatchesTermsNamespaceAndSelector(podToCheck, namespaces, selector) if match { func() { p.Lock() diff --git a/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util/BUILD b/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util/BUILD index 793bc4f700..694567dfef 100644 --- a/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util/BUILD +++ b/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util/BUILD @@ -20,7 +20,6 @@ go_library( tags = ["automanaged"], deps = [ "//pkg/api:go_default_library", - "//pkg/api/unversioned:go_default_library", "//pkg/labels:go_default_library", "//pkg/util/sets:go_default_library", ], diff --git a/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util/topologies.go b/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util/topologies.go index 36890cb0e9..58d65de9d3 100644 --- a/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util/topologies.go +++ b/vendor/k8s.io/kubernetes/plugin/pkg/scheduler/algorithm/priorities/util/topologies.go @@ -18,7 +18,6 @@ package util import ( "k8s.io/kubernetes/pkg/api" - "k8s.io/kubernetes/pkg/api/unversioned" "k8s.io/kubernetes/pkg/labels" "k8s.io/kubernetes/pkg/util/sets" ) @@ -27,7 +26,7 @@ import ( // according to the namespaces indicated in podAffinityTerm. // 1. If the namespaces is nil considers the given pod's namespace // 2. If the namespaces is empty list then considers all the namespaces -func getNamespacesFromPodAffinityTerm(pod *api.Pod, podAffinityTerm api.PodAffinityTerm) sets.String { +func GetNamespacesFromPodAffinityTerm(pod *api.Pod, podAffinityTerm *api.PodAffinityTerm) sets.String { names := sets.String{} if podAffinityTerm.Namespaces == nil { names.Insert(pod.Namespace) @@ -39,17 +38,14 @@ func getNamespacesFromPodAffinityTerm(pod *api.Pod, podAffinityTerm api.PodAffin // PodMatchesTermsNamespaceAndSelector returns true if the given // matches the namespace and selector defined by `s . -func PodMatchesTermsNamespaceAndSelector(pod *api.Pod, affinityPod *api.Pod, term *api.PodAffinityTerm) (bool, error) { - namespaces := getNamespacesFromPodAffinityTerm(affinityPod, *term) +func PodMatchesTermsNamespaceAndSelector(pod *api.Pod, namespaces sets.String, selector labels.Selector) bool { if len(namespaces) != 0 && !namespaces.Has(pod.Namespace) { - return false, nil + return false } - - selector, err := unversioned.LabelSelectorAsSelector(term.LabelSelector) - if err != nil || !selector.Matches(labels.Set(pod.Labels)) { - return false, err + if !selector.Matches(labels.Set(pod.Labels)) { + return false } - return true, nil + return true } // nodesHaveSameTopologyKeyInternal checks if nodeA and nodeB have same label value with given topologyKey as label key.