Update dependencies

This commit is contained in:
github-actions 2022-09-02 06:25:10 +00:00
parent ad0e720801
commit 93149ad320
55 changed files with 1087 additions and 341 deletions

18
go.mod
View File

@ -14,7 +14,7 @@ require (
github.com/Masterminds/sprig/v3 v3.2.2 github.com/Masterminds/sprig/v3 v3.2.2
github.com/apparentlymart/go-cidr v1.1.0 github.com/apparentlymart/go-cidr v1.1.0
github.com/aws/amazon-ec2-instance-selector/v2 v2.4.0 github.com/aws/amazon-ec2-instance-selector/v2 v2.4.0
github.com/aws/aws-sdk-go v1.44.85 github.com/aws/aws-sdk-go v1.44.90
github.com/blang/semver/v4 v4.0.0 github.com/blang/semver/v4 v4.0.0
github.com/cert-manager/cert-manager v1.9.1 github.com/cert-manager/cert-manager v1.9.1
github.com/digitalocean/godo v1.83.0 github.com/digitalocean/godo v1.83.0
@ -26,8 +26,8 @@ require (
github.com/google/go-tpm v0.3.3 github.com/google/go-tpm v0.3.3
github.com/google/go-tpm-tools v0.3.9 github.com/google/go-tpm-tools v0.3.9
github.com/google/uuid v1.3.0 github.com/google/uuid v1.3.0
github.com/gophercloud/gophercloud v0.25.0 github.com/gophercloud/gophercloud v1.0.0
github.com/hashicorp/hcl/v2 v2.13.0 github.com/hashicorp/hcl/v2 v2.14.0
github.com/hashicorp/vault/api v1.7.2 github.com/hashicorp/vault/api v1.7.2
github.com/hetznercloud/hcloud-go v1.35.2 github.com/hetznercloud/hcloud-go v1.35.2
github.com/jacksontj/memberlistmesh v0.0.0-20190905163944-93462b9d2bb7 github.com/jacksontj/memberlistmesh v0.0.0-20190905163944-93462b9d2bb7
@ -39,16 +39,16 @@ require (
github.com/spf13/cobra v1.5.0 github.com/spf13/cobra v1.5.0
github.com/spf13/pflag v1.0.5 github.com/spf13/pflag v1.0.5
github.com/spf13/viper v1.12.0 github.com/spf13/viper v1.12.0
github.com/spotinst/spotinst-sdk-go v1.126.0 github.com/spotinst/spotinst-sdk-go v1.127.0
github.com/stretchr/testify v1.8.0 github.com/stretchr/testify v1.8.0
github.com/weaveworks/mesh v0.0.0-20191105120815-58dbcc3e8e63 github.com/weaveworks/mesh v0.0.0-20191105120815-58dbcc3e8e63
github.com/zclconf/go-cty v1.11.0 github.com/zclconf/go-cty v1.11.0
go.uber.org/multierr v1.8.0 go.uber.org/multierr v1.8.0
golang.org/x/crypto v0.0.0-20220824171710-5757bc0c5503 golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90
golang.org/x/net v0.0.0-20220822230855-b0a4917ee28c golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b
golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094 golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094
golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde
golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64 golang.org/x/sys v0.0.0-20220829200755-d48e67d00261
google.golang.org/api v0.94.0 google.golang.org/api v0.94.0
gopkg.in/gcfg.v1 v1.2.3 gopkg.in/gcfg.v1 v1.2.3
gopkg.in/inf.v0 v0.9.1 gopkg.in/inf.v0 v0.9.1
@ -58,10 +58,10 @@ require (
k8s.io/apimachinery v0.25.0 k8s.io/apimachinery v0.25.0
k8s.io/cli-runtime v0.25.0 k8s.io/cli-runtime v0.25.0
k8s.io/client-go v0.25.0 k8s.io/client-go v0.25.0
k8s.io/cloud-provider-aws v1.24.1 k8s.io/cloud-provider-aws v1.25.0
k8s.io/component-base v0.25.0 k8s.io/component-base v0.25.0
k8s.io/gengo v0.0.0-20220613173612-397b4ae3bce7 k8s.io/gengo v0.0.0-20220613173612-397b4ae3bce7
k8s.io/klog/v2 v2.70.1 k8s.io/klog/v2 v2.80.0
k8s.io/kubectl v0.25.0 k8s.io/kubectl v0.25.0
k8s.io/kubelet v0.25.0 k8s.io/kubelet v0.25.0
k8s.io/legacy-cloud-providers v0.25.0 k8s.io/legacy-cloud-providers v0.25.0

36
go.sum
View File

@ -181,8 +181,8 @@ github.com/aws/amazon-ec2-instance-selector/v2 v2.4.0/go.mod h1:AEJrtkLkCkfIBIaz
github.com/aws/aws-sdk-go v1.23.20/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= 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.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.36.30/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
github.com/aws/aws-sdk-go v1.44.85 h1:JM2rkKY/GtTDCQXW0StkImbLn6n4Q/Dm2bj+u1rm7Kw= github.com/aws/aws-sdk-go v1.44.90 h1:5g93WPWhh8EL2HhQ7HOYapWj/gY6/K6rGYSx1RTyD1M=
github.com/aws/aws-sdk-go v1.44.85/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go v1.44.90/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM=
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA= github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q=
@ -579,8 +579,8 @@ github.com/googleapis/gnostic v0.5.5/go.mod h1:7+EbHbldMins07ALC74bsA81Ovc97Dwqy
github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4= github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4=
github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= 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/gookit/color v1.4.2/go.mod h1:fqRyamkC1W8uxl+lxCQxOT09l/vYfZ+QeiX3rKQHCoQ=
github.com/gophercloud/gophercloud v0.25.0 h1:C3Oae7y0fUVQGSsBrb3zliAjdX+riCSEh4lNMejFNI4= github.com/gophercloud/gophercloud v1.0.0 h1:9nTGx0jizmHxDobe4mck89FyQHVyA3CaXLIUSGJjP9k=
github.com/gophercloud/gophercloud v0.25.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c= github.com/gophercloud/gophercloud v1.0.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c=
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
github.com/gordonklaus/ineffassign v0.0.0-20200309095847-7953dde2c7bf/go.mod h1:cuNKsD1zp2v6XfE/orVX2QE1LC+i254ceGcVeDT3pTU= github.com/gordonklaus/ineffassign v0.0.0-20200309095847-7953dde2c7bf/go.mod h1:cuNKsD1zp2v6XfE/orVX2QE1LC+i254ceGcVeDT3pTU=
github.com/gordonklaus/ineffassign v0.0.0-20210225214923-2e10b2664254/go.mod h1:M9mZEtGIsR1oDaZagNPNG9iq9n2HrhZ17dsXk73V3Lw= github.com/gordonklaus/ineffassign v0.0.0-20210225214923-2e10b2664254/go.mod h1:M9mZEtGIsR1oDaZagNPNG9iq9n2HrhZ17dsXk73V3Lw=
@ -673,8 +673,8 @@ github.com/hashicorp/golang-lru v0.5.4 h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+l
github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4= github.com/hashicorp/golang-lru v0.5.4/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=
github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4= github.com/hashicorp/hcl v1.0.0 h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=
github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ= github.com/hashicorp/hcl v1.0.0/go.mod h1:E5yfLk+7swimpb2L/Alb/PJmXilQ/rhwaUYs4T20WEQ=
github.com/hashicorp/hcl/v2 v2.13.0 h1:0Apadu1w6M11dyGFxWnmhhcMjkbAiKCv7G1r/2QgCNc= github.com/hashicorp/hcl/v2 v2.14.0 h1:jX6+Q38Ly9zaAJlAjnFVyeNSNCKKW8D0wvyg7vij5Wc=
github.com/hashicorp/hcl/v2 v2.13.0/go.mod h1:e4z5nxYlWNPdDSNYX+ph14EvWYMFm3eP0zIUqPc2jr0= github.com/hashicorp/hcl/v2 v2.14.0/go.mod h1:e4z5nxYlWNPdDSNYX+ph14EvWYMFm3eP0zIUqPc2jr0=
github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64= github.com/hashicorp/logutils v1.0.0/go.mod h1:QIAnNjmIWmVIIkWDTG1z5v++HQmx9WQRO+LraFDTW64=
github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ= github.com/hashicorp/mdns v1.0.0/go.mod h1:tL+uN++7HEJ6SQLQ2/p+z2pH24WQKWjBPkE0mNTz8vQ=
github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY= github.com/hashicorp/mdns v1.0.1/go.mod h1:4gW7WsVCke5TE7EPeYliwHlRUyBtfCwuFwuMg2DmyNY=
@ -1128,8 +1128,8 @@ github.com/spf13/viper v1.8.1/go.mod h1:o0Pch8wJ9BVSWGQMbra6iw0oQ5oktSIBaujf1rJH
github.com/spf13/viper v1.9.0/go.mod h1:+i6ajR7OX2XaiBkrcZJFK21htRk7eDeLg7+O6bhUPP4= github.com/spf13/viper v1.9.0/go.mod h1:+i6ajR7OX2XaiBkrcZJFK21htRk7eDeLg7+O6bhUPP4=
github.com/spf13/viper v1.12.0 h1:CZ7eSOd3kZoaYDLbXnmzgQI5RlciuXBMA+18HwHRfZQ= github.com/spf13/viper v1.12.0 h1:CZ7eSOd3kZoaYDLbXnmzgQI5RlciuXBMA+18HwHRfZQ=
github.com/spf13/viper v1.12.0/go.mod h1:b6COn30jlNxbm/V2IqWiNWkJ+vZNiMNksliPCiuKtSI= github.com/spf13/viper v1.12.0/go.mod h1:b6COn30jlNxbm/V2IqWiNWkJ+vZNiMNksliPCiuKtSI=
github.com/spotinst/spotinst-sdk-go v1.126.0 h1:EoWBduyoyXwr+0E3YGXFvhKVPPqCkYOrG5T50i4+Tk4= github.com/spotinst/spotinst-sdk-go v1.127.0 h1:Jw8D357nRZwI5xr/zwog4cD6szaWsUAfms1rlIo5T3k=
github.com/spotinst/spotinst-sdk-go v1.126.0/go.mod h1:C6mrT7+mqOgPyabacjyYTvilu8Xm96mvTvrZQhj99WI= github.com/spotinst/spotinst-sdk-go v1.127.0/go.mod h1:C6mrT7+mqOgPyabacjyYTvilu8Xm96mvTvrZQhj99WI=
github.com/ssgreg/nlreturn/v2 v2.2.1/go.mod h1:E/iiPB78hV7Szg2YfRgyIrk1AD6JVMTRkkxBiELzh2I= github.com/ssgreg/nlreturn/v2 v2.2.1/go.mod h1:E/iiPB78hV7Szg2YfRgyIrk1AD6JVMTRkkxBiELzh2I=
github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
@ -1297,8 +1297,8 @@ golang.org/x/crypto v0.0.0-20211202192323-5770296d904e/go.mod h1:IxCIyHEi3zRg3s0
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220824171710-5757bc0c5503 h1:vJ2V3lFLg+bBhgroYuRfyN583UzVveQmIXjc8T/y3to= golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90 h1:Y/gsMcFOcR+6S6f3YeMKl5g+dZMEWqcz5Czj/GWYbkM=
golang.org/x/crypto v0.0.0-20220824171710-5757bc0c5503/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
@ -1410,8 +1410,8 @@ golang.org/x/net v0.0.0-20220412020605-290c469a71a5/go.mod h1:CfG3xpIq0wQ8r1q4Su
golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=
golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220822230855-b0a4917ee28c h1:JVAXQ10yGGVbSyoer5VILysz6YKjdNT2bsvlayjqhes= golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b h1:ZmngSVLe/wycRns9MKikG9OWIEjGcGAkacif7oYQaUY=
golang.org/x/net v0.0.0-20220822230855-b0a4917ee28c/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@ -1561,8 +1561,8 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64 h1:UiNENfZ8gDvpiWw7IpOMQ27spWmThO1RwwdQVbJahJM= golang.org/x/sys v0.0.0-20220829200755-d48e67d00261 h1:v6hYoSR9T5oet+pMXwUWkbiVqx/63mlHjefrHmxwfeY=
golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220829200755-d48e67d00261/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210220032956-6a3ed077a48d/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
@ -1990,8 +1990,8 @@ k8s.io/client-go v0.25.0 h1:CVWIaCETLMBNiTUta3d5nzRbXvY5Hy9Dpl+VvREpu5E=
k8s.io/client-go v0.25.0/go.mod h1:lxykvypVfKilxhTklov0wz1FoaUZ8X4EwbhS6rpRfN8= k8s.io/client-go v0.25.0/go.mod h1:lxykvypVfKilxhTklov0wz1FoaUZ8X4EwbhS6rpRfN8=
k8s.io/cloud-provider v0.25.0 h1:ONX5BON6f1Mxa2GWvPyKn+QsZXaLauPUte7MZxfWUro= k8s.io/cloud-provider v0.25.0 h1:ONX5BON6f1Mxa2GWvPyKn+QsZXaLauPUte7MZxfWUro=
k8s.io/cloud-provider v0.25.0/go.mod h1:afVfVCIYOUER914WmSp0QpAtJn12gv4qu9NMT4XBxZo= k8s.io/cloud-provider v0.25.0/go.mod h1:afVfVCIYOUER914WmSp0QpAtJn12gv4qu9NMT4XBxZo=
k8s.io/cloud-provider-aws v1.24.1 h1:fkObuh5BbhsG92QYu9UqXX6p7ftXFWczBZ5jOCu4wGk= k8s.io/cloud-provider-aws v1.25.0 h1:kTnNfMA4FDDAdPXWjc+aj8IzSn3iqMUqWTMmzElyCIs=
k8s.io/cloud-provider-aws v1.24.1/go.mod h1:eFRohHt6As2t0MkYHo7YLqN91GEXKx17uNBi1hBuCEs= k8s.io/cloud-provider-aws v1.25.0/go.mod h1:RaSxyc4nlJkBLSuKEf6rLA2gLhfbU7GrTGhGSYvVFsY=
k8s.io/code-generator v0.21.3/go.mod h1:K3y0Bv9Cz2cOW2vXUrNZlFbflhuPvuadW6JdnN6gGKo= 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.22.0/go.mod h1:eV77Y09IopzeXOJzndrDyCI88UBok2h6WxAlBwpxa+o=
k8s.io/code-generator v0.24.2/go.mod h1:dpVhs00hTuTdTY6jvVxvTFCk6gSMrtfRydbhZwHI15w= k8s.io/code-generator v0.24.2/go.mod h1:dpVhs00hTuTdTY6jvVxvTFCk6gSMrtfRydbhZwHI15w=
@ -2018,8 +2018,8 @@ k8s.io/klog/v2 v2.8.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec=
k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec=
k8s.io/klog/v2 v2.10.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= k8s.io/klog/v2 v2.10.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec=
k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.70.1 h1:7aaoSdahviPmR+XkS7FyxlkkXs6tHISSG03RxleQAVQ= k8s.io/klog/v2 v2.80.0 h1:lyJt0TWMPaGoODa8B8bUuxgHS3W/m/bNr2cca3brA/g=
k8s.io/klog/v2 v2.70.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= k8s.io/klog/v2 v2.80.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/kube-openapi v0.0.0-20210305001622-591a79e4bda7/go.mod h1:wXW5VT87nVfh/iLV8FpR2uDvrFyomxbtb1KivDbvPTE= k8s.io/kube-openapi v0.0.0-20210305001622-591a79e4bda7/go.mod h1:wXW5VT87nVfh/iLV8FpR2uDvrFyomxbtb1KivDbvPTE=
k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw= k8s.io/kube-openapi v0.0.0-20210421082810-95288971da7e/go.mod h1:vHXdDvt9+2spS2Rx9ql3I8tycm3H9FDfdUoIuKCefvw=
k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk= k8s.io/kube-openapi v0.0.0-20220328201542-3ee0da9b0b42/go.mod h1:Z/45zLw8lUo4wdiUkI+v/ImEGAvu3WatcZl3lPMR4Rk=

View File

@ -15,7 +15,7 @@ require (
k8s.io/api v0.25.0 k8s.io/api v0.25.0
k8s.io/apimachinery v0.25.0 k8s.io/apimachinery v0.25.0
k8s.io/client-go v11.0.1-0.20190805182717-6502b5e7b1b5+incompatible k8s.io/client-go v11.0.1-0.20190805182717-6502b5e7b1b5+incompatible
k8s.io/klog/v2 v2.70.1 k8s.io/klog/v2 v2.80.0
k8s.io/kops v1.24.1 k8s.io/kops v1.24.1
sigs.k8s.io/boskos v0.0.0-20220704141725-37bd9bb41b86 sigs.k8s.io/boskos v0.0.0-20220704141725-37bd9bb41b86
sigs.k8s.io/kubetest2 v0.0.0-20220801170629-1284e5ada592 sigs.k8s.io/kubetest2 v0.0.0-20220801170629-1284e5ada592
@ -38,7 +38,7 @@ require (
github.com/apparentlymart/go-cidr v1.1.0 // indirect github.com/apparentlymart/go-cidr v1.1.0 // indirect
github.com/armon/go-metrics v0.3.10 // indirect github.com/armon/go-metrics v0.3.10 // indirect
github.com/armon/go-radix v1.0.0 // indirect github.com/armon/go-radix v1.0.0 // indirect
github.com/aws/aws-sdk-go v1.44.85 // indirect github.com/aws/aws-sdk-go v1.44.90 // indirect
github.com/beorn7/perks v1.0.1 // indirect github.com/beorn7/perks v1.0.1 // indirect
github.com/blang/semver v3.5.1+incompatible // indirect github.com/blang/semver v3.5.1+incompatible // indirect
github.com/cenkalti/backoff/v3 v3.0.0 // indirect github.com/cenkalti/backoff/v3 v3.0.0 // indirect
@ -78,7 +78,7 @@ require (
github.com/google/uuid v1.3.0 // indirect github.com/google/uuid v1.3.0 // indirect
github.com/googleapis/enterprise-certificate-proxy v0.1.0 // indirect github.com/googleapis/enterprise-certificate-proxy v0.1.0 // indirect
github.com/googleapis/gax-go/v2 v2.4.0 // indirect github.com/googleapis/gax-go/v2 v2.4.0 // indirect
github.com/gophercloud/gophercloud v0.25.0 // indirect github.com/gophercloud/gophercloud v1.0.0 // indirect
github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
github.com/hashicorp/go-hclog v1.2.0 // indirect github.com/hashicorp/go-hclog v1.2.0 // indirect
@ -146,11 +146,11 @@ require (
go.opencensus.io v0.23.0 // indirect go.opencensus.io v0.23.0 // indirect
go.uber.org/atomic v1.9.0 // indirect go.uber.org/atomic v1.9.0 // indirect
go4.org v0.0.0-20201209231011-d4a079459e60 // indirect go4.org v0.0.0-20201209231011-d4a079459e60 // indirect
golang.org/x/crypto v0.0.0-20220824171710-5757bc0c5503 // indirect golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90 // indirect
golang.org/x/net v0.0.0-20220822230855-b0a4917ee28c // indirect golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b // indirect
golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094 // indirect golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094 // indirect
golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde // indirect golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde // indirect
golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64 // indirect golang.org/x/sys v0.0.0-20220829200755-d48e67d00261 // indirect
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 // indirect golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 // indirect
golang.org/x/text v0.3.7 // indirect golang.org/x/text v0.3.7 // indirect
golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 // indirect golang.org/x/time v0.0.0-20220210224613-90d013bbcef8 // indirect

View File

@ -346,8 +346,8 @@ github.com/aws/aws-sdk-go v1.31.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZve
github.com/aws/aws-sdk-go v1.34.28/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48= github.com/aws/aws-sdk-go v1.34.28/go.mod h1:H7NKnBqNVzoTJpGfLrQkkD+ytBA93eiDYi/+8rV9s48=
github.com/aws/aws-sdk-go v1.36.30/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-sdk-go v1.36.30/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
github.com/aws/aws-sdk-go v1.37.22/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-sdk-go v1.37.22/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro=
github.com/aws/aws-sdk-go v1.44.85 h1:JM2rkKY/GtTDCQXW0StkImbLn6n4Q/Dm2bj+u1rm7Kw= github.com/aws/aws-sdk-go v1.44.90 h1:5g93WPWhh8EL2HhQ7HOYapWj/gY6/K6rGYSx1RTyD1M=
github.com/aws/aws-sdk-go v1.44.85/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go v1.44.90/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo=
github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59/go.mod h1:q/89r3U2H7sSsE2t6Kca0lfwTK8JdoNGS/yzM/4iH5I= github.com/aybabtme/rgbterm v0.0.0-20170906152045-cc83f3b3ce59/go.mod h1:q/89r3U2H7sSsE2t6Kca0lfwTK8JdoNGS/yzM/4iH5I=
github.com/bazelbuild/buildtools v0.0.0-20190917191645-69366ca98f89/go.mod h1:5JP0TXzWDHXv8qvxRC4InIazwdyDseBDbzESUMKk1yU= github.com/bazelbuild/buildtools v0.0.0-20190917191645-69366ca98f89/go.mod h1:5JP0TXzWDHXv8qvxRC4InIazwdyDseBDbzESUMKk1yU=
github.com/bazelbuild/buildtools v0.0.0-20200922170545-10384511ce98/go.mod h1:5JP0TXzWDHXv8qvxRC4InIazwdyDseBDbzESUMKk1yU= github.com/bazelbuild/buildtools v0.0.0-20200922170545-10384511ce98/go.mod h1:5JP0TXzWDHXv8qvxRC4InIazwdyDseBDbzESUMKk1yU=
@ -1191,8 +1191,8 @@ github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+
github.com/gookit/color v1.2.4/go.mod h1:AhIE+pS6D4Ql0SQWbBeXPHw7gY0/sjHoA4s/n1KB7xg= github.com/gookit/color v1.2.4/go.mod h1:AhIE+pS6D4Ql0SQWbBeXPHw7gY0/sjHoA4s/n1KB7xg=
github.com/gookit/color v1.4.2/go.mod h1:fqRyamkC1W8uxl+lxCQxOT09l/vYfZ+QeiX3rKQHCoQ= 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.1.0/go.mod h1:vxM41WHh5uqHVBMZHzuwNOHh8XEoIEcSTewFxm1c5g8=
github.com/gophercloud/gophercloud v0.25.0 h1:C3Oae7y0fUVQGSsBrb3zliAjdX+riCSEh4lNMejFNI4= github.com/gophercloud/gophercloud v1.0.0 h1:9nTGx0jizmHxDobe4mck89FyQHVyA3CaXLIUSGJjP9k=
github.com/gophercloud/gophercloud v0.25.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c= github.com/gophercloud/gophercloud v1.0.0/go.mod h1:Q8fZtyi5zZxPS/j9aj3sSxtvj41AdQMDwyo1myduD5c=
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
github.com/gordonklaus/ineffassign v0.0.0-20200309095847-7953dde2c7bf/go.mod h1:cuNKsD1zp2v6XfE/orVX2QE1LC+i254ceGcVeDT3pTU= github.com/gordonklaus/ineffassign v0.0.0-20200309095847-7953dde2c7bf/go.mod h1:cuNKsD1zp2v6XfE/orVX2QE1LC+i254ceGcVeDT3pTU=
github.com/gordonklaus/ineffassign v0.0.0-20210225214923-2e10b2664254/go.mod h1:M9mZEtGIsR1oDaZagNPNG9iq9n2HrhZ17dsXk73V3Lw= github.com/gordonklaus/ineffassign v0.0.0-20210225214923-2e10b2664254/go.mod h1:M9mZEtGIsR1oDaZagNPNG9iq9n2HrhZ17dsXk73V3Lw=
@ -2357,8 +2357,8 @@ golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5y
golang.org/x/crypto v0.0.0-20211202192323-5770296d904e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20211202192323-5770296d904e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/crypto v0.0.0-20220824171710-5757bc0c5503 h1:vJ2V3lFLg+bBhgroYuRfyN583UzVveQmIXjc8T/y3to= golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90 h1:Y/gsMcFOcR+6S6f3YeMKl5g+dZMEWqcz5Czj/GWYbkM=
golang.org/x/crypto v0.0.0-20220824171710-5757bc0c5503/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4=
golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/exp v0.0.0-20190125153040-c74c464bbbf2/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190125153040-c74c464bbbf2/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
@ -2494,8 +2494,8 @@ golang.org/x/net v0.0.0-20220412020605-290c469a71a5/go.mod h1:CfG3xpIq0wQ8r1q4Su
golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220425223048-2871e0cb64e4/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk=
golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.0.0-20220624214902-1bab6f366d9e/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.0.0-20220822230855-b0a4917ee28c h1:JVAXQ10yGGVbSyoer5VILysz6YKjdNT2bsvlayjqhes= golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b h1:ZmngSVLe/wycRns9MKikG9OWIEjGcGAkacif7oYQaUY=
golang.org/x/net v0.0.0-20220822230855-b0a4917ee28c/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
golang.org/x/oauth2 v0.0.0-20180724155351-3d292e4d0cdc/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20180724155351-3d292e4d0cdc/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/oauth2 v0.0.0-20181017192945-9dcd33a902f4/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20181017192945-9dcd33a902f4/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
@ -2695,8 +2695,8 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220610221304-9f5ed59c137d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220624220833-87e55d714810/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64 h1:UiNENfZ8gDvpiWw7IpOMQ27spWmThO1RwwdQVbJahJM= golang.org/x/sys v0.0.0-20220829200755-d48e67d00261 h1:v6hYoSR9T5oet+pMXwUWkbiVqx/63mlHjefrHmxwfeY=
golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220829200755-d48e67d00261/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20210615171337-6886f2dfbf5b/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
@ -3348,8 +3348,8 @@ k8s.io/klog/v2 v2.8.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec=
k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec= k8s.io/klog/v2 v2.9.0/go.mod h1:hy9LJ/NvuK+iVyP4Ehqva4HxZG/oXyIS3n3Jmire4Ec=
k8s.io/klog/v2 v2.30.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= k8s.io/klog/v2 v2.30.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= k8s.io/klog/v2 v2.60.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/klog/v2 v2.70.1 h1:7aaoSdahviPmR+XkS7FyxlkkXs6tHISSG03RxleQAVQ= k8s.io/klog/v2 v2.80.0 h1:lyJt0TWMPaGoODa8B8bUuxgHS3W/m/bNr2cca3brA/g=
k8s.io/klog/v2 v2.70.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= k8s.io/klog/v2 v2.80.0/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0=
k8s.io/kube-openapi v0.0.0-20180731170545-e3762e86a74c/go.mod h1:BXM9ceUBTj2QnfH2MK1odQs778ajze1RxcmP6S8RVVc= k8s.io/kube-openapi v0.0.0-20180731170545-e3762e86a74c/go.mod h1:BXM9ceUBTj2QnfH2MK1odQs778ajze1RxcmP6S8RVVc=
k8s.io/kube-openapi v0.0.0-20190228160746-b3a7cee44a30/go.mod h1:BXM9ceUBTj2QnfH2MK1odQs778ajze1RxcmP6S8RVVc= k8s.io/kube-openapi v0.0.0-20190228160746-b3a7cee44a30/go.mod h1:BXM9ceUBTj2QnfH2MK1odQs778ajze1RxcmP6S8RVVc=
k8s.io/kube-openapi v0.0.0-20190816220812-743ec37842bf/go.mod h1:1TqjTSzOxsLGIKfj0lK8EeCP7K1iUG65v09OM0/WG5E= k8s.io/kube-openapi v0.0.0-20190816220812-743ec37842bf/go.mod h1:1TqjTSzOxsLGIKfj0lK8EeCP7K1iUG65v09OM0/WG5E=

View File

@ -33,6 +33,7 @@ const (
EuWest1RegionID = "eu-west-1" // Europe (Ireland). EuWest1RegionID = "eu-west-1" // Europe (Ireland).
EuWest2RegionID = "eu-west-2" // Europe (London). EuWest2RegionID = "eu-west-2" // Europe (London).
EuWest3RegionID = "eu-west-3" // Europe (Paris). EuWest3RegionID = "eu-west-3" // Europe (Paris).
MeCentral1RegionID = "me-central-1" // Middle East (UAE).
MeSouth1RegionID = "me-south-1" // Middle East (Bahrain). MeSouth1RegionID = "me-south-1" // Middle East (Bahrain).
SaEast1RegionID = "sa-east-1" // South America (Sao Paulo). SaEast1RegionID = "sa-east-1" // South America (Sao Paulo).
UsEast1RegionID = "us-east-1" // US East (N. Virginia). UsEast1RegionID = "us-east-1" // US East (N. Virginia).
@ -186,6 +187,9 @@ var awsPartition = partition{
"eu-west-3": region{ "eu-west-3": region{
Description: "Europe (Paris)", Description: "Europe (Paris)",
}, },
"me-central-1": region{
Description: "Middle East (UAE)",
},
"me-south-1": region{ "me-south-1": region{
Description: "Middle East (Bahrain)", Description: "Middle East (Bahrain)",
}, },
@ -314,6 +318,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -437,6 +444,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -1298,6 +1308,14 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{
Hostname: "api.ecr.me-central-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "me-central-1",
},
},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{ }: endpoint{
@ -1948,9 +1966,18 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "ap-southeast-2", Region: "ap-southeast-2",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "ap-southeast-3",
}: endpoint{},
endpointKey{ endpointKey{
Region: "ca-central-1", Region: "ca-central-1",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "ca-central-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "apigateway-fips.ca-central-1.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "eu-central-1", Region: "eu-central-1",
}: endpoint{}, }: endpoint{},
@ -1969,6 +1996,54 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "fips-ca-central-1",
}: endpoint{
Hostname: "apigateway-fips.ca-central-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "ca-central-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-east-1",
}: endpoint{
Hostname: "apigateway-fips.us-east-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-east-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-east-2",
}: endpoint{
Hostname: "apigateway-fips.us-east-2.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-east-2",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-west-1",
}: endpoint{
Hostname: "apigateway-fips.us-west-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-west-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-west-2",
}: endpoint{
Hostname: "apigateway-fips.us-west-2.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-west-2",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -1978,15 +2053,39 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "us-east-1", Region: "us-east-1",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "us-east-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "apigateway-fips.us-east-1.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "us-east-2", Region: "us-east-2",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "us-east-2",
Variant: fipsVariant,
}: endpoint{
Hostname: "apigateway-fips.us-east-2.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "us-west-1", Region: "us-west-1",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "us-west-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "apigateway-fips.us-west-1.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "us-west-2", Region: "us-west-2",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "us-west-2",
Variant: fipsVariant,
}: endpoint{
Hostname: "apigateway-fips.us-west-2.amazonaws.com",
},
}, },
}, },
"app-integrations": service{ "app-integrations": service{
@ -2073,6 +2172,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -2267,6 +2369,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -2836,6 +2941,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "ap-southeast-2", Region: "ap-southeast-2",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "ap-southeast-3",
}: endpoint{},
endpointKey{ endpointKey{
Region: "ca-central-1", Region: "ca-central-1",
}: endpoint{}, }: endpoint{},
@ -3032,6 +3140,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -3462,6 +3573,94 @@ var awsPartition = partition{
}, },
}, },
}, },
"cassandra": service{
Endpoints: serviceEndpoints{
endpointKey{
Region: "ap-east-1",
}: endpoint{},
endpointKey{
Region: "ap-northeast-1",
}: endpoint{},
endpointKey{
Region: "ap-northeast-2",
}: endpoint{},
endpointKey{
Region: "ap-south-1",
}: endpoint{},
endpointKey{
Region: "ap-southeast-1",
}: endpoint{},
endpointKey{
Region: "ap-southeast-2",
}: endpoint{},
endpointKey{
Region: "ca-central-1",
}: endpoint{},
endpointKey{
Region: "eu-central-1",
}: endpoint{},
endpointKey{
Region: "eu-north-1",
}: endpoint{},
endpointKey{
Region: "eu-west-1",
}: endpoint{},
endpointKey{
Region: "eu-west-2",
}: endpoint{},
endpointKey{
Region: "eu-west-3",
}: endpoint{},
endpointKey{
Region: "fips-us-east-1",
}: endpoint{
Hostname: "cassandra-fips.us-east-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-east-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-west-2",
}: endpoint{
Hostname: "cassandra-fips.us-west-2.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-west-2",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "me-south-1",
}: endpoint{},
endpointKey{
Region: "sa-east-1",
}: endpoint{},
endpointKey{
Region: "us-east-1",
}: endpoint{},
endpointKey{
Region: "us-east-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "cassandra-fips.us-east-1.amazonaws.com",
},
endpointKey{
Region: "us-east-2",
}: endpoint{},
endpointKey{
Region: "us-west-1",
}: endpoint{},
endpointKey{
Region: "us-west-2",
}: endpoint{},
endpointKey{
Region: "us-west-2",
Variant: fipsVariant,
}: endpoint{
Hostname: "cassandra-fips.us-west-2.amazonaws.com",
},
},
},
"catalog.marketplace": service{ "catalog.marketplace": service{
Endpoints: serviceEndpoints{ Endpoints: serviceEndpoints{
endpointKey{ endpointKey{
@ -3796,6 +3995,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -4095,6 +4297,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -4513,6 +4718,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -5525,6 +5733,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -5647,6 +5858,115 @@ var awsPartition = partition{
}: endpoint{}, }: endpoint{},
}, },
}, },
"controltower": service{
Endpoints: serviceEndpoints{
endpointKey{
Region: "ap-northeast-1",
}: endpoint{},
endpointKey{
Region: "ap-northeast-2",
}: endpoint{},
endpointKey{
Region: "ap-south-1",
}: endpoint{},
endpointKey{
Region: "ap-southeast-1",
}: endpoint{},
endpointKey{
Region: "ap-southeast-2",
}: endpoint{},
endpointKey{
Region: "ca-central-1",
}: endpoint{},
endpointKey{
Region: "ca-central-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "controltower-fips.ca-central-1.amazonaws.com",
},
endpointKey{
Region: "ca-central-1-fips",
}: endpoint{
Hostname: "controltower-fips.ca-central-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "ca-central-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "eu-central-1",
}: endpoint{},
endpointKey{
Region: "eu-north-1",
}: endpoint{},
endpointKey{
Region: "eu-west-1",
}: endpoint{},
endpointKey{
Region: "eu-west-2",
}: endpoint{},
endpointKey{
Region: "eu-west-3",
}: endpoint{},
endpointKey{
Region: "sa-east-1",
}: endpoint{},
endpointKey{
Region: "us-east-1",
}: endpoint{},
endpointKey{
Region: "us-east-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "controltower-fips.us-east-1.amazonaws.com",
},
endpointKey{
Region: "us-east-1-fips",
}: endpoint{
Hostname: "controltower-fips.us-east-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-east-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "us-east-2",
}: endpoint{},
endpointKey{
Region: "us-east-2",
Variant: fipsVariant,
}: endpoint{
Hostname: "controltower-fips.us-east-2.amazonaws.com",
},
endpointKey{
Region: "us-east-2-fips",
}: endpoint{
Hostname: "controltower-fips.us-east-2.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-east-2",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "us-west-2",
}: endpoint{},
endpointKey{
Region: "us-west-2",
Variant: fipsVariant,
}: endpoint{
Hostname: "controltower-fips.us-west-2.amazonaws.com",
},
endpointKey{
Region: "us-west-2-fips",
}: endpoint{
Hostname: "controltower-fips.us-west-2.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-west-2",
},
Deprecated: boxedTrue,
},
},
},
"cur": service{ "cur": service{
Endpoints: serviceEndpoints{ Endpoints: serviceEndpoints{
endpointKey{ endpointKey{
@ -6438,6 +6758,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -6654,6 +6977,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -7138,6 +7464,9 @@ var awsPartition = partition{
Region: "us-east-1", Region: "us-east-1",
}, },
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -7481,6 +7810,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -7635,6 +7967,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -7901,6 +8236,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -8602,6 +8940,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -8755,6 +9096,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -9170,6 +9514,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -9336,6 +9683,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -12609,6 +12959,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -13065,6 +13418,15 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{
Region: "me-central-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "kms-fips.me-central-1.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "me-central-1-fips", Region: "me-central-1-fips",
}: endpoint{ }: endpoint{
@ -13493,6 +13855,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -13962,6 +14327,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -14939,6 +15307,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -15287,6 +15658,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -16300,6 +16674,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -17082,6 +17459,12 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "ca-central-1", Region: "ca-central-1",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "ca-central-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "rbin-fips.ca-central-1.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "eu-central-1", Region: "eu-central-1",
}: endpoint{}, }: endpoint{},
@ -17100,6 +17483,54 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "fips-ca-central-1",
}: endpoint{
Hostname: "rbin-fips.ca-central-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "ca-central-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-east-1",
}: endpoint{
Hostname: "rbin-fips.us-east-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-east-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-east-2",
}: endpoint{
Hostname: "rbin-fips.us-east-2.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-east-2",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-west-1",
}: endpoint{
Hostname: "rbin-fips.us-west-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-west-1",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "fips-us-west-2",
}: endpoint{
Hostname: "rbin-fips.us-west-2.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-west-2",
},
Deprecated: boxedTrue,
},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -17109,15 +17540,39 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "us-east-1", Region: "us-east-1",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "us-east-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "rbin-fips.us-east-1.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "us-east-2", Region: "us-east-2",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "us-east-2",
Variant: fipsVariant,
}: endpoint{
Hostname: "rbin-fips.us-east-2.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "us-west-1", Region: "us-west-1",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "us-west-1",
Variant: fipsVariant,
}: endpoint{
Hostname: "rbin-fips.us-west-1.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "us-west-2", Region: "us-west-2",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "us-west-2",
Variant: fipsVariant,
}: endpoint{
Hostname: "rbin-fips.us-west-2.amazonaws.com",
},
}, },
}, },
"rds": service{ "rds": service{
@ -17185,6 +17640,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -17610,6 +18068,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -18884,6 +19345,15 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{
Region: "me-central-1",
Variant: dualStackVariant,
}: endpoint{
Hostname: "s3.dualstack.me-central-1.amazonaws.com",
},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -19805,6 +20275,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -21309,6 +21782,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -21445,6 +21921,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -21593,6 +22072,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -21836,6 +22318,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -22101,6 +22586,9 @@ var awsPartition = partition{
Region: "us-east-1", Region: "us-east-1",
}, },
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -22180,6 +22668,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -22372,6 +22863,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -22502,6 +22996,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -22596,6 +23093,9 @@ var awsPartition = partition{
endpointKey{ endpointKey{
Region: "eu-west-3", Region: "eu-west-3",
}: endpoint{}, }: endpoint{},
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -24846,6 +25346,9 @@ var awsPartition = partition{
}, },
Deprecated: boxedTrue, Deprecated: boxedTrue,
}, },
endpointKey{
Region: "me-central-1",
}: endpoint{},
endpointKey{ endpointKey{
Region: "me-south-1", Region: "me-south-1",
}: endpoint{}, }: endpoint{},
@ -25183,6 +25686,16 @@ var awscnPartition = partition{
}, },
}, },
}, },
"cassandra": service{
Endpoints: serviceEndpoints{
endpointKey{
Region: "cn-north-1",
}: endpoint{},
endpointKey{
Region: "cn-northwest-1",
}: endpoint{},
},
},
"ce": service{ "ce": service{
PartitionEndpoint: "aws-cn-global", PartitionEndpoint: "aws-cn-global",
IsRegionalized: boxedFalse, IsRegionalized: boxedFalse,
@ -27315,6 +27828,26 @@ var awsusgovPartition = partition{
}, },
}, },
}, },
"cassandra": service{
Endpoints: serviceEndpoints{
endpointKey{
Region: "us-gov-east-1",
}: endpoint{
Hostname: "cassandra.us-gov-east-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-gov-east-1",
},
},
endpointKey{
Region: "us-gov-west-1",
}: endpoint{
Hostname: "cassandra.us-gov-west-1.amazonaws.com",
CredentialScope: credentialScope{
Region: "us-gov-west-1",
},
},
},
},
"cloudcontrolapi": service{ "cloudcontrolapi": service{
Endpoints: serviceEndpoints{ Endpoints: serviceEndpoints{
endpointKey{ endpointKey{

View File

@ -5,4 +5,4 @@ package aws
const SDKName = "aws-sdk-go" const SDKName = "aws-sdk-go"
// SDKVersion is the version of this SDK // SDKVersion is the version of this SDK
const SDKVersion = "1.44.85" const SDKVersion = "1.44.90"

View File

@ -7824,9 +7824,6 @@ func (s *AlarmIdentifier) SetRegion(v string) *AlarmIdentifier {
// //
// When creating resource record sets for a private hosted zone, note the following: // When creating resource record sets for a private hosted zone, note the following:
// //
// - Creating geolocation alias resource record sets or latency alias resource
// record sets in a private hosted zone is unsupported.
//
// - For information about creating failover resource record sets in a private // - For information about creating failover resource record sets in a private
// hosted zone, see Configuring Failover in a Private Hosted Zone (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html). // hosted zone, see Configuring Failover in a Private Hosted Zone (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html).
type AliasTarget struct { type AliasTarget struct {
@ -18053,9 +18050,6 @@ type ResourceRecordSet struct {
// * You can't create an alias resource record set in a private hosted zone // * You can't create an alias resource record set in a private hosted zone
// to route traffic to a CloudFront distribution. // to route traffic to a CloudFront distribution.
// //
// * Creating geolocation alias resource record sets or latency alias resource
// record sets in a private hosted zone is unsupported.
//
// * For information about creating failover resource record sets in a private // * For information about creating failover resource record sets in a private
// hosted zone, see Configuring Failover in a Private Hosted Zone (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html) // hosted zone, see Configuring Failover in a Private Hosted Zone (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-private-hosted-zones.html)
// in the Amazon Route 53 Developer Guide. // in the Amazon Route 53 Developer Guide.

View File

@ -6,6 +6,18 @@
// Amazon Route 53 is a highly available and scalable Domain Name System (DNS) // Amazon Route 53 is a highly available and scalable Domain Name System (DNS)
// web service. // web service.
// //
// You can use Route 53 to:
//
// - Register domain names. For more information, see How domain registration
// works (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-domain-registration.html).
//
// - Route internet traffic to the resources for your domain For more information,
// see How internet traffic is routed to your website or web application
// (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-dns-service.html).
//
// - Check the health of your resources. For more information, see How Route
// 53 checks the health of your resources (https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/welcome-health-checks.html).
//
// See https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01 for more information on this service. // See https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01 for more information on this service.
// //
// See route53 package documentation for more information. // See route53 package documentation for more information.

View File

@ -156,8 +156,7 @@ func (c *SSO) ListAccountRolesRequest(input *ListAccountRolesInput) (req *reques
// ListAccountRoles API operation for AWS Single Sign-On. // ListAccountRoles API operation for AWS Single Sign-On.
// //
// Lists all roles that are assigned to the user for a given Amazon Web Services // Lists all roles that are assigned to the user for a given AWS account.
// account.
// //
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about // with awserr.Error's Code and Message methods to get detailed information about
@ -306,10 +305,10 @@ func (c *SSO) ListAccountsRequest(input *ListAccountsInput) (req *request.Reques
// ListAccounts API operation for AWS Single Sign-On. // ListAccounts API operation for AWS Single Sign-On.
// //
// Lists all Amazon Web Services accounts assigned to the user. These Amazon // Lists all AWS accounts assigned to the user. These AWS accounts are assigned
// Web Services accounts are assigned by the administrator of the account. For // by the administrator of the account. For more information, see Assign User
// more information, see Assign User Access (https://docs.aws.amazon.com/singlesignon/latest/userguide/useraccess.html#assignusers) // Access (https://docs.aws.amazon.com/singlesignon/latest/userguide/useraccess.html#assignusers)
// in the Amazon Web Services SSO User Guide. This operation returns a paginated // in the IAM Identity Center User Guide. This operation returns a paginated
// response. // response.
// //
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
@ -455,20 +454,20 @@ func (c *SSO) LogoutRequest(input *LogoutInput) (req *request.Request, output *L
// Logout API operation for AWS Single Sign-On. // Logout API operation for AWS Single Sign-On.
// //
// Removes the locally stored SSO tokens from the client-side cache and sends // Removes the locally stored SSO tokens from the client-side cache and sends
// an API call to the Amazon Web Services SSO service to invalidate the corresponding // an API call to the IAM Identity Center service to invalidate the corresponding
// server-side Amazon Web Services SSO sign in session. // server-side IAM Identity Center sign in session.
// //
// If a user uses Amazon Web Services SSO to access the AWS CLI, the users // If a user uses IAM Identity Center to access the AWS CLI, the users IAM
// Amazon Web Services SSO sign in session is used to obtain an IAM session, // Identity Center sign in session is used to obtain an IAM session, as specified
// as specified in the corresponding Amazon Web Services SSO permission set. // in the corresponding IAM Identity Center permission set. More specifically,
// More specifically, Amazon Web Services SSO assumes an IAM role in the target // IAM Identity Center assumes an IAM role in the target account on behalf of
// account on behalf of the user, and the corresponding temporary Amazon Web // the user, and the corresponding temporary AWS credentials are returned to
// Services credentials are returned to the client. // the client.
// //
// After user logout, any existing IAM role sessions that were created by using // After user logout, any existing IAM role sessions that were created by using
// Amazon Web Services SSO permission sets continue based on the duration configured // IAM Identity Center permission sets continue based on the duration configured
// in the permission set. For more information, see User authentications (https://docs.aws.amazon.com/singlesignon/latest/userguide/authconcept.html) // in the permission set. For more information, see User authentications (https://docs.aws.amazon.com/singlesignon/latest/userguide/authconcept.html)
// in the Amazon Web Services SSO User Guide. // in the IAM Identity Center User Guide.
// //
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about // with awserr.Error's Code and Message methods to get detailed information about
@ -513,20 +512,17 @@ func (c *SSO) LogoutWithContext(ctx aws.Context, input *LogoutInput, opts ...req
return out, req.Send() return out, req.Send()
} }
// Provides information about your Amazon Web Services account. // Provides information about your AWS account.
type AccountInfo struct { type AccountInfo struct {
_ struct{} `type:"structure"` _ struct{} `type:"structure"`
// The identifier of the Amazon Web Services account that is assigned to the // The identifier of the AWS account that is assigned to the user.
// user.
AccountId *string `locationName:"accountId" type:"string"` AccountId *string `locationName:"accountId" type:"string"`
// The display name of the Amazon Web Services account that is assigned to the // The display name of the AWS account that is assigned to the user.
// user.
AccountName *string `locationName:"accountName" type:"string"` AccountName *string `locationName:"accountName" type:"string"`
// The email address of the Amazon Web Services account that is assigned to // The email address of the AWS account that is assigned to the user.
// the user.
EmailAddress *string `locationName:"emailAddress" min:"1" type:"string"` EmailAddress *string `locationName:"emailAddress" min:"1" type:"string"`
} }
@ -571,7 +567,7 @@ type GetRoleCredentialsInput struct {
// The token issued by the CreateToken API call. For more information, see CreateToken // The token issued by the CreateToken API call. For more information, see CreateToken
// (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html) // (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html)
// in the Amazon Web Services SSO OIDC API Reference Guide. // in the IAM Identity Center OIDC API Reference Guide.
// //
// AccessToken is a sensitive parameter and its value will be // AccessToken is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by GetRoleCredentialsInput's // replaced with "sensitive" in string returned by GetRoleCredentialsInput's
@ -580,8 +576,7 @@ type GetRoleCredentialsInput struct {
// AccessToken is a required field // AccessToken is a required field
AccessToken *string `location:"header" locationName:"x-amz-sso_bearer_token" type:"string" required:"true" sensitive:"true"` AccessToken *string `location:"header" locationName:"x-amz-sso_bearer_token" type:"string" required:"true" sensitive:"true"`
// The identifier for the Amazon Web Services account that is assigned to the // The identifier for the AWS account that is assigned to the user.
// user.
// //
// AccountId is a required field // AccountId is a required field
AccountId *string `location:"querystring" locationName:"account_id" type:"string" required:"true"` AccountId *string `location:"querystring" locationName:"account_id" type:"string" required:"true"`
@ -748,7 +743,7 @@ type ListAccountRolesInput struct {
// The token issued by the CreateToken API call. For more information, see CreateToken // The token issued by the CreateToken API call. For more information, see CreateToken
// (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html) // (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html)
// in the Amazon Web Services SSO OIDC API Reference Guide. // in the IAM Identity Center OIDC API Reference Guide.
// //
// AccessToken is a sensitive parameter and its value will be // AccessToken is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by ListAccountRolesInput's // replaced with "sensitive" in string returned by ListAccountRolesInput's
@ -757,8 +752,7 @@ type ListAccountRolesInput struct {
// AccessToken is a required field // AccessToken is a required field
AccessToken *string `location:"header" locationName:"x-amz-sso_bearer_token" type:"string" required:"true" sensitive:"true"` AccessToken *string `location:"header" locationName:"x-amz-sso_bearer_token" type:"string" required:"true" sensitive:"true"`
// The identifier for the Amazon Web Services account that is assigned to the // The identifier for the AWS account that is assigned to the user.
// user.
// //
// AccountId is a required field // AccountId is a required field
AccountId *string `location:"querystring" locationName:"account_id" type:"string" required:"true"` AccountId *string `location:"querystring" locationName:"account_id" type:"string" required:"true"`
@ -878,7 +872,7 @@ type ListAccountsInput struct {
// The token issued by the CreateToken API call. For more information, see CreateToken // The token issued by the CreateToken API call. For more information, see CreateToken
// (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html) // (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html)
// in the Amazon Web Services SSO OIDC API Reference Guide. // in the IAM Identity Center OIDC API Reference Guide.
// //
// AccessToken is a sensitive parameter and its value will be // AccessToken is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by ListAccountsInput's // replaced with "sensitive" in string returned by ListAccountsInput's
@ -993,7 +987,7 @@ type LogoutInput struct {
// The token issued by the CreateToken API call. For more information, see CreateToken // The token issued by the CreateToken API call. For more information, see CreateToken
// (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html) // (https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html)
// in the Amazon Web Services SSO OIDC API Reference Guide. // in the IAM Identity Center OIDC API Reference Guide.
// //
// AccessToken is a sensitive parameter and its value will be // AccessToken is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by LogoutInput's // replaced with "sensitive" in string returned by LogoutInput's
@ -1132,18 +1126,17 @@ type RoleCredentials struct {
_ struct{} `type:"structure"` _ struct{} `type:"structure"`
// The identifier used for the temporary security credentials. For more information, // The identifier used for the temporary security credentials. For more information,
// see Using Temporary Security Credentials to Request Access to Amazon Web // see Using Temporary Security Credentials to Request Access to AWS Resources
// Services Resources (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) // (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)
// in the Amazon Web Services IAM User Guide. // in the AWS IAM User Guide.
AccessKeyId *string `locationName:"accessKeyId" type:"string"` AccessKeyId *string `locationName:"accessKeyId" type:"string"`
// The date on which temporary security credentials expire. // The date on which temporary security credentials expire.
Expiration *int64 `locationName:"expiration" type:"long"` Expiration *int64 `locationName:"expiration" type:"long"`
// The key that is used to sign the request. For more information, see Using // The key that is used to sign the request. For more information, see Using
// Temporary Security Credentials to Request Access to Amazon Web Services Resources // Temporary Security Credentials to Request Access to AWS Resources (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)
// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) // in the AWS IAM User Guide.
// in the Amazon Web Services IAM User Guide.
// //
// SecretAccessKey is a sensitive parameter and its value will be // SecretAccessKey is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by RoleCredentials's // replaced with "sensitive" in string returned by RoleCredentials's
@ -1151,9 +1144,8 @@ type RoleCredentials struct {
SecretAccessKey *string `locationName:"secretAccessKey" type:"string" sensitive:"true"` SecretAccessKey *string `locationName:"secretAccessKey" type:"string" sensitive:"true"`
// The token used for temporary credentials. For more information, see Using // The token used for temporary credentials. For more information, see Using
// Temporary Security Credentials to Request Access to Amazon Web Services Resources // Temporary Security Credentials to Request Access to AWS Resources (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html)
// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) // in the AWS IAM User Guide.
// in the Amazon Web Services IAM User Guide.
// //
// SessionToken is a sensitive parameter and its value will be // SessionToken is a sensitive parameter and its value will be
// replaced with "sensitive" in string returned by RoleCredentials's // replaced with "sensitive" in string returned by RoleCredentials's
@ -1207,7 +1199,7 @@ func (s *RoleCredentials) SetSessionToken(v string) *RoleCredentials {
type RoleInfo struct { type RoleInfo struct {
_ struct{} `type:"structure"` _ struct{} `type:"structure"`
// The identifier of the Amazon Web Services account assigned to the user. // The identifier of the AWS account assigned to the user.
AccountId *string `locationName:"accountId" type:"string"` AccountId *string `locationName:"accountId" type:"string"`
// The friendly name of the role that is assigned to the user. // The friendly name of the role that is assigned to the user.

View File

@ -3,25 +3,24 @@
// Package sso provides the client and types for making API // Package sso provides the client and types for making API
// requests to AWS Single Sign-On. // requests to AWS Single Sign-On.
// //
// Amazon Web Services Single Sign On Portal is a web service that makes it // AWS IAM Identity Center (successor to AWS Single Sign-On) Portal is a web
// easy for you to assign user access to Amazon Web Services SSO resources such // service that makes it easy for you to assign user access to IAM Identity
// as the AWS access portal. Users can get Amazon Web Services account applications // Center resources such as the AWS access portal. Users can get AWS account
// and roles assigned to them and get federated into the application. // applications and roles assigned to them and get federated into the application.
// //
// Although Amazon Web Services Single Sign-On was renamed, the sso and identitystore // Although AWS Single Sign-On was renamed, the sso and identitystore API namespaces
// API namespaces will continue to retain their original name for backward compatibility // will continue to retain their original name for backward compatibility purposes.
// purposes. For more information, see Amazon Web Services SSO rename (https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html#renamed). // For more information, see IAM Identity Center rename (https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html#renamed).
// //
// This reference guide describes the Amazon Web Services SSO Portal operations // This reference guide describes the IAM Identity Center Portal operations
// that you can call programatically and includes detailed information on data // that you can call programatically and includes detailed information on data
// types and errors. // types and errors.
// //
// Amazon Web Services provides SDKs that consist of libraries and sample code // AWS provides SDKs that consist of libraries and sample code for various programming
// for various programming languages and platforms, such as Java, Ruby, .Net, // languages and platforms, such as Java, Ruby, .Net, iOS, or Android. The SDKs
// iOS, or Android. The SDKs provide a convenient way to create programmatic // provide a convenient way to create programmatic access to IAM Identity Center
// access to Amazon Web Services SSO and other Amazon Web Services services. // and other AWS services. For more information about the AWS SDKs, including
// For more information about the Amazon Web Services SDKs, including how to // how to download and install them, see Tools for Amazon Web Services (http://aws.amazon.com/tools/).
// download and install them, see Tools for Amazon Web Services (http://aws.amazon.com/tools/).
// //
// See https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10 for more information on this service. // See https://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10 for more information on this service.
// //

View File

@ -1,3 +1,16 @@
## 1.0.0 (2022-08-29)
UPGRADE NOTES + PROMISE OF COMPATIBILITY
* Introducing Gophercloud v1! Like for every other release so far, all clients will upgrade automatically with `go get -d github.com/gophercloud/gophercloud` unless the dependency is pinned in `go.mod`.
* Gophercloud v1 comes with a promise of compatibility: no breaking changes are expected to merge before v2.0.0.
IMPROVEMENTS
* Added `compute.v2/extensions/services.Delete` [GH-2427](https://github.com/gophercloud/gophercloud/pull/2427)
* Added support for `standard-attr-revisions` to `networking/v2/networks`, `networking/v2/ports`, and `networking/v2/subnets` [GH-2437](https://github.com/gophercloud/gophercloud/pull/2437)
* Added `updated_at` and `created_at` fields to `networking/v2/ports.Port` [GH-2445](https://github.com/gophercloud/gophercloud/pull/2445)
## 0.25.0 (May 30, 2022) ## 0.25.0 (May 30, 2022)
BREAKING CHANGES BREAKING CHANGES

View File

@ -1,4 +1,5 @@
Copyright 2012-2013 Rackspace, Inc. Copyright 2012-2013 Rackspace, Inc.
Copyright Gophercloud authors
Licensed under the Apache License, Version 2.0 (the "License"); you may not use 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 this file except in compliance with the License. You may obtain a copy of the

View File

@ -126,7 +126,9 @@ Have a look at the [FAQ](./docs/FAQ.md) for some tips on customizing the way Gop
## Backwards-Compatibility Guarantees ## Backwards-Compatibility Guarantees
None. Vendor it and write tests covering the parts you use. Gophercloud versioning follows [semver](https://semver.org/spec/v2.0.0.html).
Before `v1.0.0`, there were no guarantees. Starting with v1, there will be no breaking changes within a major release.
## Contributing ## Contributing

View File

@ -12,20 +12,20 @@ provider.
An example of manually providing authentication information: An example of manually providing authentication information:
opts := gophercloud.AuthOptions{ opts := gophercloud.AuthOptions{
IdentityEndpoint: "https://openstack.example.com:5000/v2.0", IdentityEndpoint: "https://openstack.example.com:5000/v2.0",
Username: "{username}", Username: "{username}",
Password: "{password}", Password: "{password}",
TenantID: "{tenant_id}", TenantID: "{tenant_id}",
} }
provider, err := openstack.AuthenticatedClient(opts) provider, err := openstack.AuthenticatedClient(opts)
An example of using AuthOptionsFromEnv(), where the environment variables can An example of using AuthOptionsFromEnv(), where the environment variables can
be read from a file, such as a standard openrc file: be read from a file, such as a standard openrc file:
opts, err := openstack.AuthOptionsFromEnv() opts, err := openstack.AuthOptionsFromEnv()
provider, err := openstack.AuthenticatedClient(opts) provider, err := openstack.AuthenticatedClient(opts)
*/ */
type AuthOptions struct { type AuthOptions struct {
// IdentityEndpoint specifies the HTTP endpoint that is required to work with // IdentityEndpoint specifies the HTTP endpoint that is required to work with

View File

@ -3,7 +3,7 @@ Package gophercloud provides a multi-vendor interface to OpenStack-compatible
clouds. The library has a three-level hierarchy: providers, services, and clouds. The library has a three-level hierarchy: providers, services, and
resources. resources.
Authenticating with Providers # Authenticating with Providers
Provider structs represent the cloud providers that offer and manage a Provider structs represent the cloud providers that offer and manage a
collection of services. You will generally want to create one Provider collection of services. You will generally want to create one Provider
@ -49,7 +49,7 @@ instead of "project".
opts, err := openstack.AuthOptionsFromEnv() opts, err := openstack.AuthOptionsFromEnv()
provider, err := openstack.AuthenticatedClient(opts) provider, err := openstack.AuthenticatedClient(opts)
Service Clients # Service Clients
Service structs are specific to a provider and handle all of the logic and Service structs are specific to a provider and handle all of the logic and
operations for a particular OpenStack service. Examples of services include: operations for a particular OpenStack service. Examples of services include:
@ -60,7 +60,7 @@ pass in the parent provider, like so:
client, err := openstack.NewComputeV2(provider, opts) client, err := openstack.NewComputeV2(provider, opts)
Resources # Resources
Resource structs are the domain models that services make use of in order Resource structs are the domain models that services make use of in order
to work with and represent the state of API resources: to work with and represent the state of API resources:
@ -144,6 +144,5 @@ An example retry backoff function, which respects the 429 HTTP response code and
return nil return nil
} }
*/ */
package gophercloud package gophercloud

View File

@ -28,34 +28,34 @@ Example of Extend server result with Availability Zone Information:
Example of Get Availability Zone Information Example of Get Availability Zone Information
allPages, err := availabilityzones.List(computeClient).AllPages() allPages, err := availabilityzones.List(computeClient).AllPages()
if err != nil { if err != nil {
panic(err) panic(err)
} }
availabilityZoneInfo, err := availabilityzones.ExtractAvailabilityZones(allPages) availabilityZoneInfo, err := availabilityzones.ExtractAvailabilityZones(allPages)
if err != nil { if err != nil {
panic(err) panic(err)
} }
for _, zoneInfo := range availabilityZoneInfo { for _, zoneInfo := range availabilityZoneInfo {
fmt.Printf("%+v\n", zoneInfo) fmt.Printf("%+v\n", zoneInfo)
} }
Example of Get Detailed Availability Zone Information Example of Get Detailed Availability Zone Information
allPages, err := availabilityzones.ListDetail(computeClient).AllPages() allPages, err := availabilityzones.ListDetail(computeClient).AllPages()
if err != nil { if err != nil {
panic(err) panic(err)
} }
availabilityZoneInfo, err := availabilityzones.ExtractAvailabilityZones(allPages) availabilityZoneInfo, err := availabilityzones.ExtractAvailabilityZones(allPages)
if err != nil { if err != nil {
panic(err) panic(err)
} }
for _, zoneInfo := range availabilityZoneInfo { for _, zoneInfo := range availabilityZoneInfo {
fmt.Printf("%+v\n", zoneInfo) fmt.Printf("%+v\n", zoneInfo)
} }
*/ */
package availabilityzones package availabilityzones

View File

@ -10,7 +10,7 @@ https://docs.openstack.org/nova/latest/user/block-device-mapping.html
Note that this package implements `block_device_mapping_v2`. Note that this package implements `block_device_mapping_v2`.
Example of Creating a Server From an Image # Example of Creating a Server From an Image
This example will boot a server from an image and use a standard ephemeral This example will boot a server from an image and use a standard ephemeral
disk as the server's root disk. This is virtually no different than creating disk as the server's root disk. This is virtually no different than creating
@ -42,7 +42,7 @@ a server without using block device mappings.
panic(err) panic(err)
} }
Example of Creating a Server From a New Volume # Example of Creating a Server From a New Volume
This example will create a block storage volume based on the given Image. The This example will create a block storage volume based on the given Image. The
server will use this volume as its root disk. server will use this volume as its root disk.
@ -72,7 +72,7 @@ server will use this volume as its root disk.
panic(err) panic(err)
} }
Example of Creating a Server From an Existing Volume # Example of Creating a Server From an Existing Volume
This example will create a server with an existing volume as its root disk. This example will create a server with an existing volume as its root disk.
@ -100,7 +100,7 @@ This example will create a server with an existing volume as its root disk.
panic(err) panic(err)
} }
Example of Creating a Server with Multiple Ephemeral Disks # Example of Creating a Server with Multiple Ephemeral Disks
This example will create a server with multiple ephemeral disks. The first This example will create a server with multiple ephemeral disks. The first
block device will be based off of an existing Image. Each additional block device will be based off of an existing Image. Each additional

View File

@ -115,6 +115,5 @@ Example to Get a Key Pair owned by a certain user using microversion 2.10 or gre
if err != nil { if err != nil {
panic(err) panic(err)
} }
*/ */
package keypairs package keypairs

View File

@ -31,21 +31,21 @@ Example to Create a Server Group
Example to Create a Server Group with additional microversion 2.64 fields Example to Create a Server Group with additional microversion 2.64 fields
createOpts := servergroups.CreateOpts{ createOpts := servergroups.CreateOpts{
Name: "my_sg", Name: "my_sg",
Policy: "anti-affinity", Policy: "anti-affinity",
Rules: &servergroups.Rules{ Rules: &servergroups.Rules{
MaxServerPerHost: 3, MaxServerPerHost: 3,
}, },
} }
computeClient.Microversion = "2.64" computeClient.Microversion = "2.64"
result := servergroups.Create(computeClient, createOpts) result := servergroups.Create(computeClient, createOpts)
serverGroup, err := result.Extract() serverGroup, err := result.Extract()
if err != nil { if err != nil {
panic(err) panic(err)
} }
Example to Delete a Server Group Example to Delete a Server Group

View File

@ -12,12 +12,12 @@ type ListOptsBuilder interface {
} }
/* /*
AccessType maps to OpenStack's Flavor.is_public field. Although the is_public AccessType maps to OpenStack's Flavor.is_public field. Although the is_public
field is boolean, the request options are ternary, which is why AccessType is field is boolean, the request options are ternary, which is why AccessType is
a string. The following values are allowed: a string. The following values are allowed:
The AccessType arguement is optional, and if it is not supplied, OpenStack The AccessType arguement is optional, and if it is not supplied, OpenStack
returns the PublicAccess flavors. returns the PublicAccess flavors.
*/ */
type AccessType string type AccessType string
@ -35,12 +35,12 @@ const (
) )
/* /*
ListOpts filters the results returned by the List() function. ListOpts filters the results returned by the List() function.
For example, a flavor with a minDisk field of 10 will not be returned if you For example, a flavor with a minDisk field of 10 will not be returned if you
specify MinDisk set to 20. specify MinDisk set to 20.
Typically, software will use the last ID of the previous call to List to set Typically, software will use the last ID of the previous call to List to set
the Marker for the current call. the Marker for the current call.
*/ */
type ListOpts struct { type ListOpts struct {
// ChangesSince, if provided, instructs List to return only those things which // ChangesSince, if provided, instructs List to return only those things which

View File

@ -412,19 +412,19 @@ func (opts RebootOpts) ToServerRebootMap() (map[string]interface{}, error) {
} }
/* /*
Reboot requests that a given server reboot. Reboot requests that a given server reboot.
Two methods exist for rebooting a server: Two methods exist for rebooting a server:
HardReboot (aka PowerCycle) starts the server instance by physically cutting HardReboot (aka PowerCycle) starts the server instance by physically cutting
power to the machine, or if a VM, terminating it at the hypervisor level. power to the machine, or if a VM, terminating it at the hypervisor level.
It's done. Caput. Full stop. It's done. Caput. Full stop.
Then, after a brief while, power is restored or the VM instance restarted. Then, after a brief while, power is restored or the VM instance restarted.
SoftReboot (aka OSReboot) simply tells the OS to restart under its own SoftReboot (aka OSReboot) simply tells the OS to restart under its own
procedure. procedure.
E.g., in Linux, asking it to enter runlevel 6, or executing E.g., in Linux, asking it to enter runlevel 6, or executing
"sudo shutdown -r now", or by asking Windows to rtart the machine. "sudo shutdown -r now", or by asking Windows to rtart the machine.
*/ */
func Reboot(client *gophercloud.ServiceClient, id string, opts RebootOptsBuilder) (r ActionResult) { func Reboot(client *gophercloud.ServiceClient, id string, opts RebootOptsBuilder) (r ActionResult) {
b, err := opts.ToServerRebootMap() b, err := opts.ToServerRebootMap()

View File

@ -99,7 +99,8 @@ type GetPasswordResult struct {
// If privateKey != nil the password is decrypted with the private key. // If privateKey != nil the password is decrypted with the private key.
// If privateKey == nil the encrypted password is returned and can be decrypted // If privateKey == nil the encrypted password is returned and can be decrypted
// with: // with:
// echo '<pwd>' | base64 -D | openssl rsautl -decrypt -inkey <private_key> //
// echo '<pwd>' | base64 -D | openssl rsautl -decrypt -inkey <private_key>
func (r GetPasswordResult) ExtractPassword(privateKey *rsa.PrivateKey) (string, error) { func (r GetPasswordResult) ExtractPassword(privateKey *rsa.PrivateKey) (string, error) {
var s struct { var s struct {
Password string `json:"password"` Password string `json:"password"`

View File

@ -36,6 +36,5 @@ Example to auth a client using EC2 access and secret keys
if err != nil { if err != nil {
panic(err) panic(err)
} }
*/ */
package ec2tokens package ec2tokens

View File

@ -118,6 +118,5 @@ Example to Create a Token using OAuth1 method
if err != nil { if err != nil {
panic(err) panic(err)
} }
*/ */
package oauth1 package oauth1

View File

@ -103,6 +103,5 @@ Example to Create a Token from a Username and Password with Project Name Scope
if err != nil { if err != nil {
panic(err) panic(err)
} }
*/ */
package tokens package tokens

View File

@ -149,19 +149,19 @@ func (opts CreateOpts) ToMonitorCreateMap() (map[string]interface{}, error) {
} }
/* /*
Create is an operation which provisions a new Health Monitor. There are Create is an operation which provisions a new Health Monitor. There are
different types of Monitor you can provision: PING, TCP or HTTP(S). Below different types of Monitor you can provision: PING, TCP or HTTP(S). Below
are examples of how to create each one. are examples of how to create each one.
Here is an example config struct to use when creating a PING or TCP Monitor: Here is an example config struct to use when creating a PING or TCP Monitor:
CreateOpts{Type: TypePING, Delay: 20, Timeout: 10, MaxRetries: 3} CreateOpts{Type: TypePING, Delay: 20, Timeout: 10, MaxRetries: 3}
CreateOpts{Type: TypeTCP, Delay: 20, Timeout: 10, MaxRetries: 3} CreateOpts{Type: TypeTCP, Delay: 20, Timeout: 10, MaxRetries: 3}
Here is an example config struct to use when creating a HTTP(S) Monitor: Here is an example config struct to use when creating a HTTP(S) Monitor:
CreateOpts{Type: TypeHTTP, Delay: 20, Timeout: 10, MaxRetries: 3, CreateOpts{Type: TypeHTTP, Delay: 20, Timeout: 10, MaxRetries: 3,
HttpMethod: "HEAD", ExpectedCodes: "200", PoolID: "2c946bfc-1804-43ab-a2ff-58f6a762b505"} HttpMethod: "HEAD", ExpectedCodes: "200", PoolID: "2c946bfc-1804-43ab-a2ff-58f6a762b505"}
*/ */
func Create(c *gophercloud.ServiceClient, opts CreateOptsBuilder) (r CreateResult) { func Create(c *gophercloud.ServiceClient, opts CreateOptsBuilder) (r CreateResult) {
b, err := opts.ToMonitorCreateMap() b, err := opts.ToMonitorCreateMap()

View File

@ -15,15 +15,20 @@ import (
// types of persistence are supported: // types of persistence are supported:
// //
// SOURCE_IP: With this mode, all connections originating from the same source // SOURCE_IP: With this mode, all connections originating from the same source
// IP address, will be handled by the same Member of the Pool. //
// IP address, will be handled by the same Member of the Pool.
//
// HTTP_COOKIE: With this persistence mode, the load balancing function will // HTTP_COOKIE: With this persistence mode, the load balancing function will
// create a cookie on the first request from a client. Subsequent //
// requests containing the same cookie value will be handled by // create a cookie on the first request from a client. Subsequent
// the same Member of the Pool. // requests containing the same cookie value will be handled by
// the same Member of the Pool.
//
// APP_COOKIE: With this persistence mode, the load balancing function will // APP_COOKIE: With this persistence mode, the load balancing function will
// rely on a cookie established by the backend application. All //
// requests carrying the same cookie value will be handled by the // rely on a cookie established by the backend application. All
// same Member of the Pool. // requests carrying the same cookie value will be handled by the
// same Member of the Pool.
type SessionPersistence struct { type SessionPersistence struct {
// The type of persistence mode. // The type of persistence mode.
Type string `json:"type"` Type string `json:"type"`

View File

@ -7,12 +7,12 @@ See https://developer.openstack.org/api-ref/network/v2/#standard-attributes-tag-
Example to ReplaceAll Resource Tags Example to ReplaceAll Resource Tags
network, err := networks.Create(conn, createOpts).Extract() network, err := networks.Create(conn, createOpts).Extract()
tagReplaceAllOpts := attributestags.ReplaceAllOpts{ tagReplaceAllOpts := attributestags.ReplaceAllOpts{
Tags: []string{"abc", "123"}, Tags: []string{"abc", "123"},
} }
attributestags.ReplaceAll(conn, "networks", network.ID, tagReplaceAllOpts) attributestags.ReplaceAll(conn, "networks", network.ID, tagReplaceAllOpts)
Example to List all Resource Tags Example to List all Resource Tags
@ -24,11 +24,11 @@ Example to Delete all Resource Tags
Example to Add a tag to a Resource Example to Add a tag to a Resource
err = attributestags.Add(client, "networks", network.ID, "atag").ExtractErr() err = attributestags.Add(client, "networks", network.ID, "atag").ExtractErr()
Example to Delete a tag from a Resource Example to Delete a tag from a Resource
err = attributestags.Delete(client, "networks", network.ID, "atag").ExtractErr() err = attributestags.Delete(client, "networks", network.ID, "atag").ExtractErr()
Example to confirm if a tag exists on a resource Example to confirm if a tag exists on a resource

View File

@ -1,6 +1,8 @@
package networks package networks
import ( import (
"fmt"
"github.com/gophercloud/gophercloud" "github.com/gophercloud/gophercloud"
"github.com/gophercloud/gophercloud/pagination" "github.com/gophercloud/gophercloud/pagination"
) )
@ -117,6 +119,11 @@ type UpdateOpts struct {
Name *string `json:"name,omitempty"` Name *string `json:"name,omitempty"`
Description *string `json:"description,omitempty"` Description *string `json:"description,omitempty"`
Shared *bool `json:"shared,omitempty"` Shared *bool `json:"shared,omitempty"`
// RevisionNumber implements extension:standard-attr-revisions. If != "" it
// will set revision_number=%s. If the revision number does not match, the
// update will fail.
RevisionNumber *int `json:"-" h:"If-Match"`
} }
// ToNetworkUpdateMap builds a request body from UpdateOpts. // ToNetworkUpdateMap builds a request body from UpdateOpts.
@ -132,8 +139,19 @@ func Update(c *gophercloud.ServiceClient, networkID string, opts UpdateOptsBuild
r.Err = err r.Err = err
return return
} }
h, err := gophercloud.BuildHeaders(opts)
if err != nil {
r.Err = err
return
}
for k := range h {
if k == "If-Match" {
h[k] = fmt.Sprintf("revision_number=%s", h[k])
}
}
resp, err := c.Put(updateURL(c, networkID), b, &r.Body, &gophercloud.RequestOpts{ resp, err := c.Put(updateURL(c, networkID), b, &r.Body, &gophercloud.RequestOpts{
OkCodes: []int{200, 201}, MoreHeaders: h,
OkCodes: []int{200, 201},
}) })
_, r.Header, r.Err = gophercloud.ParseResponse(resp, err) _, r.Header, r.Err = gophercloud.ParseResponse(resp, err)
return return

View File

@ -90,6 +90,9 @@ type Network struct {
// Tags optionally set via extensions/attributestags // Tags optionally set via extensions/attributestags
Tags []string `json:"tags"` Tags []string `json:"tags"`
// RevisionNumber optionally set via extensions/standard-attr-revisions
RevisionNumber int `json:"revision_number"`
} }
func (r *Network) UnmarshalJSON(b []byte) error { func (r *Network) UnmarshalJSON(b []byte) error {

View File

@ -158,6 +158,11 @@ type UpdateOpts struct {
DeviceOwner *string `json:"device_owner,omitempty"` DeviceOwner *string `json:"device_owner,omitempty"`
SecurityGroups *[]string `json:"security_groups,omitempty"` SecurityGroups *[]string `json:"security_groups,omitempty"`
AllowedAddressPairs *[]AddressPair `json:"allowed_address_pairs,omitempty"` AllowedAddressPairs *[]AddressPair `json:"allowed_address_pairs,omitempty"`
// RevisionNumber implements extension:standard-attr-revisions. If != "" it
// will set revision_number=%s. If the revision number does not match, the
// update will fail.
RevisionNumber *int `json:"-" h:"If-Match"`
} }
// ToPortUpdateMap builds a request body from UpdateOpts. // ToPortUpdateMap builds a request body from UpdateOpts.
@ -173,8 +178,19 @@ func Update(c *gophercloud.ServiceClient, id string, opts UpdateOptsBuilder) (r
r.Err = err r.Err = err
return return
} }
h, err := gophercloud.BuildHeaders(opts)
if err != nil {
r.Err = err
return
}
for k := range h {
if k == "If-Match" {
h[k] = fmt.Sprintf("revision_number=%s", h[k])
}
}
resp, err := c.Put(updateURL(c, id), b, &r.Body, &gophercloud.RequestOpts{ resp, err := c.Put(updateURL(c, id), b, &r.Body, &gophercloud.RequestOpts{
OkCodes: []int{200, 201}, MoreHeaders: h,
OkCodes: []int{200, 201},
}) })
_, r.Header, r.Err = gophercloud.ParseResponse(resp, err) _, r.Header, r.Err = gophercloud.ParseResponse(resp, err)
return return

View File

@ -1,6 +1,8 @@
package ports package ports
import ( import (
"time"
"github.com/gophercloud/gophercloud" "github.com/gophercloud/gophercloud"
"github.com/gophercloud/gophercloud/pagination" "github.com/gophercloud/gophercloud/pagination"
) )
@ -107,6 +109,15 @@ type Port struct {
// Tags optionally set via extensions/attributestags // Tags optionally set via extensions/attributestags
Tags []string `json:"tags"` Tags []string `json:"tags"`
// RevisionNumber optionally set via extensions/standard-attr-revisions
RevisionNumber int `json:"revision_number"`
// Timestamp when the port was created
CreatedAt time.Time `json:"created_at"`
// Timestamp when the port was last updated
UpdatedAt time.Time `json:"updated_at"`
} }
// PortPage is the page returned by a pager when traversing over a collection // PortPage is the page returned by a pager when traversing over a collection

View File

@ -1,6 +1,8 @@
package subnets package subnets
import ( import (
"fmt"
"github.com/gophercloud/gophercloud" "github.com/gophercloud/gophercloud"
"github.com/gophercloud/gophercloud/pagination" "github.com/gophercloud/gophercloud/pagination"
) )
@ -197,6 +199,11 @@ type UpdateOpts struct {
// EnableDHCP will either enable to disable the DHCP service. // EnableDHCP will either enable to disable the DHCP service.
EnableDHCP *bool `json:"enable_dhcp,omitempty"` EnableDHCP *bool `json:"enable_dhcp,omitempty"`
// RevisionNumber implements extension:standard-attr-revisions. If != "" it
// will set revision_number=%s. If the revision number does not match, the
// update will fail.
RevisionNumber *int `json:"-" h:"If-Match"`
} }
// ToSubnetUpdateMap builds a request body from UpdateOpts. // ToSubnetUpdateMap builds a request body from UpdateOpts.
@ -221,8 +228,20 @@ func Update(c *gophercloud.ServiceClient, id string, opts UpdateOptsBuilder) (r
r.Err = err r.Err = err
return return
} }
h, err := gophercloud.BuildHeaders(opts)
if err != nil {
r.Err = err
return
}
for k := range h {
if k == "If-Match" {
h[k] = fmt.Sprintf("revision_number=%s", h[k])
}
}
resp, err := c.Put(updateURL(c, id), b, &r.Body, &gophercloud.RequestOpts{ resp, err := c.Put(updateURL(c, id), b, &r.Body, &gophercloud.RequestOpts{
OkCodes: []int{200, 201}, MoreHeaders: h,
OkCodes: []int{200, 201},
}) })
_, r.Header, r.Err = gophercloud.ParseResponse(resp, err) _, r.Header, r.Err = gophercloud.ParseResponse(resp, err)
return return

View File

@ -112,6 +112,9 @@ type Subnet struct {
// Tags optionally set via extensions/attributestags // Tags optionally set via extensions/attributestags
Tags []string `json:"tags"` Tags []string `json:"tags"`
// RevisionNumber optionally set via extensions/standard-attr-revisions
RevisionNumber int `json:"revision_number"`
} }
// SubnetPage is the page returned by a pager when traversing over a collection // SubnetPage is the page returned by a pager when traversing over a collection

View File

@ -24,6 +24,5 @@ Example to Update an Account
updateResult, err := accounts.Update(objectStorageClient, updateOpts).Extract() updateResult, err := accounts.Update(objectStorageClient, updateOpts).Extract()
fmt.Printf("%+v\n", updateResult) fmt.Printf("%+v\n", updateResult)
*/ */
package accounts package accounts

View File

@ -15,17 +15,17 @@ BuildRequestBody builds a map[string]interface from the given `struct`. If
parent is not an empty string, the final map[string]interface returned will parent is not an empty string, the final map[string]interface returned will
encapsulate the built one. For example: encapsulate the built one. For example:
disk := 1 disk := 1
createOpts := flavors.CreateOpts{ createOpts := flavors.CreateOpts{
ID: "1", ID: "1",
Name: "m1.tiny", Name: "m1.tiny",
Disk: &disk, Disk: &disk,
RAM: 512, RAM: 512,
VCPUs: 1, VCPUs: 1,
RxTxFactor: 1.0, RxTxFactor: 1.0,
} }
body, err := gophercloud.BuildRequestBody(createOpts, "flavor") body, err := gophercloud.BuildRequestBody(createOpts, "flavor")
The above example can be run as-is, however it is recommended to look at how The above example can be run as-is, however it is recommended to look at how
BuildRequestBody is used within Gophercloud to more fully understand how it BuildRequestBody is used within Gophercloud to more fully understand how it
@ -401,22 +401,22 @@ It accepts an arbitrary tagged structure and produces a string map that's
suitable for use as the HTTP headers of an outgoing request. Field names are suitable for use as the HTTP headers of an outgoing request. Field names are
mapped to header names based in "h" tags. mapped to header names based in "h" tags.
type struct Something { type struct Something {
Bar string `h:"x_bar"` Bar string `h:"x_bar"`
Baz int `h:"lorem_ipsum"` Baz int `h:"lorem_ipsum"`
} }
instance := Something{ instance := Something{
Bar: "AAA", Bar: "AAA",
Baz: "BBB", Baz: "BBB",
} }
will be converted into: will be converted into:
map[string]string{ map[string]string{
"x_bar": "AAA", "x_bar": "AAA",
"lorem_ipsum": "BBB", "lorem_ipsum": "BBB",
} }
Untagged fields and fields left at their zero values are skipped. Integers, Untagged fields and fields left at their zero values are skipped. Integers,
booleans and string values are supported. booleans and string values are supported.

View File

@ -1,10 +1,17 @@
# HCL Changelog # HCL Changelog
## v2.14.0 (September 1, 2022)
### Enhancements
* ext/typeexpr: Added support for optional object attributes to `TypeConstraint`. Attributes can be wrapped in the special `optional(…)` modifier, allowing the attribute to be omitted while still meeting the type constraint. For more information, [cty's documentation on conversion between object types](https://github.com/zclconf/go-cty/blob/main/docs/convert.md#conversion-between-object-types). ([#549](https://github.com/hashicorp/hcl/pull/549))
* ext/typeexpr: New function: `TypeConstraintWithDefaults`. In this mode, the `optional(…)` modifier accepts a second argument which can be used as the default value for omitted object attributes. The function returns both a `cty.Type` and associated `Defaults`, the latter of which has an `Apply` method to apply defaults to a given value. ([#549](https://github.com/hashicorp/hcl/pull/549))
## v2.13.0 (June 22, 2022) ## v2.13.0 (June 22, 2022)
### Enhancements ### Enhancements
* hcl: `hcl.Diagnostic` how has an additional field `Extra` which is intended for carrying arbitrary supporting data ("extra information") related to the diagnostic message, intended to allow diagnostic renderers to optionally tailor the presentation of messages for particular situations. ([#539](https://github.com/hashicorp/hcl/pull/539)) * hcl: `hcl.Diagnostic` now has an additional field `Extra` which is intended for carrying arbitrary supporting data ("extra information") related to the diagnostic message, intended to allow diagnostic renderers to optionally tailor the presentation of messages for particular situations. ([#539](https://github.com/hashicorp/hcl/pull/539))
* hclsyntax: When an error occurs during a function call, the returned diagnostics will include _extra information_ (as described in the previous point) about which function was being called and, if the message is about an error returned by the function itself, that raw `error` value without any post-processing. ([#539](https://github.com/hashicorp/hcl/pull/539)) * hclsyntax: When an error occurs during a function call, the returned diagnostics will include _extra information_ (as described in the previous point) about which function was being called and, if the message is about an error returned by the function itself, that raw `error` value without any post-processing. ([#539](https://github.com/hashicorp/hcl/pull/539))
### Bugs Fixed ### Bugs Fixed

View File

@ -645,6 +645,7 @@ type LaunchSpecification struct {
HealthCheckType *string `json:"healthCheckType,omitempty"` HealthCheckType *string `json:"healthCheckType,omitempty"`
HealthCheckGracePeriod *int `json:"healthCheckGracePeriod,omitempty"` HealthCheckGracePeriod *int `json:"healthCheckGracePeriod,omitempty"`
HealthCheckUnhealthyDurationBeforeReplacement *int `json:"healthCheckUnhealthyDurationBeforeReplacement,omitempty"` HealthCheckUnhealthyDurationBeforeReplacement *int `json:"healthCheckUnhealthyDurationBeforeReplacement,omitempty"`
Images []*Image `json:"images,omitempty"`
ImageID *string `json:"imageId,omitempty"` ImageID *string `json:"imageId,omitempty"`
KeyPair *string `json:"keyPair,omitempty"` KeyPair *string `json:"keyPair,omitempty"`
UserData *string `json:"userData,omitempty"` UserData *string `json:"userData,omitempty"`
@ -782,6 +783,13 @@ type AMIs struct {
nullFields []string nullFields []string
} }
type Image struct {
Id *string `json:"id,omitempty"`
forceSendFields []string
nullFields []string
}
type LoadBalancersConfig struct { type LoadBalancersConfig struct {
LoadBalancers []*LoadBalancer `json:"loadBalancers,omitempty"` LoadBalancers []*LoadBalancer `json:"loadBalancers,omitempty"`
@ -3955,9 +3963,17 @@ func (o *LaunchSpecification) SetHealthCheckUnhealthyDurationBeforeReplacement(v
return o return o
} }
func (o *LaunchSpecification) SetImages(v []*Image) *LaunchSpecification {
if o.Images = v; o.Images == nil {
o.nullFields = append(o.nullFields, "Images")
}
return o
}
func (o *LaunchSpecification) SetImageId(v *string) *LaunchSpecification { func (o *LaunchSpecification) SetImageId(v *string) *LaunchSpecification {
if o.ImageID = v; o.ImageID == nil { if o.ImageID = v; o.ImageID == nil {
o.nullFields = append(o.nullFields, "ImageID") o.nullFields = append(o.nullFields, "ImageID")
} }
return o return o
} }
@ -4316,6 +4332,23 @@ func (o *TargetGroupConfig) SetTags(v []*Tag) *TargetGroupConfig {
// endregion // endregion
// region Image
func (o Image) MarshalJSON() ([]byte, error) {
type noMethod Image
raw := noMethod(o)
return jsonutil.MarshalJSON(raw, o.forceSendFields, o.nullFields)
}
func (o *Image) SetId(v *string) *Image {
if o.Id = v; o.Id == nil {
o.nullFields = append(o.nullFields, "Id")
}
return o
}
// endregion
// region LoadBalancersConfig // region LoadBalancersConfig
func (o LoadBalancersConfig) MarshalJSON() ([]byte, error) { func (o LoadBalancersConfig) MarshalJSON() ([]byte, error) {

View File

@ -1,7 +1,7 @@
package spotinst package spotinst
// SDKVersion is the current version of the SDK. // SDKVersion is the current version of the SDK.
const SDKVersion = "1.126.0" const SDKVersion = "1.127.0"
// SDKName is the name of the SDK. // SDKName is the name of the SDK.
const SDKName = "spotinst-sdk-go" const SDKName = "spotinst-sdk-go"

View File

@ -5,6 +5,7 @@
package socket package socket
import ( import (
"net"
"syscall" "syscall"
"unsafe" "unsafe"
) )

View File

@ -4,9 +4,7 @@
package unix package unix
import ( import "unsafe"
"unsafe"
)
// IoctlRetInt performs an ioctl operation specified by req on a device // IoctlRetInt performs an ioctl operation specified by req on a device
// associated with opened file descriptor fd, and returns a non-negative // associated with opened file descriptor fd, and returns a non-negative
@ -217,3 +215,19 @@ func IoctlKCMAttach(fd int, info KCMAttach) error {
func IoctlKCMUnattach(fd int, info KCMUnattach) error { func IoctlKCMUnattach(fd int, info KCMUnattach) error {
return ioctlPtr(fd, SIOCKCMUNATTACH, unsafe.Pointer(&info)) return ioctlPtr(fd, SIOCKCMUNATTACH, unsafe.Pointer(&info))
} }
// IoctlLoopGetStatus64 gets the status of the loop device associated with the
// file descriptor fd using the LOOP_GET_STATUS64 operation.
func IoctlLoopGetStatus64(fd int) (*LoopInfo64, error) {
var value LoopInfo64
if err := ioctlPtr(fd, LOOP_GET_STATUS64, unsafe.Pointer(&value)); err != nil {
return nil, err
}
return &value, nil
}
// IoctlLoopSetStatus64 sets the status of the loop device associated with the
// file descriptor fd using the LOOP_SET_STATUS64 operation.
func IoctlLoopSetStatus64(fd int, value *LoopInfo64) error {
return ioctlPtr(fd, LOOP_SET_STATUS64, unsafe.Pointer(value))
}

27
vendor/golang.org/x/sys/unix/str.go generated vendored
View File

@ -1,27 +0,0 @@
// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris
// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
package unix
func itoa(val int) string { // do it here rather than with fmt to avoid dependency
if val < 0 {
return "-" + uitoa(uint(-val))
}
return uitoa(uint(val))
}
func uitoa(val uint) string {
var buf [32]byte // big enough for int64
i := len(buf) - 1
for val >= 10 {
buf[i] = byte(val%10 + '0')
i--
val /= 10
}
buf[i] = byte(val + '0')
return string(buf[i:])
}

View File

@ -13,6 +13,7 @@ package unix
import ( import (
"encoding/binary" "encoding/binary"
"strconv"
"syscall" "syscall"
"time" "time"
"unsafe" "unsafe"
@ -233,7 +234,7 @@ func Futimesat(dirfd int, path string, tv []Timeval) error {
func Futimes(fd int, tv []Timeval) (err error) { func Futimes(fd int, tv []Timeval) (err error) {
// Believe it or not, this is the best we can do on Linux // Believe it or not, this is the best we can do on Linux
// (and is what glibc does). // (and is what glibc does).
return Utimes("/proc/self/fd/"+itoa(fd), tv) return Utimes("/proc/self/fd/"+strconv.Itoa(fd), tv)
} }
const ImplementsGetwd = true const ImplementsGetwd = true

View File

@ -173,7 +173,9 @@ const ServiceAnnotationLoadBalancerSSLNegotiationPolicy = "service.beta.kubernet
// ServiceAnnotationLoadBalancerBEProtocol is the annotation used on the service // ServiceAnnotationLoadBalancerBEProtocol is the annotation used on the service
// to specify the protocol spoken by the backend (pod) behind a listener. // to specify the protocol spoken by the backend (pod) behind a listener.
// If `http` (default) or `https`, an HTTPS listener that terminates the // If `http` (default) or `https`, an HTTPS listener that terminates the
// connection and parses headers is created. //
// connection and parses headers is created.
//
// If set to `ssl` or `tcp`, a "raw" SSL listener is used. // If set to `ssl` or `tcp`, a "raw" SSL listener is used.
// If set to `http` and `aws-load-balancer-ssl-cert` is not used then // If set to `http` and `aws-load-balancer-ssl-cert` is not used then
// a HTTP listener is used. // a HTTP listener is used.
@ -236,9 +238,9 @@ const ServiceAnnotationLoadBalancerTargetNodeLabels = "service.beta.kubernetes.i
// subnetID or subnetName from different AZs // subnetID or subnetName from different AZs
// By default, the controller will auto-discover the subnets. If there are multiple subnets per AZ, auto-discovery // By default, the controller will auto-discover the subnets. If there are multiple subnets per AZ, auto-discovery
// will break the tie in the following order - // will break the tie in the following order -
// 1. prefer the subnet with the correct role tag. kubernetes.io/role/elb for public and kubernetes.io/role/internal-elb for private access // 1. prefer the subnet with the correct role tag. kubernetes.io/role/elb for public and kubernetes.io/role/internal-elb for private access
// 2. prefer the subnet with the cluster tag kubernetes.io/cluster/<Cluster Name> // 2. prefer the subnet with the cluster tag kubernetes.io/cluster/<Cluster Name>
// 3. prefer the subnet that is first in lexicographic order // 3. prefer the subnet that is first in lexicographic order
const ServiceAnnotationLoadBalancerSubnets = "service.beta.kubernetes.io/aws-load-balancer-subnets" const ServiceAnnotationLoadBalancerSubnets = "service.beta.kubernetes.io/aws-load-balancer-subnets"
// Event key when a volume is stuck on attaching state when being attached to a volume // Event key when a volume is stuck on attaching state when being attached to a volume
@ -1259,15 +1261,13 @@ func init() {
var creds *credentials.Credentials var creds *credentials.Credentials
if cfg.Global.RoleARN != "" { if cfg.Global.RoleARN != "" {
klog.Infof("Using AWS assumed role %v", cfg.Global.RoleARN) klog.Infof("Using AWS assumed role %v", cfg.Global.RoleARN)
provider := &stscreds.AssumeRoleProvider{
Client: sts.New(sess),
RoleARN: cfg.Global.RoleARN,
}
creds = credentials.NewChainCredentials( creds = credentials.NewChainCredentials(
[]credentials.Provider{ []credentials.Provider{
&credentials.EnvProvider{}, &credentials.EnvProvider{},
provider, assumeRoleProvider(&stscreds.AssumeRoleProvider{
Client: sts.New(sess),
RoleARN: cfg.Global.RoleARN,
}),
}) })
} }
@ -3808,8 +3808,8 @@ func (c *Cloud) buildELBSecurityGroupList(serviceName types.NamespacedName, load
// sortELBSecurityGroupList returns a list of sorted securityGroupIDs based on the original order // sortELBSecurityGroupList returns a list of sorted securityGroupIDs based on the original order
// from buildELBSecurityGroupList. The logic is: // from buildELBSecurityGroupList. The logic is:
// * securityGroups specified by ServiceAnnotationLoadBalancerSecurityGroups appears first in order // - securityGroups specified by ServiceAnnotationLoadBalancerSecurityGroups appears first in order
// * securityGroups specified by ServiceAnnotationLoadBalancerExtraSecurityGroups appears last in order // - securityGroups specified by ServiceAnnotationLoadBalancerExtraSecurityGroups appears last in order
func (c *Cloud) sortELBSecurityGroupList(securityGroupIDs []string, annotations map[string]string) { func (c *Cloud) sortELBSecurityGroupList(securityGroupIDs []string, annotations map[string]string) {
annotatedSGList := getSGListFromAnnotation(annotations[ServiceAnnotationLoadBalancerSecurityGroups]) annotatedSGList := getSGListFromAnnotation(annotations[ServiceAnnotationLoadBalancerSecurityGroups])
annotatedExtraSGList := getSGListFromAnnotation(annotations[ServiceAnnotationLoadBalancerExtraSecurityGroups]) annotatedExtraSGList := getSGListFromAnnotation(annotations[ServiceAnnotationLoadBalancerExtraSecurityGroups])
@ -5089,6 +5089,13 @@ func IsFargateNode(nodeName string) bool {
return strings.HasPrefix(nodeName, fargateNodeNamePrefix) return strings.HasPrefix(nodeName, fargateNodeNamePrefix)
} }
// extract private ip address from node name
func nodeNameToIPAddress(nodeName string) string {
nodeName = strings.TrimPrefix(nodeName, privateDNSNamePrefix)
nodeName = strings.Split(nodeName, ".")[0]
return strings.ReplaceAll(nodeName, "-", ".")
}
func (c *Cloud) nodeNameToInstanceID(nodeName types.NodeName) (InstanceID, error) { func (c *Cloud) nodeNameToInstanceID(nodeName types.NodeName) (InstanceID, error) {
if strings.HasPrefix(string(nodeName), rbnNamePrefix) { if strings.HasPrefix(string(nodeName), rbnNamePrefix) {
return InstanceID(nodeName), nil return InstanceID(nodeName), nil
@ -5190,12 +5197,14 @@ func (c *Cloud) describeNetworkInterfaces(nodeName string) (*ec2.NetworkInterfac
} }
// when enableDnsSupport is set to false in a VPC, interface will not have private DNS names. // when enableDnsSupport is set to false in a VPC, interface will not have private DNS names.
// convert node name to ip address because ip-name based and resource-named EC2 resources
// may have different privateDNSName formats but same privateIpAddress format
if strings.HasPrefix(eniEndpoint, privateDNSNamePrefix) { if strings.HasPrefix(eniEndpoint, privateDNSNamePrefix) {
filters = append(filters, newEc2Filter("private-dns-name", eniEndpoint)) eniEndpoint = nodeNameToIPAddress(eniEndpoint)
} else {
filters = append(filters, newEc2Filter("private-ip-address", eniEndpoint))
} }
filters = append(filters, newEc2Filter("private-ip-address", eniEndpoint))
request := &ec2.DescribeNetworkInterfacesInput{ request := &ec2.DescribeNetworkInterfacesInput{
Filters: filters, Filters: filters,
} }

View File

@ -0,0 +1,62 @@
/*
Copyright 2014 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 aws
import (
"sync"
"time"
"github.com/aws/aws-sdk-go/aws/credentials"
)
const (
invalidateCredsAfter = 1 * time.Second
)
// assumeRoleProviderWithRateLimiting makes sure we call the underlying provider only
// once after `invalidateCredsAfter` period
type assumeRoleProviderWithRateLimiting struct {
provider credentials.Provider
invalidateCredsAfter time.Duration
sync.RWMutex
lastError error
lastValue credentials.Value
lastRetrieveTime time.Time
}
func assumeRoleProvider(provider credentials.Provider) credentials.Provider {
return &assumeRoleProviderWithRateLimiting{provider: provider,
invalidateCredsAfter: invalidateCredsAfter}
}
func (l *assumeRoleProviderWithRateLimiting) Retrieve() (credentials.Value, error) {
l.Lock()
defer l.Unlock()
if time.Since(l.lastRetrieveTime) < l.invalidateCredsAfter {
if l.lastError != nil {
return credentials.Value{}, l.lastError
}
return l.lastValue, nil
}
l.lastValue, l.lastError = l.provider.Retrieve()
l.lastRetrieveTime = time.Now()
return l.lastValue, l.lastError
}
func (l *assumeRoleProviderWithRateLimiting) IsExpired() bool {
return l.provider.IsExpired()
}

View File

@ -23,6 +23,7 @@ import (
"strings" "strings"
"github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awserr"
"github.com/aws/aws-sdk-go/service/autoscaling" "github.com/aws/aws-sdk-go/service/autoscaling"
"github.com/aws/aws-sdk-go/service/ec2" "github.com/aws/aws-sdk-go/service/ec2"
"github.com/aws/aws-sdk-go/service/elb" "github.com/aws/aws-sdk-go/service/elb"
@ -269,6 +270,10 @@ func (ec2i *FakeEC2Impl) CreateTags(input *ec2.CreateTagsInput) (*ec2.CreateTags
if *id == "i-error" { if *id == "i-error" {
return nil, errors.New("Unable to tag") return nil, errors.New("Unable to tag")
} }
if *id == "i-not-found" {
return nil, awserr.New("InvalidInstanceID.NotFound", "Instance not found", nil)
}
} }
return &ec2.CreateTagsOutput{}, nil return &ec2.CreateTagsOutput{}, nil
} }
@ -279,6 +284,10 @@ func (ec2i *FakeEC2Impl) DeleteTags(input *ec2.DeleteTagsInput) (*ec2.DeleteTags
if *id == "i-error" { if *id == "i-error" {
return nil, errors.New("Unable to remove tag") return nil, errors.New("Unable to remove tag")
} }
if *id == "i-not-found" {
return nil, awserr.New("InvalidInstanceID.NotFound", "Instance not found", nil)
}
} }
return &ec2.DeleteTagsOutput{}, nil return &ec2.DeleteTagsOutput{}, nil
} }
@ -716,7 +725,7 @@ func (ec2i *FakeEC2Impl) DescribeNetworkInterfaces(input *ec2.DescribeNetworkInt
return &ec2.DescribeNetworkInterfacesOutput{}, nil return &ec2.DescribeNetworkInterfacesOutput{}, nil
} }
if *filter.Name == "private-dns-name" { if *filter.Values[0] == "return.private.dns.name" {
networkInterface[0].PrivateDnsName = aws.String("ip-1-2-3-4.compute.amazon.com") networkInterface[0].PrivateDnsName = aws.String("ip-1-2-3-4.compute.amazon.com")
} }
} }

View File

@ -834,8 +834,12 @@ func (c *Cloud) updateInstanceSecurityGroupsForNLB(lbName string, instances map[
for sgID, sg := range clusterSGs { for sgID, sg := range clusterSGs {
sgPerms := NewIPPermissionSet(sg.IpPermissions...).Ungroup() sgPerms := NewIPPermissionSet(sg.IpPermissions...).Ungroup()
if desiredSGIDs.Has(sgID) { if desiredSGIDs.Has(sgID) {
if err := c.updateInstanceSecurityGroupForNLBTraffic(sgID, sgPerms, healthRuleAnnotation, "tcp", healthCheckPorts, subnetCIDRs); err != nil { // If the client rule is 1) all addresses 2) tcp and 3) has same ports as the healthcheck,
return err // then the health rules are a subset of the client rule and are not needed.
if len(clientCIDRs) != 1 || clientCIDRs[0] != "0.0.0.0/0" || clientProtocol != "tcp" || !healthCheckPorts.Equal(clientPorts) {
if err := c.updateInstanceSecurityGroupForNLBTraffic(sgID, sgPerms, healthRuleAnnotation, "tcp", healthCheckPorts, subnetCIDRs); err != nil {
return err
}
} }
if err := c.updateInstanceSecurityGroupForNLBTraffic(sgID, sgPerms, clientRuleAnnotation, clientProtocol, clientPorts, clientCIDRs); err != nil { if err := c.updateInstanceSecurityGroupForNLBTraffic(sgID, sgPerms, clientRuleAnnotation, clientProtocol, clientPorts, clientCIDRs); err != nil {
return err return err
@ -1234,7 +1238,8 @@ func (c *Cloud) ensureLoadBalancer(namespacedName types.NamespacedName, loadBala
// syncElbListeners computes a plan to reconcile the desired vs actual state of the listeners on an ELB // syncElbListeners computes a plan to reconcile the desired vs actual state of the listeners on an ELB
// NOTE: there exists an O(nlgn) implementation for this function. However, as the default limit of // NOTE: there exists an O(nlgn) implementation for this function. However, as the default limit of
// listeners per elb is 100, this implementation is reduced from O(m*n) => O(n). //
// listeners per elb is 100, this implementation is reduced from O(m*n) => O(n).
func syncElbListeners(loadBalancerName string, listeners []*elb.Listener, listenerDescriptions []*elb.ListenerDescription) ([]*elb.Listener, []*int64) { func syncElbListeners(loadBalancerName string, listeners []*elb.Listener, listenerDescriptions []*elb.ListenerDescription) ([]*elb.Listener, []*int64) {
foundSet := make(map[int]bool) foundSet := make(map[int]bool)
removals := []*int64{} removals := []*int64{}

View File

@ -46,10 +46,10 @@ func (i InstanceID) awsString() *string {
// KubernetesInstanceID represents the id for an instance in the kubernetes API; // KubernetesInstanceID represents the id for an instance in the kubernetes API;
// the following form // the following form
// * aws:///<zone>/<awsInstanceId> // - aws:///<zone>/<awsInstanceId>
// * aws:////<awsInstanceId> // - aws:////<awsInstanceId>
// * aws:///<zone>/fargate-<eni-ip-address> // - aws:///<zone>/fargate-<eni-ip-address>
// * <awsInstanceId> // - <awsInstanceId>
type KubernetesInstanceID string type KubernetesInstanceID string
// MapToAWSInstanceID extracts the InstanceID from the KubernetesInstanceID // MapToAWSInstanceID extracts the InstanceID from the KubernetesInstanceID

View File

@ -322,6 +322,10 @@ func (c *Cloud) TagResource(resourceID string, tags map[string]string) error {
output, err := c.ec2.CreateTags(request) output, err := c.ec2.CreateTags(request)
if err != nil { if err != nil {
if isAWSErrorInstanceNotFound(err) {
klog.Infof("Couldn't find resource when trying to tag it hence skipping it, %v", err)
return nil
}
klog.Errorf("Error occurred trying to tag resources, %v", err) klog.Errorf("Error occurred trying to tag resources, %v", err)
return err return err
} }
@ -342,6 +346,10 @@ func (c *Cloud) UntagResource(resourceID string, tags map[string]string) error {
output, err := c.ec2.DeleteTags(request) output, err := c.ec2.DeleteTags(request)
if err != nil { if err != nil {
if isAWSErrorInstanceNotFound(err) {
klog.Infof("Couldn't find resource when trying to untag it hence skipping it, %v", err)
return nil
}
klog.Errorf("Error occurred trying to untag resources, %v", err) klog.Errorf("Error occurred trying to untag resources, %v", err)
return err return err
} }

View File

@ -40,9 +40,9 @@ func (i EBSVolumeID) awsString() *string {
// KubernetesVolumeID represents the id for a volume in the kubernetes API; // KubernetesVolumeID represents the id for a volume in the kubernetes API;
// a few forms are recognized: // a few forms are recognized:
// * aws://<zone>/<awsVolumeId> // - aws://<zone>/<awsVolumeId>
// * aws:///<awsVolumeId> // - aws:///<awsVolumeId>
// * <awsVolumeId> // - <awsVolumeId>
type KubernetesVolumeID string type KubernetesVolumeID string
// DiskInfo returns aws disk information in easy to use manner // DiskInfo returns aws disk information in easy to use manner

1
vendor/k8s.io/klog/v2/OWNERS generated vendored
View File

@ -1,5 +1,6 @@
# See the OWNERS docs at https://go.k8s.io/owners # See the OWNERS docs at https://go.k8s.io/owners
reviewers: reviewers:
- harshanarayana
- pohly - pohly
approvers: approvers:
- dims - dims

View File

@ -47,8 +47,9 @@ var (
// If set, all log lines will be suppressed from the regular output, and // If set, all log lines will be suppressed from the regular output, and
// redirected to the logr implementation. // redirected to the logr implementation.
// Use as: // Use as:
// ... //
// klog.SetLogger(zapr.NewLogger(zapLog)) // ...
// klog.SetLogger(zapr.NewLogger(zapLog))
// //
// To remove a backing logr implemention, use ClearLogger. Setting an // To remove a backing logr implemention, use ClearLogger. Setting an
// empty logger with SetLogger(logr.Logger{}) does not work. // empty logger with SetLogger(logr.Logger{}) does not work.

View File

@ -145,7 +145,7 @@ func KVListFormat(b *bytes.Buffer, keysAndValues ...interface{}) {
case string: case string:
writeStringValue(b, true, value) writeStringValue(b, true, value)
default: default:
writeStringValue(b, false, fmt.Sprintf("%+v", v)) writeStringValue(b, false, fmt.Sprintf("%+v", value))
} }
case []byte: case []byte:
// In https://github.com/kubernetes/klog/pull/237 it was decided // In https://github.com/kubernetes/klog/pull/237 it was decided

76
vendor/k8s.io/klog/v2/klog.go generated vendored
View File

@ -39,39 +39,38 @@
// This package provides several flags that modify this behavior. // This package provides several flags that modify this behavior.
// As a result, flag.Parse must be called before any logging is done. // As a result, flag.Parse must be called before any logging is done.
// //
// -logtostderr=true // -logtostderr=true
// Logs are written to standard error instead of to files. // Logs are written to standard error instead of to files.
// This shortcuts most of the usual output routing: // This shortcuts most of the usual output routing:
// -alsologtostderr, -stderrthreshold and -log_dir have no // -alsologtostderr, -stderrthreshold and -log_dir have no
// effect and output redirection at runtime with SetOutput is // effect and output redirection at runtime with SetOutput is
// ignored. // ignored.
// -alsologtostderr=false // -alsologtostderr=false
// Logs are written to standard error as well as to files. // Logs are written to standard error as well as to files.
// -stderrthreshold=ERROR // -stderrthreshold=ERROR
// Log events at or above this severity are logged to standard // Log events at or above this severity are logged to standard
// error as well as to files. // error as well as to files.
// -log_dir="" // -log_dir=""
// Log files will be written to this directory instead of the // Log files will be written to this directory instead of the
// default temporary directory. // default temporary directory.
// //
// Other flags provide aids to debugging. // Other flags provide aids to debugging.
//
// -log_backtrace_at=""
// When set to a file and line number holding a logging statement,
// such as
// -log_backtrace_at=gopherflakes.go:234
// a stack trace will be written to the Info log whenever execution
// hits that statement. (Unlike with -vmodule, the ".go" must be
// present.)
// -v=0
// Enable V-leveled logging at the specified level.
// -vmodule=""
// The syntax of the argument is a comma-separated list of pattern=N,
// where pattern is a literal file name (minus the ".go" suffix) or
// "glob" pattern and N is a V level. For instance,
// -vmodule=gopher*=3
// sets the V level to 3 in all Go files whose names begin "gopher".
// //
// -log_backtrace_at=""
// When set to a file and line number holding a logging statement,
// such as
// -log_backtrace_at=gopherflakes.go:234
// a stack trace will be written to the Info log whenever execution
// hits that statement. (Unlike with -vmodule, the ".go" must be
// present.)
// -v=0
// Enable V-leveled logging at the specified level.
// -vmodule=""
// The syntax of the argument is a comma-separated list of pattern=N,
// where pattern is a literal file name (minus the ".go" suffix) or
// "glob" pattern and N is a V level. For instance,
// -vmodule=gopher*=3
// sets the V level to 3 in all Go files whose names begin "gopher".
package klog package klog
import ( import (
@ -633,8 +632,11 @@ It returns a buffer containing the formatted header and the user's file and line
The depth specifies how many stack frames above lives the source line to be identified in the log message. The depth specifies how many stack frames above lives the source line to be identified in the log message.
Log lines have this form: Log lines have this form:
Lmmdd hh:mm:ss.uuuuuu threadid file:line] msg... Lmmdd hh:mm:ss.uuuuuu threadid file:line] msg...
where the fields are defined as follows: where the fields are defined as follows:
L A single character, representing the log level (eg 'I' for INFO) L A single character, representing the log level (eg 'I' for INFO)
mm The month (zero padded; ie May is '05') mm The month (zero padded; ie May is '05')
dd The day (zero padded) dd The day (zero padded)
@ -1298,9 +1300,13 @@ func newVerbose(level Level, b bool) Verbose {
// The returned value is a struct of type Verbose, which implements Info, Infoln // The returned value is a struct of type Verbose, which implements Info, Infoln
// and Infof. These methods will write to the Info log if called. // and Infof. These methods will write to the Info log if called.
// Thus, one may write either // Thus, one may write either
//
// if klog.V(2).Enabled() { klog.Info("log this") } // if klog.V(2).Enabled() { klog.Info("log this") }
//
// or // or
//
// klog.V(2).Info("log this") // klog.V(2).Info("log this")
//
// The second form is shorter but the first is cheaper if logging is off because it does // The second form is shorter but the first is cheaper if logging is off because it does
// not evaluate its arguments. // not evaluate its arguments.
// //
@ -1582,10 +1588,10 @@ func ErrorSDepth(depth int, err error, msg string, keysAndValues ...interface{})
// //
// Callers who want more control over handling of fatal events may instead use a // Callers who want more control over handling of fatal events may instead use a
// combination of different functions: // combination of different functions:
// - some info or error logging function, optionally with a stack trace // - some info or error logging function, optionally with a stack trace
// value generated by github.com/go-logr/lib/dbg.Backtrace // value generated by github.com/go-logr/lib/dbg.Backtrace
// - Flush to flush pending log data // - Flush to flush pending log data
// - panic, os.Exit or returning to the caller with an error // - panic, os.Exit or returning to the caller with an error
// //
// Arguments are handled in the manner of fmt.Print; a newline is appended if missing. // Arguments are handled in the manner of fmt.Print; a newline is appended if missing.
func Fatal(args ...interface{}) { func Fatal(args ...interface{}) {

20
vendor/modules.txt generated vendored
View File

@ -103,7 +103,7 @@ github.com/aws/amazon-ec2-instance-selector/v2/pkg/instancetypes
github.com/aws/amazon-ec2-instance-selector/v2/pkg/selector github.com/aws/amazon-ec2-instance-selector/v2/pkg/selector
github.com/aws/amazon-ec2-instance-selector/v2/pkg/selector/outputs github.com/aws/amazon-ec2-instance-selector/v2/pkg/selector/outputs
github.com/aws/amazon-ec2-instance-selector/v2/pkg/sorter github.com/aws/amazon-ec2-instance-selector/v2/pkg/sorter
# github.com/aws/aws-sdk-go v1.44.85 # github.com/aws/aws-sdk-go v1.44.90
## explicit; go 1.11 ## explicit; go 1.11
github.com/aws/aws-sdk-go/aws github.com/aws/aws-sdk-go/aws
github.com/aws/aws-sdk-go/aws/arn github.com/aws/aws-sdk-go/aws/arn
@ -456,7 +456,7 @@ github.com/googleapis/gax-go/v2
github.com/googleapis/gax-go/v2/apierror github.com/googleapis/gax-go/v2/apierror
github.com/googleapis/gax-go/v2/apierror/internal/proto github.com/googleapis/gax-go/v2/apierror/internal/proto
github.com/googleapis/gax-go/v2/internal github.com/googleapis/gax-go/v2/internal
# github.com/gophercloud/gophercloud v0.25.0 # github.com/gophercloud/gophercloud v1.0.0
## explicit; go 1.14 ## explicit; go 1.14
github.com/gophercloud/gophercloud github.com/gophercloud/gophercloud
github.com/gophercloud/gophercloud/openstack github.com/gophercloud/gophercloud/openstack
@ -565,7 +565,7 @@ github.com/hashicorp/hcl/hcl/token
github.com/hashicorp/hcl/json/parser github.com/hashicorp/hcl/json/parser
github.com/hashicorp/hcl/json/scanner github.com/hashicorp/hcl/json/scanner
github.com/hashicorp/hcl/json/token github.com/hashicorp/hcl/json/token
# github.com/hashicorp/hcl/v2 v2.13.0 # github.com/hashicorp/hcl/v2 v2.14.0
## explicit; go 1.18 ## explicit; go 1.18
github.com/hashicorp/hcl/v2 github.com/hashicorp/hcl/v2
github.com/hashicorp/hcl/v2/ext/customdecode github.com/hashicorp/hcl/v2/ext/customdecode
@ -854,7 +854,7 @@ github.com/spf13/viper/internal/encoding/javaproperties
github.com/spf13/viper/internal/encoding/json github.com/spf13/viper/internal/encoding/json
github.com/spf13/viper/internal/encoding/toml github.com/spf13/viper/internal/encoding/toml
github.com/spf13/viper/internal/encoding/yaml github.com/spf13/viper/internal/encoding/yaml
# github.com/spotinst/spotinst-sdk-go v1.126.0 # github.com/spotinst/spotinst-sdk-go v1.127.0
## explicit; go 1.16 ## explicit; go 1.16
github.com/spotinst/spotinst-sdk-go/service/elastigroup github.com/spotinst/spotinst-sdk-go/service/elastigroup
github.com/spotinst/spotinst-sdk-go/service/elastigroup/providers/aws github.com/spotinst/spotinst-sdk-go/service/elastigroup/providers/aws
@ -933,7 +933,7 @@ go.uber.org/atomic
# go.uber.org/multierr v1.8.0 # go.uber.org/multierr v1.8.0
## explicit; go 1.14 ## explicit; go 1.14
go.uber.org/multierr go.uber.org/multierr
# golang.org/x/crypto v0.0.0-20220824171710-5757bc0c5503 # golang.org/x/crypto v0.0.0-20220829220503-c86fa9a7ed90
## explicit; go 1.17 ## explicit; go 1.17
golang.org/x/crypto/bcrypt golang.org/x/crypto/bcrypt
golang.org/x/crypto/blake2b golang.org/x/crypto/blake2b
@ -960,7 +960,7 @@ golang.org/x/crypto/ssh/internal/bcrypt_pbkdf
golang.org/x/mod/internal/lazyregexp golang.org/x/mod/internal/lazyregexp
golang.org/x/mod/module golang.org/x/mod/module
golang.org/x/mod/semver golang.org/x/mod/semver
# golang.org/x/net v0.0.0-20220822230855-b0a4917ee28c # golang.org/x/net v0.0.0-20220826154423-83b083e8dc8b
## explicit; go 1.17 ## explicit; go 1.17
golang.org/x/net/bpf golang.org/x/net/bpf
golang.org/x/net/context golang.org/x/net/context
@ -991,7 +991,7 @@ golang.org/x/oauth2/jwt
## explicit ## explicit
golang.org/x/sync/errgroup golang.org/x/sync/errgroup
golang.org/x/sync/semaphore golang.org/x/sync/semaphore
# golang.org/x/sys v0.0.0-20220825204002-c680a09ffe64 # golang.org/x/sys v0.0.0-20220829200755-d48e67d00261
## explicit; go 1.17 ## explicit; go 1.17
golang.org/x/sys/cpu golang.org/x/sys/cpu
golang.org/x/sys/execabs golang.org/x/sys/execabs
@ -1643,8 +1643,8 @@ k8s.io/cloud-provider/service/helpers
k8s.io/cloud-provider/volume k8s.io/cloud-provider/volume
k8s.io/cloud-provider/volume/errors k8s.io/cloud-provider/volume/errors
k8s.io/cloud-provider/volume/helpers k8s.io/cloud-provider/volume/helpers
# k8s.io/cloud-provider-aws v1.24.1 # k8s.io/cloud-provider-aws v1.25.0
## explicit; go 1.18 ## explicit; go 1.19
k8s.io/cloud-provider-aws/pkg/providers/v1 k8s.io/cloud-provider-aws/pkg/providers/v1
# k8s.io/component-base v0.25.0 # k8s.io/component-base v0.25.0
## explicit; go 1.19 ## explicit; go 1.19
@ -1672,7 +1672,7 @@ k8s.io/gengo/types
# k8s.io/klog v1.0.0 # k8s.io/klog v1.0.0
## explicit; go 1.12 ## explicit; go 1.12
k8s.io/klog k8s.io/klog
# k8s.io/klog/v2 v2.70.1 # k8s.io/klog/v2 v2.80.0
## explicit; go 1.13 ## explicit; go 1.13
k8s.io/klog/v2 k8s.io/klog/v2
k8s.io/klog/v2/internal/buffer k8s.io/klog/v2/internal/buffer