From a8350f4f3344b141e2e16516ed7edafbe61c54d5 Mon Sep 17 00:00:00 2001 From: Ole Markus With Date: Sun, 19 Jun 2022 08:42:55 +0200 Subject: [PATCH] Use legacy-cloud-providers repo for the gcp provider dep --- .../providers/google/clouddns/clouddns.go | 2 +- go.mod | 16 +- go.sum | 44 +++-- tests/e2e/go.mod | 4 +- .../cloud-provider-gcp/providers/gce/BUILD | 151 ------------------ .../cloud-provider-gcp/providers/gce/OWNERS | 12 -- .../LICENSE | 5 +- .../k8s.io/legacy-cloud-providers/gce/OWNERS | 10 ++ .../gce/doc.go | 2 +- .../gce/gce.go | 56 +++---- .../gce/gce_address_manager.go | 0 .../gce/gce_addresses.go | 0 .../gce/gce_alpha.go | 4 + .../gce/gce_annotations.go | 7 + .../gce/gce_backendservice.go | 0 .../gce/gce_cert.go | 0 .../gce/gce_clusterid.go | 0 .../gce/gce_clusters.go | 0 .../gce/gce_disks.go | 0 .../gce/gce_fake.go | 1 + .../gce/gce_firewall.go | 0 .../gce/gce_forwardingrule.go | 0 .../gce/gce_healthchecks.go | 0 .../gce/gce_instancegroup.go | 10 ++ .../gce/gce_instances.go | 89 ++--------- .../gce/gce_interfaces.go | 0 .../gce/gce_loadbalancer.go | 15 +- .../gce/gce_loadbalancer_external.go | 29 +++- .../gce/gce_loadbalancer_internal.go | 68 +++++--- .../gce/gce_loadbalancer_metrics.go | 0 .../gce/gce_loadbalancer_naming.go | 0 .../gce/gce_networkendpointgroup.go | 0 .../gce/gce_routes.go | 0 .../gce/gce_securitypolicy.go | 0 .../gce/gce_targetpool.go | 0 .../gce/gce_targetproxy.go | 0 .../gce/gce_tpu.go | 0 .../gce/gce_urlmap.go | 0 .../gce/gce_util.go | 34 +++- .../gce/gce_zones.go | 2 +- .../gce/metrics.go | 0 .../gce/support.go | 0 .../gce/token_source.go | 2 +- vendor/modules.txt | 20 +-- 44 files changed, 229 insertions(+), 354 deletions(-) delete mode 100644 vendor/k8s.io/cloud-provider-gcp/providers/gce/BUILD delete mode 100644 vendor/k8s.io/cloud-provider-gcp/providers/gce/OWNERS rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/LICENSE (99%) create mode 100644 vendor/k8s.io/legacy-cloud-providers/gce/OWNERS rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/doc.go (91%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce.go (96%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_address_manager.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_addresses.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_alpha.go (88%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_annotations.go (96%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_backendservice.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_cert.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_clusterid.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_clusters.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_disks.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_fake.go (97%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_firewall.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_forwardingrule.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_healthchecks.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_instancegroup.go (91%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_instances.go (89%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_interfaces.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_loadbalancer.go (95%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_loadbalancer_external.go (97%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_loadbalancer_internal.go (93%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_loadbalancer_metrics.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_loadbalancer_naming.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_networkendpointgroup.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_routes.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_securitypolicy.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_targetpool.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_targetproxy.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_tpu.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_urlmap.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_util.go (92%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/gce_zones.go (98%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/metrics.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/support.go (100%) rename vendor/k8s.io/{cloud-provider-gcp/providers => legacy-cloud-providers}/gce/token_source.go (98%) diff --git a/dnsprovider/pkg/dnsprovider/providers/google/clouddns/clouddns.go b/dnsprovider/pkg/dnsprovider/providers/google/clouddns/clouddns.go index ccd94b6dfd..62bbcfdb68 100644 --- a/dnsprovider/pkg/dnsprovider/providers/google/clouddns/clouddns.go +++ b/dnsprovider/pkg/dnsprovider/providers/google/clouddns/clouddns.go @@ -30,10 +30,10 @@ import ( gcfg "gopkg.in/gcfg.v1" "k8s.io/klog/v2" - "k8s.io/cloud-provider-gcp/providers/gce" "k8s.io/kops/dnsprovider/pkg/dnsprovider" "k8s.io/kops/dnsprovider/pkg/dnsprovider/providers/google/clouddns/internal" "k8s.io/kops/dnsprovider/pkg/dnsprovider/providers/google/clouddns/internal/stubs" + "k8s.io/legacy-cloud-providers/gce" ) const ( diff --git a/go.mod b/go.mod index 0f207ace26..004af2eba9 100644 --- a/go.mod +++ b/go.mod @@ -56,18 +56,18 @@ require ( gopkg.in/inf.v0 v0.9.1 gopkg.in/square/go-jose.v2 v2.6.0 helm.sh/helm/v3 v3.9.0 - k8s.io/api v0.24.0 - k8s.io/apimachinery v0.24.0 + k8s.io/api v0.24.2 + k8s.io/apimachinery v0.24.2 k8s.io/cli-runtime v0.24.0 - k8s.io/client-go v0.24.0 + k8s.io/client-go v0.24.2 k8s.io/cloud-provider-aws v1.24.0 - k8s.io/cloud-provider-gcp/providers v0.23.0 - k8s.io/component-base v0.24.0 + k8s.io/component-base v0.24.2 k8s.io/gengo v0.0.0-20220307231824-4627b89bbf1b k8s.io/klog/v2 v2.60.1 k8s.io/kubectl v0.24.0 k8s.io/kubelet v0.24.0 - k8s.io/mount-utils v0.24.0 + k8s.io/legacy-cloud-providers v0.24.2 + k8s.io/mount-utils v0.24.2 k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9 sigs.k8s.io/controller-runtime v0.12.0 sigs.k8s.io/yaml v1.3.0 @@ -222,8 +222,8 @@ require ( gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect k8s.io/apiextensions-apiserver v0.24.0 // indirect - k8s.io/cloud-provider v0.24.0 // indirect - k8s.io/csi-translation-lib v0.24.0 // indirect + k8s.io/cloud-provider v0.24.2 // indirect + k8s.io/csi-translation-lib v0.24.2 // indirect k8s.io/klog v1.0.0 // indirect k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42 // indirect oras.land/oras-go v1.1.1 // indirect diff --git a/go.sum b/go.sum index 81f351c1ad..73a3736d01 100644 --- a/go.sum +++ b/go.sum @@ -66,6 +66,7 @@ github.com/Antonboom/errname v0.1.5/go.mod h1:DugbBstvPFQbv/5uLcRRzfrNqKE9tVdVCq github.com/Antonboom/nilnil v0.1.0/go.mod h1:PhHLvRPSghY5Y7mX4TW+BHZQYo1A8flE5H20D3IPZBo= github.com/Azure/azure-pipeline-go v0.2.3 h1:7U9HBg1JFK3jHl5qmo4CTZKFTVgMwdFHMVtCdfBE21U= github.com/Azure/azure-pipeline-go v0.2.3/go.mod h1:x841ezTBIMG6O3lAcl8ATHnsOPVl2bqk7S3ta6S6u4k= +github.com/Azure/azure-sdk-for-go v55.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= github.com/Azure/azure-sdk-for-go v63.4.0+incompatible h1:fle3M5Q7vr8auaiPffKyUQmLbvYeqpw30bKU6PrWJFo= github.com/Azure/azure-sdk-for-go v63.4.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= github.com/Azure/azure-storage-blob-go v0.15.0 h1:rXtgp8tN1p29GvpGgfJetavIG0V7OgcSXPpwp3tx6qk= @@ -95,6 +96,7 @@ github.com/Azure/go-autorest/autorest/mocks v0.4.2 h1:PGN4EDXnuQbojHbU0UWoNvmu9A github.com/Azure/go-autorest/autorest/mocks v0.4.2/go.mod h1:Vy7OitM9Kei0i1Oj+LvyAWMXJHeKH1MVlzFugfVrmyU= github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= github.com/Azure/go-autorest/autorest/to v0.4.0/go.mod h1:fE8iZBn7LQR7zH/9XU2NcPR4o9jEImooCeWJcYV/zLE= +github.com/Azure/go-autorest/autorest/validation v0.1.0/go.mod h1:Ha3z/SqBeaalWQvokg3NZAlQTalVMtOIAs1aGK7G6u8= github.com/Azure/go-autorest/autorest/validation v0.3.1 h1:AgyqjAd94fwNAoTjl/WQXg4VvFeRFpO+UhNyRXqF1ac= github.com/Azure/go-autorest/autorest/validation v0.3.1/go.mod h1:yhLgjC0Wda5DYXl6JAsWyUe4KVNffhoDhG0zVzUMo3E= github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= @@ -175,6 +177,7 @@ github.com/aws/amazon-ec2-instance-selector/v2 v2.3.0/go.mod h1:/KFJVMLvjzGl+KsA github.com/aws/aws-sdk-go v1.23.20/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.25.37/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.36.30/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.38.49/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-sdk-go v1.44.32 h1:x5hBtpY/02sgRL158zzTclcCLwh3dx3YlSl1rAH4Op0= github.com/aws/aws-sdk-go v1.44.32/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= @@ -275,6 +278,7 @@ github.com/digitalocean/godo v1.79.0/go.mod h1:BPCqvwbjbGqxuUnIKB4EvS/AX7IDnNmt5 github.com/dimchansky/utfbom v1.1.1 h1:vV6w1AhK4VMnhBno/TPVCoK9U/LP0PkLCS9tbxHdi/U= github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE= github.com/distribution/distribution/v3 v3.0.0-20211118083504-a29a3c99a684 h1:DBZ2sN7CK6dgvHVpQsQj4sRMCbWTmd17l+5SUCjnQSY= +github.com/dnaeon/go-vcr v1.0.1/go.mod h1:aBB1+wY4s93YsC3HHjMBMrwTj2R9FHDzUr9KyGc8n1E= github.com/docker/cli v20.10.16+incompatible h1:aLQ8XowgKpR3/IysPj8qZQJBVQ+Qws61icFuZl6iKYs= github.com/docker/cli v20.10.16+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= github.com/docker/distribution v2.8.1+incompatible h1:Q50tZOPR6T/hjNsyc9g8/syEs6bk8XXApsHjKukMl68= @@ -407,6 +411,7 @@ github.com/gobuffalo/flect v0.2.3/go.mod h1:vmkQwuZYhN5Pc4ljYQZzP+1sq+NEkK+lh20j github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= github.com/gofrs/flock v0.8.1/go.mod h1:F1TvTiK9OcQqauNUHlbJvyl9Qa1QvF/gOUDKA14jxHU= +github.com/gofrs/uuid v4.0.0+incompatible/go.mod h1:b2aQJv3Z4Fp6yNu3cdSllBxTCLRxnplIgP/c0N/04lM= github.com/gogo/protobuf v0.0.0-20171007142547-342cbe0a0415/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= @@ -557,6 +562,7 @@ github.com/googleapis/gnostic v0.5.1/go.mod h1:6U4PtQXGIEt/Z3h5MAT7FNofLnw9vXk2c github.com/googleapis/gnostic v0.5.5/go.mod h1:7+EbHbldMins07ALC74bsA81Ovc97DwqyJO1AENw9kA= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= github.com/gookit/color v1.4.2/go.mod h1:fqRyamkC1W8uxl+lxCQxOT09l/vYfZ+QeiX3rKQHCoQ= +github.com/gophercloud/gophercloud v0.1.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8= github.com/gophercloud/gophercloud v0.25.0 h1:C3Oae7y0fUVQGSsBrb3zliAjdX+riCSEh4lNMejFNI4= github.com/gophercloud/gophercloud v0.25.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= @@ -1007,6 +1013,7 @@ github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFR github.com/rogpeppe/go-internal v1.6.2 h1:aIihoIOHCiLZHxyoNQ+ABL4NKhFTgKLBdMLyEAh98m0= github.com/rogpeppe/go-internal v1.6.2/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rs/cors v1.7.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU= +github.com/rubiojr/go-vhd v0.0.0-20200706105327-02e210299021/go.mod h1:DM5xW0nvfNNm2uytzsvhI3OnX8uzaRAg8UX/CnDqbto= github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= github.com/russross/blackfriday v1.6.0 h1:KqfZb0pUVN2lYqZUYRddxF4OR8ZMURnJIG5Y3VRLtww= github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY= @@ -1139,6 +1146,7 @@ github.com/viki-org/dnscache v0.0.0-20130720023526-c70c1f23c5d8/go.mod h1:dniwbG github.com/vmihailenco/msgpack v3.3.3+incompatible/go.mod h1:fy3FlTQTDXWkZ7Bh6AcGMlsjHatGryHQYUTf1ShIgkk= github.com/vmihailenco/msgpack/v4 v4.3.12/go.mod h1:gborTTJjAo/GWTqqRjrLCn9pgNN+NXzzngzBKDPIqw4= github.com/vmihailenco/tagparser v0.1.1/go.mod h1:OeAg3pn3UbLjkWt+rN9oFYB6u/cQgqMEUPoW2WPyhdI= +github.com/vmware/govmomi v0.20.3/go.mod h1:URlwyTFZX72RmxtxuaFL2Uj3fD1JTvZdx59bHWk6aFU= github.com/weaveworks/mesh v0.0.0-20191105120815-58dbcc3e8e63 h1:s0fUBZ8Vhtc3ruFmLIr3qVTQUb/j6ySkPLHoKKitHeM= github.com/weaveworks/mesh v0.0.0-20191105120815-58dbcc3e8e63/go.mod h1:RZebXKv56dax5zXcLIJZm1Awk28sx0XODXF94Z8WssY= github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= @@ -1233,6 +1241,7 @@ golang.org/x/crypto v0.0.0-20180501155221-613d6eafa307/go.mod h1:6SG95UA2DQfeDnf golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= @@ -1414,6 +1423,7 @@ golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190209173611-3b5209105503/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1858,6 +1868,7 @@ gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qS gopkg.in/cheggaaa/pb.v1 v1.0.28/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= +gopkg.in/gcfg.v1 v1.2.0/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o= gopkg.in/gcfg.v1 v1.2.3 h1:m8OOJ4ccYHnx2f4gQwpno8nAX5OGOh7RLaaz0pj3Ogs= gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= @@ -1874,6 +1885,7 @@ gopkg.in/square/go-jose.v2 v2.6.0 h1:NGk74WTnPKBNUhNzQX7PYcTLUjoq7mzKk2OKbvwk2iI gopkg.in/square/go-jose.v2 v2.6.0/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= +gopkg.in/warnings.v0 v0.1.1/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= @@ -1907,39 +1919,43 @@ honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9 honnef.co/go/tools v0.2.1/go.mod h1:lPVVZ2BS5TfnjLyizF7o7hv7j9/L+8cZY2hLyjP9cGY= k8s.io/api v0.21.3/go.mod h1:hUgeYHUbBp23Ue4qdX9tR8/ANi/g3ehylAqDn9NWVOg= k8s.io/api v0.22.1/go.mod h1:bh13rkTp3F1XEaLGykbyRD2QaTTzPm0e/BMd8ptFONY= -k8s.io/api v0.24.0 h1:J0hann2hfxWr1hinZIDefw7Q96wmCBx6SSB8IY0MdDg= k8s.io/api v0.24.0/go.mod h1:5Jl90IUrJHUJYEMANRURMiVvJ0g7Ax7r3R1bqO8zx8I= +k8s.io/api v0.24.2 h1:g518dPU/L7VRLxWfcadQn2OnsiGWVOadTLpdnqgY2OI= +k8s.io/api v0.24.2/go.mod h1:AHqbSkTm6YrQ0ObxjO3Pmp/ubFF/KuM7jU+3khoBsOg= k8s.io/apiextensions-apiserver v0.21.3/go.mod h1:kl6dap3Gd45+21Jnh6utCx8Z2xxLm8LGDkprcd+KbsE= k8s.io/apiextensions-apiserver v0.24.0 h1:JfgFqbA8gKJ/uDT++feAqk9jBIwNnL9YGdQvaI9DLtY= k8s.io/apiextensions-apiserver v0.24.0/go.mod h1:iuVe4aEpe6827lvO6yWQVxiPSpPoSKVjkq+MIdg84cM= k8s.io/apimachinery v0.21.3/go.mod h1:H/IM+5vH9kZRNJ4l3x/fXP/5bOPJaVP/guptnZPeCFI= k8s.io/apimachinery v0.22.1/go.mod h1:O3oNtNadZdeOMxHFVxOreoznohCpy0z6mocxbZr7oJ0= -k8s.io/apimachinery v0.24.0 h1:ydFCyC/DjCvFCHK5OPMKBlxayQytB8pxy8YQInd5UyQ= k8s.io/apimachinery v0.24.0/go.mod h1:82Bi4sCzVBdpYjyI4jY6aHX+YCUchUIrZrXKedjd2UM= +k8s.io/apimachinery v0.24.2 h1:5QlH9SL2C8KMcrNJPor+LbXVTaZRReml7svPEh4OKDM= +k8s.io/apimachinery v0.24.2/go.mod h1:82Bi4sCzVBdpYjyI4jY6aHX+YCUchUIrZrXKedjd2UM= k8s.io/apiserver v0.21.3/go.mod h1:eDPWlZG6/cCCMj/JBcEpDoK+I+6i3r9GsChYBHSbAzU= k8s.io/apiserver v0.24.0/go.mod h1:WFx2yiOMawnogNToVvUYT9nn1jaIkMKj41ZYCVycsBA= +k8s.io/apiserver v0.24.2/go.mod h1:pSuKzr3zV+L+MWqsEo0kHHYwCo77AT5qXbFXP2jbvFI= k8s.io/cli-runtime v0.24.0 h1:ot3Qf49T852uEyNApABO1UHHpFIckKK/NqpheZYN2gM= k8s.io/cli-runtime v0.24.0/go.mod h1:9XxoZDsEkRFUThnwqNviqzljtT/LdHtNWvcNFrAXl0A= k8s.io/client-go v0.21.3/go.mod h1:+VPhCgTsaFmGILxR/7E1N0S+ryO010QBeNCv5JwRGYU= k8s.io/client-go v0.22.1/go.mod h1:BquC5A4UOo4qVDUtoc04/+Nxp1MeHcVc1HJm1KmG8kk= -k8s.io/client-go v0.24.0 h1:lbE4aB1gTHvYFSwm6eD3OF14NhFDKCejlnsGYlSJe5U= k8s.io/client-go v0.24.0/go.mod h1:VFPQET+cAFpYxh6Bq6f4xyMY80G6jKKktU6G0m00VDw= -k8s.io/cloud-provider v0.24.0 h1:kQ6zB2oy0VDl+6vdRAKEbtwDM1MmuhNCyA/v+Fk2g30= -k8s.io/cloud-provider v0.24.0/go.mod h1:cqkEWJWzToaqtS5ti8KQJQcL2IWssWGXHzicxZyaC6s= +k8s.io/client-go v0.24.2 h1:CoXFSf8if+bLEbinDqN9ePIDGzcLtqhfd6jpfnwGOFA= +k8s.io/client-go v0.24.2/go.mod h1:zg4Xaoo+umDsfCWr4fCnmLEtQXyCNXCvJuSsglNcV30= +k8s.io/cloud-provider v0.24.2 h1:DYNf90zS/GAQbEHsTfJsH4Oas7vim4U+WU9GftMQlfs= +k8s.io/cloud-provider v0.24.2/go.mod h1:a7jyWjizk+IKbcIf8+mX2cj3NvpRv9ZyGdXDyb8UEkI= k8s.io/cloud-provider-aws v1.24.0 h1:iQ6gKmRsgUkM0DZopw0/51btpCewHWIsvS1FvCNFUPU= k8s.io/cloud-provider-aws v1.24.0/go.mod h1:rvVGivUlgWPYsJ5X+APJW0njHpeGpi431PAhhIYMYaI= -k8s.io/cloud-provider-gcp/providers v0.23.0 h1:dEfX7Q+r4fbFGu6Jw1P39BNuG0QBWaDL7Tbh0M/IlTM= -k8s.io/cloud-provider-gcp/providers v0.23.0/go.mod h1:ai2EznnKgSAggO1eY71jqkKovlfdpTLlNOgLkMM1h84= k8s.io/code-generator v0.21.3/go.mod h1:K3y0Bv9Cz2cOW2vXUrNZlFbflhuPvuadW6JdnN6gGKo= k8s.io/code-generator v0.22.0/go.mod h1:eV77Y09IopzeXOJzndrDyCI88UBok2h6WxAlBwpxa+o= k8s.io/code-generator v0.24.0/go.mod h1:dpVhs00hTuTdTY6jvVxvTFCk6gSMrtfRydbhZwHI15w= k8s.io/component-base v0.21.3/go.mod h1:kkuhtfEHeZM6LkX0saqSK8PbdO7A0HigUngmhhrwfGQ= -k8s.io/component-base v0.24.0 h1:h5jieHZQoHrY/lHG+HyrSbJeyfuitheBvqvKwKHVC0g= k8s.io/component-base v0.24.0/go.mod h1:Dgazgon0i7KYUsS8krG8muGiMVtUZxG037l1MKyXgrA= +k8s.io/component-base v0.24.2 h1:kwpQdoSfbcH+8MPN4tALtajLDfSfYxBDYlXobNWI6OU= +k8s.io/component-base v0.24.2/go.mod h1:ucHwW76dajvQ9B7+zecZAP3BVqvrHoOxm8olHEg0nmM= k8s.io/component-helpers v0.24.0/go.mod h1:Q2SlLm4h6g6lPTC9GMMfzdywfLSvJT2f1hOnnjaWD8c= -k8s.io/controller-manager v0.24.0/go.mod h1:ageMNQZc7cNH0FF1oarm7wZs6XyJj/V82nNVmgPaeDU= -k8s.io/csi-translation-lib v0.24.0 h1:U56SfLSjpaSkrbR0PdEZXOAKbUKDQP80KV/LwFbix/g= -k8s.io/csi-translation-lib v0.24.0/go.mod h1:jJaC3a1tI3IShByiAQmOOCl5PKpiZ51Vh70c9Eg2msM= +k8s.io/component-helpers v0.24.2/go.mod h1:TRQPBQKfmqkmV6c0HAmUs8cXVNYYYLsXy4zu8eODi9g= +k8s.io/controller-manager v0.24.2/go.mod h1:hpwCof4KxP4vrw/M5QiVxU6Zmmggmr1keGXtjGHF+vc= +k8s.io/csi-translation-lib v0.24.2 h1:RCses0K1DvF8sP+AlaIzXeZeAmCX0awygFf7RAtp18o= +k8s.io/csi-translation-lib v0.24.2/go.mod h1:pdHc2CYLViQYYsOqOp79hjKYi8J4NZ7vpiVzn1SqBrg= k8s.io/gengo v0.0.0-20200413195148-3a45101e95ac/go.mod h1:ezvh/TsK7cY6rbqRK0oQQ8IAqLxYwwyPxAX1Pzy0ii0= k8s.io/gengo v0.0.0-20201203183100-97869a43a9d9/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= k8s.io/gengo v0.0.0-20201214224949-b6c5ce23f027/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= @@ -1966,9 +1982,11 @@ k8s.io/kubectl v0.24.0 h1:nA+WtMLVdXUs4wLogGd1mPTAesnLdBpCVgCmz3I7dXo= k8s.io/kubectl v0.24.0/go.mod h1:pdXkmCyHiRTqjYfyUJiXtbVNURhv0/Q1TyRhy2d5ic0= k8s.io/kubelet v0.24.0 h1:fH+D6mSr4DGIeHp/O2+mCEJhkVq3Gpgv9BVOHI+GrWY= k8s.io/kubelet v0.24.0/go.mod h1:p3BBacmHTCMpUf+nluhlyzuGHmONKAspqCvpu9oPAyA= +k8s.io/legacy-cloud-providers v0.24.2 h1:N1+8whCVyduoUlt2WycT6//kmx7ok957u9gKW9k3hrE= +k8s.io/legacy-cloud-providers v0.24.2/go.mod h1:sgkasgIP2ZOew8fzoOq0mQLVXJ4AmB57IUbFUjzPWEo= k8s.io/metrics v0.24.0/go.mod h1:jrLlFGdKl3X+szubOXPG0Lf2aVxuV3QJcbsgVRAM6fI= -k8s.io/mount-utils v0.24.0 h1:1SCkAY99QUchRa00HkLcm0HXajy8xlWHvue4wYdvBVU= -k8s.io/mount-utils v0.24.0/go.mod h1:XrSqB3a2e8sq+aU+rlbcBtQ3EgcuDk5RP9ZsGxjoDrI= +k8s.io/mount-utils v0.24.2 h1:UTHxyMz2LGBgapLcyl2y2hxWwJHotdmKLqV7CEf0fys= +k8s.io/mount-utils v0.24.2/go.mod h1:XrSqB3a2e8sq+aU+rlbcBtQ3EgcuDk5RP9ZsGxjoDrI= k8s.io/utils v0.0.0-20201110183641-67b214c5f920/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20210707171843-4b05e18ac7d9/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20210722164352-7f3ee0f31471/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= diff --git a/tests/e2e/go.mod b/tests/e2e/go.mod index dca20890e7..648ee8e03d 100644 --- a/tests/e2e/go.mod +++ b/tests/e2e/go.mod @@ -36,8 +36,8 @@ require ( github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 github.com/octago/sflags v0.2.0 github.com/spf13/pflag v1.0.5 - k8s.io/api v0.24.0 - k8s.io/apimachinery v0.24.0 + k8s.io/api v0.24.2 + k8s.io/apimachinery v0.24.2 k8s.io/client-go v9.0.0+incompatible k8s.io/klog/v2 v2.60.1 k8s.io/kops v0.0.0-00010101000000-000000000000 diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/BUILD b/vendor/k8s.io/cloud-provider-gcp/providers/gce/BUILD deleted file mode 100644 index 076ed97fe1..0000000000 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/BUILD +++ /dev/null @@ -1,151 +0,0 @@ -load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") - -go_library( - name = "go_default_library", - srcs = [ - "doc.go", - "gce.go", - "gce_address_manager.go", - "gce_addresses.go", - "gce_alpha.go", - "gce_annotations.go", - "gce_backendservice.go", - "gce_cert.go", - "gce_clusterid.go", - "gce_clusters.go", - "gce_disks.go", - "gce_fake.go", - "gce_firewall.go", - "gce_forwardingrule.go", - "gce_healthchecks.go", - "gce_instancegroup.go", - "gce_instances.go", - "gce_interfaces.go", - "gce_loadbalancer.go", - "gce_loadbalancer_external.go", - "gce_loadbalancer_internal.go", - "gce_loadbalancer_metrics.go", - "gce_loadbalancer_naming.go", - "gce_networkendpointgroup.go", - "gce_routes.go", - "gce_securitypolicy.go", - "gce_targetpool.go", - "gce_targetproxy.go", - "gce_tpu.go", - "gce_urlmap.go", - "gce_util.go", - "gce_zones.go", - "metrics.go", - "support.go", - "token_source.go", - ], - importpath = "k8s.io/cloud-provider-gcp/providers/gce", - visibility = ["//visibility:public"], - deps = [ - "//vendor/cloud.google.com/go/compute/metadata:go_default_library", - "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud:go_default_library", - "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/filter:go_default_library", - "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/meta:go_default_library", - "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/mock:go_default_library", - "//vendor/github.com/google/go-cmp/cmp:go_default_library", - "//vendor/golang.org/x/oauth2:go_default_library", - "//vendor/golang.org/x/oauth2/google:go_default_library", - "//vendor/google.golang.org/api/compute/v0.alpha:go_default_library", - "//vendor/google.golang.org/api/compute/v0.beta:go_default_library", - "//vendor/google.golang.org/api/compute/v1:go_default_library", - "//vendor/google.golang.org/api/container/v1:go_default_library", - "//vendor/google.golang.org/api/googleapi:go_default_library", - "//vendor/google.golang.org/api/option:go_default_library", - "//vendor/google.golang.org/api/tpu/v1:go_default_library", - "//vendor/gopkg.in/gcfg.v1:go_default_library", - "//vendor/k8s.io/api/core/v1:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/fields:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/types:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/util/errors:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/util/version:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/watch:go_default_library", - "//vendor/k8s.io/client-go/informers:go_default_library", - "//vendor/k8s.io/client-go/kubernetes:go_default_library", - "//vendor/k8s.io/client-go/kubernetes/fake:go_default_library", - "//vendor/k8s.io/client-go/kubernetes/scheme:go_default_library", - "//vendor/k8s.io/client-go/kubernetes/typed/core/v1:go_default_library", - "//vendor/k8s.io/client-go/pkg/version:go_default_library", - "//vendor/k8s.io/client-go/tools/cache:go_default_library", - "//vendor/k8s.io/client-go/tools/record:go_default_library", - "//vendor/k8s.io/client-go/util/flowcontrol:go_default_library", - "//vendor/k8s.io/cloud-provider:go_default_library", - "//vendor/k8s.io/cloud-provider/service/helpers:go_default_library", - "//vendor/k8s.io/cloud-provider/volume:go_default_library", - "//vendor/k8s.io/cloud-provider/volume/errors:go_default_library", - "//vendor/k8s.io/cloud-provider/volume/helpers:go_default_library", - "//vendor/k8s.io/component-base/metrics:go_default_library", - "//vendor/k8s.io/component-base/metrics/legacyregistry:go_default_library", - "//vendor/k8s.io/klog/v2:go_default_library", - "//vendor/k8s.io/utils/net:go_default_library", - ], -) - -go_test( - name = "go_default_test", - srcs = [ - "gce_address_manager_test.go", - "gce_annotations_test.go", - "gce_disks_test.go", - "gce_healthchecks_test.go", - "gce_instances_test.go", - "gce_loadbalancer_external_test.go", - "gce_loadbalancer_internal_test.go", - "gce_loadbalancer_metrics_test.go", - "gce_loadbalancer_test.go", - "gce_loadbalancer_utils_test.go", - "gce_test.go", - "gce_util_test.go", - "metrics_test.go", - ], - embed = [":go_default_library"], - deps = [ - "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud:go_default_library", - "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/meta:go_default_library", - "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/mock:go_default_library", - "//vendor/github.com/google/go-cmp/cmp:go_default_library", - "//vendor/github.com/stretchr/testify/assert:go_default_library", - "//vendor/github.com/stretchr/testify/require:go_default_library", - "//vendor/golang.org/x/oauth2/google:go_default_library", - "//vendor/google.golang.org/api/compute/v0.alpha:go_default_library", - "//vendor/google.golang.org/api/compute/v0.beta:go_default_library", - "//vendor/google.golang.org/api/compute/v1:go_default_library", - "//vendor/google.golang.org/api/googleapi:go_default_library", - "//vendor/k8s.io/api/core/v1:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/types:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/util/json:go_default_library", - "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library", - "//vendor/k8s.io/client-go/tools/record:go_default_library", - "//vendor/k8s.io/cloud-provider:go_default_library", - "//vendor/k8s.io/cloud-provider/service/helpers:go_default_library", - "//vendor/k8s.io/utils/net:go_default_library", - ], -) - -filegroup( - name = "package-srcs", - srcs = glob(["**"]), - tags = ["automanaged"], - visibility = ["//visibility:private"], -) - -filegroup( - name = "all-srcs", - srcs = [ - ":package-srcs", - "//providers/gce/gcpcredential:all-srcs", - ], - tags = ["automanaged"], - visibility = ["//visibility:public"], -) diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/OWNERS b/vendor/k8s.io/cloud-provider-gcp/providers/gce/OWNERS deleted file mode 100644 index c4d0ad17bf..0000000000 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/OWNERS +++ /dev/null @@ -1,12 +0,0 @@ -# See the OWNERS docs at https://go.k8s.io/owners -approvers: -- saad-ali -- jingxu97 -- bowei -- freehan -- mrhohn -- cheftako -reviewers: -- cici37 -- jiahuif -- jpbetz diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/LICENSE b/vendor/k8s.io/legacy-cloud-providers/LICENSE similarity index 99% rename from vendor/k8s.io/cloud-provider-gcp/providers/LICENSE rename to vendor/k8s.io/legacy-cloud-providers/LICENSE index d645695673..8dada3edaf 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/LICENSE +++ b/vendor/k8s.io/legacy-cloud-providers/LICENSE @@ -1,4 +1,3 @@ - Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ @@ -179,7 +178,7 @@ APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" + boilerplate notice, with the fields enclosed by brackets "{}" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a @@ -187,7 +186,7 @@ same "printed page" as the copyright notice for easier identification within third-party archives. - Copyright [yyyy] [name of copyright owner] + Copyright {yyyy} {name of copyright owner} Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. diff --git a/vendor/k8s.io/legacy-cloud-providers/gce/OWNERS b/vendor/k8s.io/legacy-cloud-providers/gce/OWNERS new file mode 100644 index 0000000000..f218ab3a1c --- /dev/null +++ b/vendor/k8s.io/legacy-cloud-providers/gce/OWNERS @@ -0,0 +1,10 @@ +# See the OWNERS docs at https://go.k8s.io/owners +# We are no longer accepting features into k8s.io/legacy-cloud-providers. +# Any kind/feature PRs must be approved by SIG Cloud Provider going forward. +emeritus_approvers: + - saad-ali + - jingxu97 + - bowei + - freehan + - mrhohn + - cheftako diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/doc.go b/vendor/k8s.io/legacy-cloud-providers/gce/doc.go similarity index 91% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/doc.go rename to vendor/k8s.io/legacy-cloud-providers/gce/doc.go index d925c25a0a..bfee5f7f3e 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/doc.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/doc.go @@ -16,4 +16,4 @@ limitations under the License. // Package gce is an implementation of Interface, LoadBalancer // and Instances for Google Compute Engine. -package gce // import "k8s.io/cloud-provider-gcp/providers/gce" +package gce // import "k8s.io/legacy-cloud-providers/gce" diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce.go similarity index 96% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce.go index c42334b007..fe5f24a76f 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce.go @@ -94,12 +94,6 @@ var _ cloudprovider.Zones = (*Cloud)(nil) var _ cloudprovider.PVLabeler = (*Cloud)(nil) var _ cloudprovider.Clusters = (*Cloud)(nil) -type StackType string - -const NetworkStackDualStack StackType = "IPV4_IPV6" -const NetworkStackIPV4 StackType = "IPV4" -const NetworkStackIPV6 StackType = "IPV6" - // Cloud is an implementation of Interface, LoadBalancer and Instances for Google Compute Engine. type Cloud struct { // ClusterID contains functionality for getting (and initializing) the ingress-uid. Call Cloud.Initialize() @@ -173,9 +167,9 @@ type Cloud struct { s *cloud.Service metricsCollector loadbalancerMetricsCollector - // stackType indicates whether the cluster is a single stack IPv4, single - // stack IPv6 or a dual stack cluster - stackType StackType + + // the compute API endpoint with the `projects/` element. + projectsBasePath string } // ConfigGlobal is the in memory representation of the gce.conf config data @@ -190,7 +184,6 @@ type ConfigGlobal struct { NetworkProjectID string `gcfg:"network-project-id"` NetworkName string `gcfg:"network-name"` SubnetworkName string `gcfg:"subnetwork-name"` - StackType string `gcfg:"stack-type"` // DEPRECATED: Do not rely on this value as it may be incorrect. // SecondaryRangeName is the name of the secondary range to allocate IP // aliases. The secondary range must be present on the subnetwork the @@ -246,7 +239,6 @@ type CloudConfig struct { TokenSource oauth2.TokenSource UseMetadataServer bool AlphaFeatureGate *AlphaFeatureGate - StackType string } func init() { @@ -404,10 +396,6 @@ func generateCloudConfig(configFile *ConfigFile) (cloudConfig *CloudConfig, err cloudConfig.SecondaryRangeName = configFile.Global.SecondaryRangeName } - if configFile != nil { - cloudConfig.StackType = configFile.Global.StackType - } - return cloudConfig, err } @@ -447,22 +435,18 @@ func CreateGCECloud(config *CloudConfig) (*Cloud, error) { } serviceAlpha.UserAgent = userAgent - // Expect override api endpoint to always be v1 api and follows the same pattern as prod. - // Generate alpha and beta api endpoints based on override v1 api endpoint. - // For example, - // staging API endpoint: https://www.googleapis.com/compute/staging_v1/ if config.APIEndpoint != "" { - service.BasePath = config.APIEndpoint - serviceBeta.BasePath = strings.Replace(config.APIEndpoint, "v1", "beta", -1) - serviceAlpha.BasePath = strings.Replace(config.APIEndpoint, "v1", "alpha", -1) + if strings.HasSuffix(service.BasePath, "/projects/") { + service.BasePath = getProjectsBasePath(config.APIEndpoint) + serviceBeta.BasePath = getProjectsBasePath(strings.Replace(config.APIEndpoint, "v1", "beta", -1)) + serviceAlpha.BasePath = getProjectsBasePath(strings.Replace(config.APIEndpoint, "v1", "alpha", -1)) + } else { + service.BasePath = config.APIEndpoint + serviceBeta.BasePath = strings.Replace(config.APIEndpoint, "v1", "beta", -1) + serviceAlpha.BasePath = strings.Replace(config.APIEndpoint, "v1", "alpha", -1) + } } - // Previously "projects/" was a part of BasePath, but recent changes in Google Cloud SDK removed it from there. - // To bring the old format back we update BasePath including "projects/" there again. - service.BasePath += "projects/" - serviceBeta.BasePath += "projects/" - serviceAlpha.BasePath += "projects/" - containerService, err := container.NewService(context.Background(), option.WithTokenSource(config.TokenSource)) if err != nil { return nil, err @@ -546,7 +530,7 @@ func CreateGCECloud(config *CloudConfig) (*Cloud, error) { AlphaFeatureGate: config.AlphaFeatureGate, nodeZones: map[string]sets.String{}, metricsCollector: newLoadBalancerMetrics(), - stackType: StackType(config.StackType), + projectsBasePath: getProjectsBasePath(service.BasePath), } gce.manager = &gceServiceManager{gce} @@ -816,6 +800,18 @@ func (g *Cloud) HasClusterID() bool { return true } +// getProjectsBasePath returns the compute API endpoint with the `projects/` element. +// The suffix must be added when generating compute resource urls. +func getProjectsBasePath(basePath string) string { + if !strings.HasSuffix(basePath, "/") { + basePath += "/" + } + if !strings.HasSuffix(basePath, "/projects/") { + basePath += "projects/" + } + return basePath +} + // Project IDs cannot have a digit for the first characeter. If the id contains a digit, // then it must be a project number. func isProjectNumber(idOrNumber string) bool { @@ -959,7 +955,7 @@ func newOauthClient(tokenSource oauth2.TokenSource) (*http.Client, error) { func (manager *gceServiceManager) getProjectsAPIEndpoint() string { projectsAPIEndpoint := gceComputeAPIEndpoint + "projects/" if manager.gce.service != nil { - projectsAPIEndpoint = manager.gce.service.BasePath + projectsAPIEndpoint = manager.gce.projectsBasePath } return projectsAPIEndpoint diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_address_manager.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_address_manager.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_address_manager.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_address_manager.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_addresses.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_addresses.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_addresses.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_addresses.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_alpha.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_alpha.go similarity index 88% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_alpha.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_alpha.go index bbc419f23b..64a4f1b236 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_alpha.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_alpha.go @@ -23,6 +23,10 @@ const ( // AlphaFeatureILBSubsets allows InternalLoadBalancer services to include a subset // of cluster nodes as backends instead of all nodes. AlphaFeatureILBSubsets = "ILBSubsets" + + // AlphaFeatureSkipIGsManagement enabled L4 Regional Backend Services and + // disables instance group management in service controller + AlphaFeatureSkipIGsManagement = "SkipIGsManagement" ) // AlphaFeatureGate contains a mapping of alpha features to whether they are enabled diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_annotations.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_annotations.go similarity index 96% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_annotations.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_annotations.go index 2dd59e8da0..f1b4a921ff 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_annotations.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_annotations.go @@ -74,6 +74,13 @@ const ( // NetworkTierAnnotationPremium is an annotation to indicate the Service is on the Premium network tier NetworkTierAnnotationPremium = cloud.NetworkTierPremium + + // RBSAnnotationKey is annotated on a Service object to indicate + // opt-in mode for RBS NetLB + RBSAnnotationKey = "cloud.google.com/l4-rbs" + + // RBSEnabled is an annotation to indicate the Service is opt-in for RBS + RBSEnabled = "enabled" ) // GetLoadBalancerAnnotationType returns the type of GCP load balancer which should be assembled. diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_backendservice.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_backendservice.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_backendservice.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_backendservice.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_cert.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_cert.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_cert.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_cert.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_clusterid.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_clusterid.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_clusterid.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_clusterid.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_clusters.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_clusters.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_clusters.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_clusters.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_disks.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_disks.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_disks.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_disks.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_fake.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_fake.go similarity index 97% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_fake.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_fake.go index 904f39ff43..d9aca0742f 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_fake.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_fake.go @@ -78,6 +78,7 @@ func NewFakeGCECloud(vals TestClusterValues) *Cloud { ClusterID: fakeClusterID(vals.ClusterID), onXPN: vals.OnXPN, metricsCollector: newLoadBalancerMetrics(), + projectsBasePath: getProjectsBasePath(service.BasePath), } c := cloud.NewMockGCE(&gceProjectRouter{gce}) gce.c = c diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_firewall.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_firewall.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_firewall.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_firewall.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_forwardingrule.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_forwardingrule.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_forwardingrule.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_forwardingrule.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_healthchecks.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_healthchecks.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_healthchecks.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_healthchecks.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_instancegroup.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_instancegroup.go similarity index 91% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_instancegroup.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_instancegroup.go index d1e929a867..46c58792b6 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_instancegroup.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_instancegroup.go @@ -50,6 +50,16 @@ func (g *Cloud) DeleteInstanceGroup(name string, zone string) error { return mc.Observe(g.c.InstanceGroups().Delete(ctx, meta.ZonalKey(name, zone))) } +// FilterInstanceGroupsByName lists all InstanceGroups in the project and +// zone that match the name regexp. +func (g *Cloud) FilterInstanceGroupsByNamePrefix(namePrefix, zone string) ([]*compute.InstanceGroup, error) { + ctx, cancel := cloud.ContextWithCallTimeout() + defer cancel() + mc := newInstanceGroupMetricContext("filter", zone) + v, err := g.c.InstanceGroups().List(ctx, zone, filter.Regexp("name", namePrefix+".*")) + return v, mc.Observe(err) +} + // ListInstanceGroups lists all InstanceGroups in the project and // zone. func (g *Cloud) ListInstanceGroups(zone string) ([]*compute.InstanceGroup, error) { diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_instances.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_instances.go similarity index 89% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_instances.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_instances.go index 43e8d469bf..d2de4917f6 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_instances.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_instances.go @@ -45,7 +45,6 @@ import ( const ( defaultZone = "" networkInterfaceIP = "instance/network-interfaces/%s/ip" - networkInterfaceIPV6 = "instance/network-interfaces/%s/ipv6s" networkInterfaceAccessConfigs = "instance/network-interfaces/%s/access-configs" networkInterfaceExternalIP = "instance/network-interfaces/%s/access-configs/%s/external-ip" ) @@ -81,7 +80,7 @@ func makeHostURL(projectsAPIEndpoint, projectID, zone, host string) string { // ToInstanceReferences returns instance references by links func (g *Cloud) ToInstanceReferences(zone string, instanceNames []string) (refs []*compute.InstanceReference) { for _, ins := range instanceNames { - instanceLink := makeHostURL(g.service.BasePath, g.projectID, zone, ins) + instanceLink := makeHostURL(g.projectsBasePath, g.projectID, zone, ins) refs = append(refs, &compute.InstanceReference{Instance: instanceLink}) } return refs @@ -118,27 +117,6 @@ func (g *Cloud) NodeAddresses(ctx context.Context, nodeName types.NodeName) ([]v } nodeAddresses = append(nodeAddresses, v1.NodeAddress{Type: v1.NodeInternalIP, Address: internalIP}) - if g.stackType == NetworkStackDualStack { - // Both internal and external IPv6 addresses are written to this array - ipv6s, err := metadata.Get(fmt.Sprintf(networkInterfaceIPV6, nic)) - if err != nil { - return nil, fmt.Errorf("couldn't get internal IPV6 addresses for node %v: %v", nodeName, err) - } - ipv6Arr := strings.Split(ipv6s, "/\n") - var internalIPV6 string - for _, ip := range ipv6Arr { - if ip == "" { - continue - } - internalIPV6 = ip - break - } - if internalIPV6 != "" { - nodeAddresses = append(nodeAddresses, v1.NodeAddress{Type: v1.NodeInternalIP, Address: internalIPV6}) - } else { - klog.Warningf("internal IPV6 range is empty for node %v", nodeName) - } - } acs, err := metadata.Get(fmt.Sprintf(networkInterfaceAccessConfigs, nic)) if err != nil { return nil, fmt.Errorf("couldn't get access configs: %v", err) @@ -182,21 +160,12 @@ func (g *Cloud) NodeAddresses(ctx context.Context, nodeName types.NodeName) ([]v return nil, fmt.Errorf("couldn't get instance details: %v", err) } - if g.stackType == NetworkStackDualStack { - instance, err := g.c.Instances().Get(timeoutCtx, meta.ZonalKey(canonicalizeInstanceName(instanceObj.Name), instanceObj.Zone)) - if err != nil { - return nil, fmt.Errorf("error while querying for instance: %v", err) - } - - return g.nodeAddressesFromInstance(instance) - } - instance, err := g.c.Instances().Get(timeoutCtx, meta.ZonalKey(canonicalizeInstanceName(instanceObj.Name), instanceObj.Zone)) if err != nil { - return nil, fmt.Errorf("error while querying for instance: %v", err) + return []v1.NodeAddress{}, fmt.Errorf("error while querying for instance: %v", err) } - return g.nodeAddressesFromInstance(instance) + return nodeAddressesFromInstance(instance) } // NodeAddressesByProviderID will not be called from the node that is requesting this ID. @@ -210,21 +179,12 @@ func (g *Cloud) NodeAddressesByProviderID(ctx context.Context, providerID string return []v1.NodeAddress{}, err } - if g.stackType == NetworkStackDualStack { - instance, err := g.c.Instances().Get(timeoutCtx, meta.ZonalKey(canonicalizeInstanceName(name), zone)) - if err != nil { - return []v1.NodeAddress{}, fmt.Errorf("error while querying for providerID %q: %v", providerID, err) - } - - return g.nodeAddressesFromInstance(instance) - } - instance, err := g.c.Instances().Get(timeoutCtx, meta.ZonalKey(canonicalizeInstanceName(name), zone)) if err != nil { return []v1.NodeAddress{}, fmt.Errorf("error while querying for providerID %q: %v", providerID, err) } - return g.nodeAddressesFromInstance(instance) + return nodeAddressesFromInstance(instance) } // instanceByProviderID returns the cloudprovider instance of the node @@ -256,37 +216,22 @@ func (g *Cloud) InstanceShutdown(ctx context.Context, node *v1.Node) (bool, erro return false, cloudprovider.NotImplemented } -func (g *Cloud) nodeAddressesFromInstance(instance *compute.Instance) ([]v1.NodeAddress, error) { +func nodeAddressesFromInstance(instance *compute.Instance) ([]v1.NodeAddress, error) { if len(instance.NetworkInterfaces) < 1 { return nil, fmt.Errorf("could not find network interfaces for instanceID %q", instance.Id) } nodeAddresses := []v1.NodeAddress{} + for _, nic := range instance.NetworkInterfaces { nodeAddresses = append(nodeAddresses, v1.NodeAddress{Type: v1.NodeInternalIP, Address: nic.NetworkIP}) for _, config := range nic.AccessConfigs { nodeAddresses = append(nodeAddresses, v1.NodeAddress{Type: v1.NodeExternalIP, Address: config.NatIP}) } - if g.stackType == NetworkStackDualStack { - ipv6Addr := getIPV6AddressFromInterface(nic) - if ipv6Addr != "" { - nodeAddresses = append(nodeAddresses, v1.NodeAddress{Type: v1.NodeInternalIP, Address: ipv6Addr}) - } - } } return nodeAddresses, nil } -func getIPV6AddressFromInterface(nic *compute.NetworkInterface) string { - ipv6Addr := nic.Ipv6Address - if ipv6Addr == "" && nic.Ipv6AccessType == "EXTERNAL" { - for _, r := range nic.Ipv6AccessConfigs { - ipv6Addr = r.ExternalIpv6 - } - } - return ipv6Addr -} - // InstanceTypeByProviderID returns the cloudprovider instance type of the node // with the specified unique providerID This method will not be called from the // node that is requesting this ID. i.e. metadata service and other local @@ -353,23 +298,19 @@ func (g *Cloud) InstanceMetadata(ctx context.Context, node *v1.Node) (*cloudprov return nil, err } - var addresses []v1.NodeAddress - var instanceType string instance, err := g.c.Instances().Get(timeoutCtx, meta.ZonalKey(canonicalizeInstanceName(name), zone)) if err != nil { return nil, fmt.Errorf("error while querying for providerID %q: %v", providerID, err) } - addresses, err = g.nodeAddressesFromInstance(instance) + addresses, err := nodeAddressesFromInstance(instance) if err != nil { return nil, err } - instanceType = lastComponent(instance.MachineType) - return &cloudprovider.InstanceMetadata{ ProviderID: providerID, - InstanceType: instanceType, + InstanceType: lastComponent(instance.MachineType), NodeAddresses: addresses, Zone: zone, Region: region, @@ -561,8 +502,8 @@ func (g *Cloud) AliasRangesByProviderID(providerID string) (cidrs []string, err return nil, err } - var res *compute.Instance - res, err = g.c.Instances().Get(ctx, meta.ZonalKey(canonicalizeInstanceName(name), zone)) + var res *computebeta.Instance + res, err = g.c.BetaInstances().Get(ctx, meta.ZonalKey(canonicalizeInstanceName(name), zone)) if err != nil { return } @@ -571,16 +512,6 @@ func (g *Cloud) AliasRangesByProviderID(providerID string) (cidrs []string, err for _, r := range networkInterface.AliasIpRanges { cidrs = append(cidrs, r.IpCidrRange) } - if g.stackType == NetworkStackDualStack { - ipv6Addr := getIPV6AddressFromInterface(networkInterface) - if ipv6Addr == "" { - return nil, fmt.Errorf("IPV6 address not found for %s", providerID) - } - // The podCIDR range is the first /112 subrange from the /96 assigned to - // the node - ipv6PodCIDR := fmt.Sprintf("%s/112", ipv6Addr) - cidrs = append(cidrs, ipv6PodCIDR) - } } return } diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_interfaces.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_interfaces.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_interfaces.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_interfaces.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer.go similarity index 95% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer.go index 34d0d771b1..d905620535 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer.go @@ -23,20 +23,19 @@ import ( "context" "flag" "fmt" - "net" "sort" "strings" - "k8s.io/api/core/v1" + v1 "k8s.io/api/core/v1" "k8s.io/klog/v2" "github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud" cloudprovider "k8s.io/cloud-provider" - utilnet "k8s.io/utils/net" + netutils "k8s.io/utils/net" ) type cidrs struct { - ipn utilnet.IPNetSet + ipn netutils.IPNetSet isSet bool } @@ -48,12 +47,12 @@ var ( func init() { var err error // L3/4 health checkers have client addresses within these known CIDRs. - l4LbSrcRngsFlag.ipn, err = utilnet.ParseIPNets([]string{"130.211.0.0/22", "35.191.0.0/16", "209.85.152.0/22", "209.85.204.0/22"}...) + l4LbSrcRngsFlag.ipn, err = netutils.ParseIPNets([]string{"130.211.0.0/22", "35.191.0.0/16", "209.85.152.0/22", "209.85.204.0/22"}...) if err != nil { panic("Incorrect default GCE L3/4 source ranges") } // L7 health checkers have client addresses within these known CIDRs. - l7lbSrcRngsFlag.ipn, err = utilnet.ParseIPNets([]string{"130.211.0.0/22", "35.191.0.0/16"}...) + l7lbSrcRngsFlag.ipn, err = netutils.ParseIPNets([]string{"130.211.0.0/22", "35.191.0.0/16"}...) if err != nil { panic("Incorrect default GCE L7 source ranges") } @@ -74,13 +73,13 @@ func (c *cidrs) Set(value string) error { // On first Set(), clear the original defaults if !c.isSet { c.isSet = true - c.ipn = make(utilnet.IPNetSet) + c.ipn = make(netutils.IPNetSet) } else { return fmt.Errorf("GCE LB CIDRs have already been set") } for _, cidr := range strings.Split(value, ",") { - _, ipnet, err := net.ParseCIDR(cidr) + _, ipnet, err := netutils.ParseCIDRSloppy(cidr) if err != nil { return err } diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_external.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_external.go similarity index 97% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_external.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_external.go index 2058c65659..d1a28a9158 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_external.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_external.go @@ -31,10 +31,11 @@ import ( "k8s.io/apimachinery/pkg/types" utilerrors "k8s.io/apimachinery/pkg/util/errors" "k8s.io/apimachinery/pkg/util/sets" + cloudprovider "k8s.io/cloud-provider" servicehelpers "k8s.io/cloud-provider/service/helpers" utilnet "k8s.io/utils/net" - compute "google.golang.org/api/compute/v1" + "google.golang.org/api/compute/v1" "k8s.io/klog/v2" ) @@ -51,6 +52,11 @@ const ( // new load balancers and updating existing load balancers, recognizing when // each is needed. func (g *Cloud) ensureExternalLoadBalancer(clusterName string, clusterID string, apiService *v1.Service, existingFwdRule *compute.ForwardingRule, nodes []*v1.Node) (*v1.LoadBalancerStatus, error) { + // Skip service handling if it uses Regional Backend Services and handled by other controllers + if usesL4RBS(apiService, existingFwdRule) { + return nil, cloudprovider.ImplementedElsewhere + } + if len(nodes) == 0 { return nil, fmt.Errorf(errStrLbNoHosts) } @@ -82,7 +88,12 @@ func (g *Cloud) ensureExternalLoadBalancer(clusterName string, clusterID string, return nil, err } klog.V(4).Infof("ensureExternalLoadBalancer(%s): Desired network tier %q.", lbRefStr, netTier) - g.deleteWrongNetworkTieredResources(loadBalancerName, lbRefStr, netTier) + // TODO: distinguish between unspecified and specified network tiers annotation properly in forwardingrule creation + // Only delete ForwardingRule when network tier annotation is specified, otherwise leave it only to avoid wrongful + // deletion against user intention when network tier annotation is not specified. + if _, ok := apiService.Annotations[NetworkTierAnnotationKey]; ok { + g.deleteWrongNetworkTieredResources(loadBalancerName, lbRefStr, netTier) + } // Check if the forwarding rule exists, and if so, what its IP is. fwdRuleExists, fwdRuleNeedsUpdate, fwdRuleIP, err := g.forwardingRuleNeedsUpdate(loadBalancerName, g.region, requestedIP, ports) @@ -280,6 +291,11 @@ func (g *Cloud) ensureExternalLoadBalancer(clusterName string, clusterID string, // updateExternalLoadBalancer is the external implementation of LoadBalancer.UpdateLoadBalancer. func (g *Cloud) updateExternalLoadBalancer(clusterName string, service *v1.Service, nodes []*v1.Node) error { + // Skip service update if it uses Regional Backend Services and handled by other controllers + if usesL4RBS(service, nil) { + return cloudprovider.ImplementedElsewhere + } + hosts, err := g.getInstancesByNames(nodeNames(nodes)) if err != nil { return err @@ -291,6 +307,11 @@ func (g *Cloud) updateExternalLoadBalancer(clusterName string, service *v1.Servi // ensureExternalLoadBalancerDeleted is the external implementation of LoadBalancer.EnsureLoadBalancerDeleted func (g *Cloud) ensureExternalLoadBalancerDeleted(clusterName, clusterID string, service *v1.Service) error { + // Skip service deletion if it uses Regional Backend Services and handled by other controllers + if usesL4RBS(service, nil) { + return cloudprovider.ImplementedElsewhere + } + loadBalancerName := g.GetLoadBalancerName(context.TODO(), clusterName, service) serviceName := types.NamespacedName{Namespace: service.Namespace, Name: service.Name} lbRefStr := fmt.Sprintf("%v(%v)", loadBalancerName, serviceName) @@ -448,7 +469,7 @@ func verifyUserRequestedIP(s CloudAddressService, region, requestedIP, fwdRuleIP netTier := cloud.NetworkTierGCEValueToType(netTierStr) if netTier != desiredNetTier { klog.Errorf("verifyUserRequestedIP: requested static IP %q (name: %s) for LB %s has network tier %s, need %s.", requestedIP, existingAddress.Name, lbRef, netTier, desiredNetTier) - return false, fmt.Errorf("requrested IP %q belongs to the %s network tier; expected %s", requestedIP, netTier, desiredNetTier) + return false, fmt.Errorf("requested IP %q belongs to the %s network tier; expected %s", requestedIP, netTier, desiredNetTier) } klog.V(4).Infof("verifyUserRequestedIP: the requested static IP %q (name: %s, tier: %s) for LB %s exists.", requestedIP, existingAddress.Name, netTier, lbRef) return true, nil @@ -633,7 +654,7 @@ func (g *Cloud) updateTargetPool(loadBalancerName string, hosts []*gceInstance) } func (g *Cloud) targetPoolURL(name string) string { - return g.service.BasePath + strings.Join([]string{g.projectID, "regions", g.region, "targetPools", name}, "/") + return g.projectsBasePath + strings.Join([]string{g.projectID, "regions", g.region, "targetPools", name}, "/") } func makeHTTPHealthCheck(name, path string, port int32) *compute.HttpHealthCheck { diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_internal.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_internal.go similarity index 93% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_internal.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_internal.go index b19143359e..b16e5888c4 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_internal.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_internal.go @@ -31,7 +31,7 @@ import ( "github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/meta" "github.com/google/go-cmp/cmp" compute "google.golang.org/api/compute/v1" - "k8s.io/api/core/v1" + v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/sets" cloudprovider "k8s.io/cloud-provider" @@ -53,18 +53,20 @@ const ( ) func (g *Cloud) ensureInternalLoadBalancer(clusterName, clusterID string, svc *v1.Service, existingFwdRule *compute.ForwardingRule, nodes []*v1.Node) (*v1.LoadBalancerStatus, error) { - if g.AlphaFeatureGate.Enabled(AlphaFeatureILBSubsets) && existingFwdRule == nil { - // When ILBSubsets is enabled, new ILB services will not be processed here. - // Services that have existing GCE resources created by this controller will continue to update. - g.eventRecorder.Eventf(svc, v1.EventTypeNormal, "SkippingEnsureInternalLoadBalancer", - "Skipped ensureInternalLoadBalancer since %s feature is enabled.", AlphaFeatureILBSubsets) - return nil, cloudprovider.ImplementedElsewhere - } - if hasFinalizer(svc, ILBFinalizerV2) { - // Another controller is handling the resources for this service. - g.eventRecorder.Eventf(svc, v1.EventTypeNormal, "SkippingEnsureInternalLoadBalancer", - "Skipped ensureInternalLoadBalancer as service contains '%s' finalizer.", ILBFinalizerV2) - return nil, cloudprovider.ImplementedElsewhere + if existingFwdRule == nil && !hasFinalizer(svc, ILBFinalizerV1) { + // Neither the forwarding rule nor the V1 finalizer exists. This is most likely a new service. + if g.AlphaFeatureGate.Enabled(AlphaFeatureILBSubsets) { + // When ILBSubsets is enabled, new ILB services will not be processed here. + // Services that have existing GCE resources created by this controller or the v1 finalizer + // will continue to update. + klog.V(2).Infof("Skipped ensureInternalLoadBalancer for service %s/%s, since %s feature is enabled.", svc.Namespace, svc.Name, AlphaFeatureILBSubsets) + return nil, cloudprovider.ImplementedElsewhere + } + if hasFinalizer(svc, ILBFinalizerV2) { + // No V1 resources present - Another controller is handling the resources for this service. + klog.V(2).Infof("Skipped ensureInternalLoadBalancer for service %s/%s, as service contains %q finalizer.", svc.Namespace, svc.Name, ILBFinalizerV2) + return nil, cloudprovider.ImplementedElsewhere + } } nm := types.NamespacedName{Name: svc.Name, Namespace: svc.Namespace} @@ -200,8 +202,10 @@ func (g *Cloud) ensureInternalLoadBalancer(clusterName, clusterID string, svc *v // Delete existing forwarding rule before making changes to the backend service. For example - changing protocol // of backend service without first deleting forwarding rule will throw an error since the linked forwarding // rule would show the old protocol. - frDiff := cmp.Diff(existingFwdRule, newFwdRule) - klog.V(2).Infof("ensureInternalLoadBalancer(%v): forwarding rule changed - Existing - %+v\n, New - %+v\n, Diff(-existing, +new) - %s\n. Deleting existing forwarding rule.", loadBalancerName, existingFwdRule, newFwdRule, frDiff) + if klogV := klog.V(2); klogV.Enabled() { + frDiff := cmp.Diff(existingFwdRule, newFwdRule) + klogV.Infof("ensureInternalLoadBalancer(%v): forwarding rule changed - Existing - %+v\n, New - %+v\n, Diff(-existing, +new) - %s\n. Deleting existing forwarding rule.", loadBalancerName, existingFwdRule, newFwdRule, frDiff) + } if err = ignoreNotFound(g.DeleteRegionForwardingRule(loadBalancerName, g.region)); err != nil { return nil, err } @@ -275,7 +279,8 @@ func (g *Cloud) clearPreviousInternalResources(svc *v1.Service, loadBalancerName // updateInternalLoadBalancer is called when the list of nodes has changed. Therefore, only the instance groups // and possibly the backend service need to be updated. func (g *Cloud) updateInternalLoadBalancer(clusterName, clusterID string, svc *v1.Service, nodes []*v1.Node) error { - if g.AlphaFeatureGate.Enabled(AlphaFeatureILBSubsets) { + if g.AlphaFeatureGate.Enabled(AlphaFeatureILBSubsets) && !hasFinalizer(svc, ILBFinalizerV1) { + klog.V(2).Infof("Skipped updateInternalLoadBalancer for service %s/%s since it does not contain %q finalizer.", svc.Namespace, svc.Name, ILBFinalizerV1) return cloudprovider.ImplementedElsewhere } g.sharedResourceLock.Lock() @@ -620,11 +625,21 @@ func (g *Cloud) ensureInternalInstanceGroups(name string, nodes []*v1.Node) ([]s klog.V(2).Infof("ensureInternalInstanceGroups(%v): %d nodes over %d zones in region %v", name, len(nodes), len(zonedNodes), g.region) var igLinks []string for zone, nodes := range zonedNodes { - igLink, err := g.ensureInternalInstanceGroup(name, zone, nodes) - if err != nil { - return []string{}, err + if g.AlphaFeatureGate.Enabled(AlphaFeatureSkipIGsManagement) { + igs, err := g.FilterInstanceGroupsByNamePrefix(name, zone) + if err != nil { + return nil, err + } + for _, ig := range igs { + igLinks = append(igLinks, ig.SelfLink) + } + } else { + igLink, err := g.ensureInternalInstanceGroup(name, zone, nodes) + if err != nil { + return nil, err + } + igLinks = append(igLinks, igLink) } - igLinks = append(igLinks, igLink) } return igLinks, nil @@ -637,10 +652,13 @@ func (g *Cloud) ensureInternalInstanceGroupsDeleted(name string) error { return err } - klog.V(2).Infof("ensureInternalInstanceGroupsDeleted(%v): attempting delete instance group in all %d zones", name, len(zones)) - for _, z := range zones { - if err := g.DeleteInstanceGroup(name, z.Name); err != nil && !isNotFoundOrInUse(err) { - return err + // Skip Instance Group deletion if IG management was moved out of k/k code + if !g.AlphaFeatureGate.Enabled(AlphaFeatureSkipIGsManagement) { + klog.V(2).Infof("ensureInternalInstanceGroupsDeleted(%v): attempting delete instance group in all %d zones", name, len(zones)) + for _, z := range zones { + if err := g.DeleteInstanceGroup(name, z.Name); err != nil && !isNotFoundOrInUse(err) { + return err + } } } return nil @@ -884,7 +902,7 @@ func getPortRanges(ports []int) (ranges []string) { } func (g *Cloud) getBackendServiceLink(name string) string { - return g.service.BasePath + strings.Join([]string{g.projectID, "regions", g.region, "backendServices", name}, "/") + return g.projectsBasePath + strings.Join([]string{g.projectID, "regions", g.region, "backendServices", name}, "/") } func getNameFromLink(link string) string { diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_metrics.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_metrics.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_metrics.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_metrics.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_naming.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_naming.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_loadbalancer_naming.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_loadbalancer_naming.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_networkendpointgroup.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_networkendpointgroup.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_networkendpointgroup.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_networkendpointgroup.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_routes.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_routes.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_routes.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_routes.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_securitypolicy.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_securitypolicy.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_securitypolicy.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_securitypolicy.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_targetpool.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_targetpool.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_targetpool.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_targetpool.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_targetproxy.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_targetproxy.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_targetproxy.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_targetproxy.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_tpu.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_tpu.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_tpu.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_tpu.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_urlmap.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_urlmap.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_urlmap.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_urlmap.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_util.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_util.go similarity index 92% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_util.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_util.go index 2afa83e628..0a2729dd88 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_util.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_util.go @@ -31,20 +31,24 @@ import ( "sync" "cloud.google.com/go/compute/metadata" - "github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud" "github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/meta" "github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/mock" - compute "google.golang.org/api/compute/v1" "google.golang.org/api/googleapi" - "k8s.io/api/core/v1" + v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/client-go/kubernetes/fake" v1core "k8s.io/client-go/kubernetes/typed/core/v1" servicehelper "k8s.io/cloud-provider/service/helpers" + netutils "k8s.io/utils/net" +) + +const ( + // NetLBFinalizerV2 is the finalizer used by newer controllers that manage L4 External LoadBalancer services. + NetLBFinalizerV2 = "gke.networking.io/l4-netlb-v2" ) func fakeGCECloud(vals TestClusterValues) (*Cloud, error) { @@ -121,7 +125,7 @@ type gceInstance struct { var ( autoSubnetIPRange = &net.IPNet{ - IP: net.ParseIP("10.128.0.0"), + IP: netutils.ParseIPSloppy("10.128.0.0"), Mask: net.CIDRMask(9, 32), } ) @@ -306,7 +310,7 @@ func lastIPInRange(cidr *net.IPNet) net.IP { func subnetsInCIDR(subnets []*compute.Subnetwork, cidr *net.IPNet) ([]*compute.Subnetwork, error) { var res []*compute.Subnetwork for _, subnet := range subnets { - _, subnetRange, err := net.ParseCIDR(subnet.IpCidrRange) + _, subnetRange, err := netutils.ParseCIDRSloppy(subnet.IpCidrRange) if err != nil { return nil, fmt.Errorf("unable to parse CIDR %q for subnet %q: %v", subnet.IpCidrRange, subnet.Name, err) } @@ -389,3 +393,23 @@ func removeString(slice []string, s string) []string { } return newSlice } + +// usesL4RBS checks if service uses Regional Backend Service as a Backend. +// Such services implemented in other controllers and +// should not be handled by Service Controller. +func usesL4RBS(service *v1.Service, forwardingRule *compute.ForwardingRule) bool { + // Detect RBS by annotation + if val, ok := service.Annotations[RBSAnnotationKey]; ok && val == RBSEnabled { + return true + } + // Detect RBS by finalizer + if hasFinalizer(service, NetLBFinalizerV2) { + return true + } + // Detect RBS by existing forwarding rule with Backend Service attached + if forwardingRule != nil && forwardingRule.BackendService != "" { + return true + } + + return false +} diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_zones.go b/vendor/k8s.io/legacy-cloud-providers/gce/gce_zones.go similarity index 98% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_zones.go rename to vendor/k8s.io/legacy-cloud-providers/gce/gce_zones.go index c193252d48..9ddeaafc2d 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/gce_zones.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/gce_zones.go @@ -91,5 +91,5 @@ func (g *Cloud) ListZonesInRegion(region string) ([]*compute.Zone, error) { } func (g *Cloud) getRegionLink(region string) string { - return g.service.BasePath + strings.Join([]string{g.projectID, "regions", region}, "/") + return g.projectsBasePath + strings.Join([]string{g.projectID, "regions", region}, "/") } diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/metrics.go b/vendor/k8s.io/legacy-cloud-providers/gce/metrics.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/metrics.go rename to vendor/k8s.io/legacy-cloud-providers/gce/metrics.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/support.go b/vendor/k8s.io/legacy-cloud-providers/gce/support.go similarity index 100% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/support.go rename to vendor/k8s.io/legacy-cloud-providers/gce/support.go diff --git a/vendor/k8s.io/cloud-provider-gcp/providers/gce/token_source.go b/vendor/k8s.io/legacy-cloud-providers/gce/token_source.go similarity index 98% rename from vendor/k8s.io/cloud-provider-gcp/providers/gce/token_source.go rename to vendor/k8s.io/legacy-cloud-providers/gce/token_source.go index 3f8715dcd1..c7cd742dca 100644 --- a/vendor/k8s.io/cloud-provider-gcp/providers/gce/token_source.go +++ b/vendor/k8s.io/legacy-cloud-providers/gce/token_source.go @@ -44,7 +44,7 @@ const ( /* * By default, all the following metrics are defined as falling under - * ALPHA stability level https://github.com/kubernetes/enhancements/blob/master/keps/sig-instrumentation/1209-metrics-stability/20190404-kubernetes-control-plane-metrics-stability.md#stability-classes) + * ALPHA stability level https://github.com/kubernetes/enhancements/blob/master/keps/sig-instrumentation/1209-metrics-stability/kubernetes-control-plane-metrics-stability.md#stability-classes) * * Promoting the stability level of the metric is a responsibility of the component owner, since it * involves explicitly acknowledging support for the metric across multiple releases, in accordance with diff --git a/vendor/modules.txt b/vendor/modules.txt index 0f0edfb178..0c97c4e021 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1156,7 +1156,7 @@ helm.sh/helm/v3/pkg/helmpath/xdg helm.sh/helm/v3/pkg/plugin helm.sh/helm/v3/pkg/registry helm.sh/helm/v3/pkg/strvals -# k8s.io/api v0.24.0 +# k8s.io/api v0.24.2 ## explicit; go 1.16 k8s.io/api/admission/v1 k8s.io/api/admission/v1beta1 @@ -1210,7 +1210,7 @@ k8s.io/api/storage/v1beta1 ## explicit; go 1.16 k8s.io/apiextensions-apiserver/pkg/apis/apiextensions k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1 -# k8s.io/apimachinery v0.24.0 +# k8s.io/apimachinery v0.24.2 ## explicit; go 1.16 k8s.io/apimachinery/pkg/api/equality k8s.io/apimachinery/pkg/api/errors @@ -1272,7 +1272,7 @@ k8s.io/apimachinery/third_party/forked/golang/reflect k8s.io/cli-runtime/pkg/genericclioptions k8s.io/cli-runtime/pkg/printers k8s.io/cli-runtime/pkg/resource -# k8s.io/client-go v0.24.0 +# k8s.io/client-go v0.24.2 ## explicit; go 1.16 k8s.io/client-go/applyconfigurations/admissionregistration/v1 k8s.io/client-go/applyconfigurations/admissionregistration/v1beta1 @@ -1569,7 +1569,7 @@ k8s.io/client-go/util/jsonpath k8s.io/client-go/util/keyutil k8s.io/client-go/util/retry k8s.io/client-go/util/workqueue -# k8s.io/cloud-provider v0.24.0 +# k8s.io/cloud-provider v0.24.2 ## explicit; go 1.16 k8s.io/cloud-provider k8s.io/cloud-provider/node/helpers @@ -1580,10 +1580,7 @@ k8s.io/cloud-provider/volume/helpers # k8s.io/cloud-provider-aws v1.24.0 ## explicit; go 1.18 k8s.io/cloud-provider-aws/pkg/providers/v1 -# k8s.io/cloud-provider-gcp/providers v0.23.0 -## explicit; go 1.17 -k8s.io/cloud-provider-gcp/providers/gce -# k8s.io/component-base v0.24.0 +# k8s.io/component-base v0.24.2 ## explicit; go 1.16 k8s.io/component-base/config k8s.io/component-base/config/v1alpha1 @@ -1591,7 +1588,7 @@ k8s.io/component-base/metrics k8s.io/component-base/metrics/legacyregistry k8s.io/component-base/metrics/prometheus/restclient k8s.io/component-base/version -# k8s.io/csi-translation-lib v0.24.0 +# k8s.io/csi-translation-lib v0.24.2 ## explicit; go 1.16 k8s.io/csi-translation-lib/plugins # k8s.io/gengo v0.0.0-20220307231824-4627b89bbf1b @@ -1644,7 +1641,10 @@ k8s.io/kubectl/pkg/validation # k8s.io/kubelet v0.24.0 ## explicit; go 1.16 k8s.io/kubelet/config/v1beta1 -# k8s.io/mount-utils v0.24.0 +# k8s.io/legacy-cloud-providers v0.24.2 +## explicit; go 1.16 +k8s.io/legacy-cloud-providers/gce +# k8s.io/mount-utils v0.24.2 ## explicit; go 1.16 k8s.io/mount-utils # k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9