diff --git a/go.mod b/go.mod index 1dfc1e82ba..8c3d1ec33a 100644 --- a/go.mod +++ b/go.mod @@ -30,20 +30,20 @@ require ( golang.org/x/sync v0.21.0 golang.org/x/sys v0.46.0 golang.org/x/text v0.38.0 - k8s.io/api v0.36.1 - k8s.io/apimachinery v0.36.1 - k8s.io/apiserver v0.36.1 - k8s.io/client-go v0.36.1 - k8s.io/cloud-provider v0.36.1 - k8s.io/component-base v0.36.1 - k8s.io/component-helpers v0.36.1 - k8s.io/controller-manager v0.36.1 + k8s.io/api v0.36.2 + k8s.io/apimachinery v0.36.2 + k8s.io/apiserver v0.36.2 + k8s.io/client-go v0.36.2 + k8s.io/cloud-provider v0.36.2 + k8s.io/component-base v0.36.2 + k8s.io/component-helpers v0.36.2 + k8s.io/controller-manager v0.36.2 k8s.io/klog/v2 v2.140.0 - k8s.io/kubelet v0.36.1 + k8s.io/kubelet v0.36.2 k8s.io/utils v0.0.0-20260210185600-b8788abfbbc2 - sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.6 - sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache v0.14.1 - sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.1 + sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.8 + sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache v0.14.2 + sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.2 sigs.k8s.io/yaml v1.6.0 ) @@ -115,11 +115,11 @@ require ( go.uber.org/zap v1.27.1 // indirect go.yaml.in/yaml/v2 v2.4.4 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect - golang.org/x/crypto v0.52.0 // indirect + golang.org/x/crypto v0.53.0 // indirect golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93 // indirect golang.org/x/net v0.55.0 // indirect golang.org/x/oauth2 v0.34.0 // indirect - golang.org/x/term v0.43.0 // indirect + golang.org/x/term v0.44.0 // indirect golang.org/x/time v0.15.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20260128011058-8636f8732409 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20260128011058-8636f8732409 // indirect @@ -129,9 +129,9 @@ require ( gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/kms v0.36.1 // indirect + k8s.io/kms v0.36.2 // indirect k8s.io/kube-openapi v0.0.0-20260317180543-43fb72c5454a // indirect - k8s.io/streaming v0.36.1 // indirect + k8s.io/streaming v0.36.2 // indirect sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.34.0 // indirect sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect sigs.k8s.io/randfill v1.0.0 // indirect diff --git a/go.sum b/go.sum index f90bcc2663..4bfd9616f2 100644 --- a/go.sum +++ b/go.sum @@ -272,8 +272,8 @@ go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= -golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= +golang.org/x/crypto v0.53.0 h1:QZ4Muo8THX6CizN2vPPd5fBGHyogrdK9fG4wLPFUsto= +golang.org/x/crypto v0.53.0/go.mod h1:DNLU434OwVakk9PzuwV8w62mAJpRJL3vsgcfp4Qnsio= golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93 h1:fQsdNF2N+/YewlRZiricy4P1iimyPKZ/xwniHj8Q2a0= golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93/go.mod h1:EPRbTFwzwjXj9NpYyyrvenVh9Y+GFeEvMNh7Xuz7xgU= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= @@ -300,8 +300,8 @@ golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.46.0 h1:noSf2Fq6F8DBgS+LysIkx7rIExoNHJsxOAtPp4rthXw= golang.org/x/sys v0.46.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/term v0.43.0 h1:S4RLU2sB31O/NCl+zFN9Aru9A/Cq2aqKpTZJ6B+DwT4= -golang.org/x/term v0.43.0/go.mod h1:lrhlHNdQJHO+1qVYiHfFKVuVioJIheAc3fBSMFYEIsk= +golang.org/x/term v0.44.0 h1:0rLvDRCtNj0gZkyIXhCyOb2OAzEhLVqc4B+hrsBhrmc= +golang.org/x/term v0.44.0/go.mod h1:7ze4MdzUzLXpSAoFP1H0bOI9aXDqveSvatT5vKcFh2Y= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.38.0 h1:sXmwo9DwP3OK9EZ7PqAdaooSGozfl/3a6/xJcbzPRhE= @@ -342,42 +342,42 @@ gopkg.in/natefinch/lumberjack.v2 v2.2.1/go.mod h1:YD8tP3GAjkrDg1eZH7EGmyESg/lsYs gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -k8s.io/api v0.36.1 h1:XbL/EMj8K2aJpJtePmqUyQMsM0D4QI2pvl7YKJ20FTY= -k8s.io/api v0.36.1/go.mod h1:KOWo4ey3TINlXjeHVuwB3i+tXXnu+UcwFBHlI/9dvEo= -k8s.io/apimachinery v0.36.1 h1:G63Gjx2W+q0YD+72Vo8oY0nDnePVwnuzTmmy5ENrVSA= -k8s.io/apimachinery v0.36.1/go.mod h1:ibYOR00vW/I1kzvi5SF0dRuJ52BvKtfvRdOn35GPQ+8= -k8s.io/apiserver v0.36.1 h1:iMS5V+rPUertv5P9RaqJgmHHTuh4quWpoxchvMUY+JY= -k8s.io/apiserver v0.36.1/go.mod h1:Cby1PbLWztu0GDOxoO6iFOyyqIsziHNEW+w9zVQ22Kw= -k8s.io/client-go v0.36.1 h1:FN/K8QIT2CEDt+2WB2HnWrUANZ50AP5GII43/SP2JR0= -k8s.io/client-go v0.36.1/go.mod h1:s6rAnCtTGYDQnpNjEhSaISV+2O8jwruZ6m3QOYBFbtU= -k8s.io/cloud-provider v0.36.1 h1:2XWkuNJgkQHOxR0DtpTeOIEp5FQC++gDpIPo525MGsw= -k8s.io/cloud-provider v0.36.1/go.mod h1:Qf8XEPVkSDT4yl28hbAR+hbomLvXF8tCdltc26J+luc= -k8s.io/component-base v0.36.1 h1:iG6GsELftXqTNG9HG6kiVjatSgAw1sf5pJ6R5a6N0kA= -k8s.io/component-base v0.36.1/go.mod h1:nf9XPlntRdqO6WMeEWAA5F93Y4ICZQdeT9GeqLDB3JI= -k8s.io/component-helpers v0.36.1 h1:BTrr5fzNSm8TkQfXrKT3N9ioWwiC4n2FTIwGTUo/ccg= -k8s.io/component-helpers v0.36.1/go.mod h1:s38HnzKQRurbUnhI5IV8GwyL/a3lVuNCYZMTd+rITMM= -k8s.io/controller-manager v0.36.1 h1:d1ifPnAe3FFSnnvcDQiM93bGroFT1lF72GEBKsl+cbg= -k8s.io/controller-manager v0.36.1/go.mod h1:jeJUuFlgbgohGJWrm59Wdlgo3WqxssWXgD2sU6HG/Vo= +k8s.io/api v0.36.2 h1:TF6YDLIzKfccK7cq9YpTcGX8TJmEkHVRv78DM51fRYY= +k8s.io/api v0.36.2/go.mod h1:F4LbMO4brjZYh7yFkXWhynSvtB7YauxV4c+HHkNRGNg= +k8s.io/apimachinery v0.36.2 h1:0PE/W/WNy1UX61NLbXY5TMbJ6UwLL6E6lAPkYrKFxbQ= +k8s.io/apimachinery v0.36.2/go.mod h1:fvf/HOLXq9RId0rnDIbN1OEBvHXdQbLMM8nu0LcBUf4= +k8s.io/apiserver v0.36.2 h1:6vMnkmHZPeBloNkHUhmZYq7Ylv8WIB8xjyEl+eSt26E= +k8s.io/apiserver v0.36.2/go.mod h1:9PoQ2ikCytrZyZg11mGhLEF5m8Rgsb5FJmYJ4Wvnl1k= +k8s.io/client-go v0.36.2 h1:bfgxmFKc9CgqsgX4xKLAAdmTQlWee7Ob/HlDOrJ5TBI= +k8s.io/client-go v0.36.2/go.mod h1:1vgO4OAlfPnoLcb+Rze2GF5rAr14w8qjrYMoyXJzQj0= +k8s.io/cloud-provider v0.36.2 h1:pqIEKh6E3eBU2qn+B+cTOSfCC0TU7n2AyD++aAaOHkg= +k8s.io/cloud-provider v0.36.2/go.mod h1:mVFXxKcbigdGOUebI2zPvzRLfqstkPtdpVy46sqoAWQ= +k8s.io/component-base v0.36.2 h1:Z0VH80O7Ng0HDZnZj3WRR3urEGa0kTwmO8CwEwjVK1w= +k8s.io/component-base v0.36.2/go.mod h1:mGfFOA7Gwpdm1VW2cwSQYbiDIlz8GD2WGwH88QSeCyA= +k8s.io/component-helpers v0.36.2 h1:YsqocS183ThSUw90OXsxkKxIgdQF4qWInwrn6pZdDH8= +k8s.io/component-helpers v0.36.2/go.mod h1:YrHgzezjsyXAFq9+gKw6IbgJg7IHEUVwK41eEAiTRR4= +k8s.io/controller-manager v0.36.2 h1:uQrvXNDPsjDy3q7cECuFufUfmWhjQQccvVoUGLXcQPw= +k8s.io/controller-manager v0.36.2/go.mod h1:VGcOtE1E71vmt3tDIAdG/rQxzwNb6YE5us+paWyZtOQ= k8s.io/klog/v2 v2.140.0 h1:Tf+J3AH7xnUzZyVVXhTgGhEKnFqye14aadWv7bzXdzc= k8s.io/klog/v2 v2.140.0/go.mod h1:o+/RWfJ6PwpnFn7OyAG3QnO47BFsymfEfrz6XyYSSp0= -k8s.io/kms v0.36.1 h1:XdvKpywoW4k7YUHDh5uYP4mahJXECswHGfCddBBYLZs= -k8s.io/kms v0.36.1/go.mod h1:g91diTD9h0oJCCHkTb00krlF+Qm5HTnkWLi9Q/TpRoc= +k8s.io/kms v0.36.2 h1:o0l8zMRecm38k5NyRnO/3+2YA/MR6TMGcc3KQZA76hI= +k8s.io/kms v0.36.2/go.mod h1:g91diTD9h0oJCCHkTb00krlF+Qm5HTnkWLi9Q/TpRoc= k8s.io/kube-openapi v0.0.0-20260317180543-43fb72c5454a h1:xCeOEAOoGYl2jnJoHkC3hkbPJgdATINPMAxaynU2Ovg= k8s.io/kube-openapi v0.0.0-20260317180543-43fb72c5454a/go.mod h1:uGBT7iTA6c6MvqUvSXIaYZo9ukscABYi2btjhvgKGZ0= -k8s.io/kubelet v0.36.1 h1:FcHiG9wv92xerRPNxztuhYWqwS4IilOQNPxTPQewYgo= -k8s.io/kubelet v0.36.1/go.mod h1:e6IeoCwqc2TbneCKu6P8HjmWLi7U6SOh3Pocs32iGFM= -k8s.io/streaming v0.36.1 h1:L+K68n4Gg940BGNNYtUBvL1WTLL0YnKT3s+P1MNAmR4= -k8s.io/streaming v0.36.1/go.mod h1:z6fV3D+NVkoeqRMtWwlUZK6U17SY/LqNzOxWL6GyR/s= +k8s.io/kubelet v0.36.2 h1:9x+Tf8TEFYCcHdClzYL+IgDpfqbi+qqSdIIcXVKvr7k= +k8s.io/kubelet v0.36.2/go.mod h1:APRnAz9lmKmKsQunzUrZgQOm0k0f+NG9YxIrFCYYxcU= +k8s.io/streaming v0.36.2 h1:NSKthPPg9UFSKsRauVJUVGH2Dvn8fhKmY4qrMkw/p98= +k8s.io/streaming v0.36.2/go.mod h1:z6fV3D+NVkoeqRMtWwlUZK6U17SY/LqNzOxWL6GyR/s= k8s.io/utils v0.0.0-20260210185600-b8788abfbbc2 h1:AZYQSJemyQB5eRxqcPky+/7EdBj0xi3g0ZcxxJ7vbWU= k8s.io/utils v0.0.0-20260210185600-b8788abfbbc2/go.mod h1:xDxuJ0whA3d0I4mf/C4ppKHxXynQ+fxnkmQH0vTHnuk= sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.34.0 h1:hSfpvjjTQXQY2Fol2CS0QHMNs/WI1MOSGzCm1KhM5ec= sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.34.0/go.mod h1:Ve9uj1L+deCXFrPOk1LpFXqTg7LCFzFso6PA48q/XZw= -sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.6 h1:NHIFfJngnNU8Yzmw3nL9wCWcKWuvQo4PtJivyi5Wn8Q= -sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.6/go.mod h1:RD0ZxvaCWctOj2xq84TV88vS4bBGS8I5W6+Ej+UtuLA= -sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache v0.14.1 h1:Gzl5vJokHsPkX1A9MZWuydXH4UWiQuC38t1SvIckhvo= -sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache v0.14.1/go.mod h1:LlK4w9FZtQdG49p/oO+8nXIXQdCz73k6PlDlc4dnI6I= -sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.1 h1:vNEMu88k3XqR16jVbrP/RI46q7RFVn+w6vy8A4+ID4s= -sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.1/go.mod h1:YFVbHoUOS5NbRzWCyeqiTvXx/1rWNabYHUVFlDm1nSQ= +sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.8 h1:3ZF+R1tU30P/fQVabRtt6K8T6VFxRfM//fnlsQy77iE= +sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.8/go.mod h1:fpuFIHMcN4xOg5dHvQKGzFx/rkaGq0N3Yw5l9+ZzVXs= +sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache v0.14.2 h1:8oxoH0zPNSImdVniAMq1UauAeqbsKYTEyDSm81rY2SE= +sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache v0.14.2/go.mod h1:IoTOCX1sspsZ7zg2P4uVOKwG0jDmRVlok6msuyO4Qy8= +sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.2 h1:be6PmylCocI/CZTamSn9uQpchsXcb4SCaH9jl3KDxkQ= +sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.2/go.mod h1:bFd+YoGg9on0uMr5Y4HjFiBovY1y6GbmokVl35+zQAA= sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 h1:IpInykpT6ceI+QxKBbEflcR5EXP7sU1kvOlxwZh5txg= sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg= sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU= diff --git a/tests/go.mod b/tests/go.mod index 05abc390cc..fb496b9c46 100644 --- a/tests/go.mod +++ b/tests/go.mod @@ -13,14 +13,14 @@ require ( github.com/onsi/ginkgo/v2 v2.29.0 github.com/onsi/gomega v1.41.0 github.com/stretchr/testify v1.11.1 - k8s.io/api v0.36.1 - k8s.io/apimachinery v0.36.1 - k8s.io/client-go v0.36.1 - k8s.io/cloud-provider v0.36.1 + k8s.io/api v0.36.2 + k8s.io/apimachinery v0.36.2 + k8s.io/client-go v0.36.2 + k8s.io/cloud-provider v0.36.2 k8s.io/klog/v2 v2.140.0 k8s.io/utils v0.0.0-20260210185600-b8788abfbbc2 sigs.k8s.io/cloud-provider-azure v0.0.0-00010101000000-000000000000 - sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.6 + sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.8 ) require ( @@ -91,14 +91,14 @@ require ( go.uber.org/mock v0.6.0 // indirect go.yaml.in/yaml/v2 v2.4.4 // indirect go.yaml.in/yaml/v3 v3.0.4 // indirect - golang.org/x/crypto v0.52.0 // indirect + golang.org/x/crypto v0.53.0 // indirect golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93 // indirect golang.org/x/mod v0.36.0 // indirect golang.org/x/net v0.55.0 // indirect golang.org/x/oauth2 v0.34.0 // indirect golang.org/x/sync v0.21.0 // indirect golang.org/x/sys v0.46.0 // indirect - golang.org/x/term v0.43.0 // indirect + golang.org/x/term v0.44.0 // indirect golang.org/x/text v0.38.0 // indirect golang.org/x/time v0.15.0 // indirect golang.org/x/tools v0.45.0 // indirect @@ -106,10 +106,10 @@ require ( gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/component-base v0.36.1 // indirect - k8s.io/component-helpers v0.36.1 // indirect + k8s.io/component-base v0.36.2 // indirect + k8s.io/component-helpers v0.36.2 // indirect k8s.io/kube-openapi v0.0.0-20260317180543-43fb72c5454a // indirect - sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.1 // indirect + sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.2 // indirect sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 // indirect sigs.k8s.io/randfill v1.0.0 // indirect sigs.k8s.io/structured-merge-diff/v6 v6.3.2 // indirect diff --git a/tests/go.sum b/tests/go.sum index fc90ae0c71..bf04708d26 100644 --- a/tests/go.sum +++ b/tests/go.sum @@ -226,8 +226,8 @@ go.yaml.in/yaml/v2 v2.4.4 h1:tuyd0P+2Ont/d6e2rl3be67goVK4R6deVxCUX5vyPaQ= go.yaml.in/yaml/v2 v2.4.4/go.mod h1:gMZqIpDtDqOfM0uNfy0SkpRhvUryYH0Z6wdMYcacYXQ= go.yaml.in/yaml/v3 v3.0.4 h1:tfq32ie2Jv2UxXFdLJdh3jXuOzWiL1fo0bu/FbuKpbc= go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= -golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= -golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= +golang.org/x/crypto v0.53.0 h1:QZ4Muo8THX6CizN2vPPd5fBGHyogrdK9fG4wLPFUsto= +golang.org/x/crypto v0.53.0/go.mod h1:DNLU434OwVakk9PzuwV8w62mAJpRJL3vsgcfp4Qnsio= golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93 h1:fQsdNF2N+/YewlRZiricy4P1iimyPKZ/xwniHj8Q2a0= golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93/go.mod h1:EPRbTFwzwjXj9NpYyyrvenVh9Y+GFeEvMNh7Xuz7xgU= golang.org/x/mod v0.36.0 h1:JJjpVx6myfUsUdAzZuOSTTmRE0PfZeNWzzvKrP7amb4= @@ -241,8 +241,8 @@ golang.org/x/sync v0.21.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.46.0 h1:noSf2Fq6F8DBgS+LysIkx7rIExoNHJsxOAtPp4rthXw= golang.org/x/sys v0.46.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= -golang.org/x/term v0.43.0 h1:S4RLU2sB31O/NCl+zFN9Aru9A/Cq2aqKpTZJ6B+DwT4= -golang.org/x/term v0.43.0/go.mod h1:lrhlHNdQJHO+1qVYiHfFKVuVioJIheAc3fBSMFYEIsk= +golang.org/x/term v0.44.0 h1:0rLvDRCtNj0gZkyIXhCyOb2OAzEhLVqc4B+hrsBhrmc= +golang.org/x/term v0.44.0/go.mod h1:7ze4MdzUzLXpSAoFP1H0bOI9aXDqveSvatT5vKcFh2Y= golang.org/x/text v0.38.0 h1:sXmwo9DwP3OK9EZ7PqAdaooSGozfl/3a6/xJcbzPRhE= golang.org/x/text v0.38.0/go.mod h1:YXZt3QhHUKYT53r2lLKFIVi6Ao1jdzrTR/KQ09qyxF4= golang.org/x/time v0.15.0 h1:bbrp8t3bGUeFOx08pvsMYRTCVSMk89u4tKbNOZbp88U= @@ -262,28 +262,28 @@ gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -k8s.io/api v0.36.1 h1:XbL/EMj8K2aJpJtePmqUyQMsM0D4QI2pvl7YKJ20FTY= -k8s.io/api v0.36.1/go.mod h1:KOWo4ey3TINlXjeHVuwB3i+tXXnu+UcwFBHlI/9dvEo= -k8s.io/apimachinery v0.36.1 h1:G63Gjx2W+q0YD+72Vo8oY0nDnePVwnuzTmmy5ENrVSA= -k8s.io/apimachinery v0.36.1/go.mod h1:ibYOR00vW/I1kzvi5SF0dRuJ52BvKtfvRdOn35GPQ+8= -k8s.io/client-go v0.36.1 h1:FN/K8QIT2CEDt+2WB2HnWrUANZ50AP5GII43/SP2JR0= -k8s.io/client-go v0.36.1/go.mod h1:s6rAnCtTGYDQnpNjEhSaISV+2O8jwruZ6m3QOYBFbtU= -k8s.io/cloud-provider v0.36.1 h1:2XWkuNJgkQHOxR0DtpTeOIEp5FQC++gDpIPo525MGsw= -k8s.io/cloud-provider v0.36.1/go.mod h1:Qf8XEPVkSDT4yl28hbAR+hbomLvXF8tCdltc26J+luc= -k8s.io/component-base v0.36.1 h1:iG6GsELftXqTNG9HG6kiVjatSgAw1sf5pJ6R5a6N0kA= -k8s.io/component-base v0.36.1/go.mod h1:nf9XPlntRdqO6WMeEWAA5F93Y4ICZQdeT9GeqLDB3JI= -k8s.io/component-helpers v0.36.1 h1:BTrr5fzNSm8TkQfXrKT3N9ioWwiC4n2FTIwGTUo/ccg= -k8s.io/component-helpers v0.36.1/go.mod h1:s38HnzKQRurbUnhI5IV8GwyL/a3lVuNCYZMTd+rITMM= +k8s.io/api v0.36.2 h1:TF6YDLIzKfccK7cq9YpTcGX8TJmEkHVRv78DM51fRYY= +k8s.io/api v0.36.2/go.mod h1:F4LbMO4brjZYh7yFkXWhynSvtB7YauxV4c+HHkNRGNg= +k8s.io/apimachinery v0.36.2 h1:0PE/W/WNy1UX61NLbXY5TMbJ6UwLL6E6lAPkYrKFxbQ= +k8s.io/apimachinery v0.36.2/go.mod h1:fvf/HOLXq9RId0rnDIbN1OEBvHXdQbLMM8nu0LcBUf4= +k8s.io/client-go v0.36.2 h1:bfgxmFKc9CgqsgX4xKLAAdmTQlWee7Ob/HlDOrJ5TBI= +k8s.io/client-go v0.36.2/go.mod h1:1vgO4OAlfPnoLcb+Rze2GF5rAr14w8qjrYMoyXJzQj0= +k8s.io/cloud-provider v0.36.2 h1:pqIEKh6E3eBU2qn+B+cTOSfCC0TU7n2AyD++aAaOHkg= +k8s.io/cloud-provider v0.36.2/go.mod h1:mVFXxKcbigdGOUebI2zPvzRLfqstkPtdpVy46sqoAWQ= +k8s.io/component-base v0.36.2 h1:Z0VH80O7Ng0HDZnZj3WRR3urEGa0kTwmO8CwEwjVK1w= +k8s.io/component-base v0.36.2/go.mod h1:mGfFOA7Gwpdm1VW2cwSQYbiDIlz8GD2WGwH88QSeCyA= +k8s.io/component-helpers v0.36.2 h1:YsqocS183ThSUw90OXsxkKxIgdQF4qWInwrn6pZdDH8= +k8s.io/component-helpers v0.36.2/go.mod h1:YrHgzezjsyXAFq9+gKw6IbgJg7IHEUVwK41eEAiTRR4= k8s.io/klog/v2 v2.140.0 h1:Tf+J3AH7xnUzZyVVXhTgGhEKnFqye14aadWv7bzXdzc= k8s.io/klog/v2 v2.140.0/go.mod h1:o+/RWfJ6PwpnFn7OyAG3QnO47BFsymfEfrz6XyYSSp0= k8s.io/kube-openapi v0.0.0-20260317180543-43fb72c5454a h1:xCeOEAOoGYl2jnJoHkC3hkbPJgdATINPMAxaynU2Ovg= k8s.io/kube-openapi v0.0.0-20260317180543-43fb72c5454a/go.mod h1:uGBT7iTA6c6MvqUvSXIaYZo9ukscABYi2btjhvgKGZ0= k8s.io/utils v0.0.0-20260210185600-b8788abfbbc2 h1:AZYQSJemyQB5eRxqcPky+/7EdBj0xi3g0ZcxxJ7vbWU= k8s.io/utils v0.0.0-20260210185600-b8788abfbbc2/go.mod h1:xDxuJ0whA3d0I4mf/C4ppKHxXynQ+fxnkmQH0vTHnuk= -sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.6 h1:NHIFfJngnNU8Yzmw3nL9wCWcKWuvQo4PtJivyi5Wn8Q= -sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.6/go.mod h1:RD0ZxvaCWctOj2xq84TV88vS4bBGS8I5W6+Ej+UtuLA= -sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.1 h1:vNEMu88k3XqR16jVbrP/RI46q7RFVn+w6vy8A4+ID4s= -sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.1/go.mod h1:YFVbHoUOS5NbRzWCyeqiTvXx/1rWNabYHUVFlDm1nSQ= +sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.8 h1:3ZF+R1tU30P/fQVabRtt6K8T6VFxRfM//fnlsQy77iE= +sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.8/go.mod h1:fpuFIHMcN4xOg5dHvQKGzFx/rkaGq0N3Yw5l9+ZzVXs= +sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.2 h1:be6PmylCocI/CZTamSn9uQpchsXcb4SCaH9jl3KDxkQ= +sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.2/go.mod h1:bFd+YoGg9on0uMr5Y4HjFiBovY1y6GbmokVl35+zQAA= sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 h1:IpInykpT6ceI+QxKBbEflcR5EXP7sU1kvOlxwZh5txg= sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg= sigs.k8s.io/randfill v1.0.0 h1:JfjMILfT8A6RbawdsK2JXGBR5AQVfd+9TbzrlneTyrU= diff --git a/vendor/golang.org/x/crypto/pkcs12/crypto.go b/vendor/golang.org/x/crypto/pkcs12/crypto.go index 212538cb5a..3f307323cc 100644 --- a/vendor/golang.org/x/crypto/pkcs12/crypto.go +++ b/vendor/golang.org/x/crypto/pkcs12/crypto.go @@ -80,6 +80,10 @@ func pbDecrypterFor(algorithm pkix.AlgorithmIdentifier, password []byte) (cipher return nil, 0, err } + if params.Iterations < 0 || params.Iterations > maxIterations { + return nil, 0, NotImplementedError("iteration count is invalid or too high") + } + key := cipherType.deriveKey(params.Salt, password, params.Iterations) iv := cipherType.deriveIV(params.Salt, password, params.Iterations) diff --git a/vendor/golang.org/x/crypto/pkcs12/mac.go b/vendor/golang.org/x/crypto/pkcs12/mac.go index 5f38aa7de8..84039cee1e 100644 --- a/vendor/golang.org/x/crypto/pkcs12/mac.go +++ b/vendor/golang.org/x/crypto/pkcs12/mac.go @@ -27,11 +27,19 @@ var ( oidSHA1 = asn1.ObjectIdentifier([]int{1, 3, 14, 3, 2, 26}) ) +// maxIterations is a safety limit to prevent CPU exhaustion from +// crafted PKCS#12 files with unreasonable iteration counts. +const maxIterations = 1 << 20 // ~1 million + func verifyMac(macData *macData, message, password []byte) error { if !macData.Mac.Algorithm.Algorithm.Equal(oidSHA1) { return NotImplementedError("unknown digest algorithm: " + macData.Mac.Algorithm.Algorithm.String()) } + if macData.Iterations < 0 || macData.Iterations > maxIterations { + return NotImplementedError("iteration count is invalid or too high") + } + key := pbkdf(sha1Sum, 20, 64, macData.MacSalt, password, macData.Iterations, 3, 20) mac := hmac.New(sha1.New, key) diff --git a/vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go b/vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go index 839fcbc2c1..9a4f378483 100644 --- a/vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go +++ b/vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go @@ -46,7 +46,7 @@ func ValidateAnnotations(annotations map[string]string, fldPath *field.Path) fie for k := range annotations { // The rule is QualifiedName except that case doesn't matter, so convert to lowercase before checking. for _, msg := range validation.IsQualifiedName(strings.ToLower(k)) { - allErrs = append(allErrs, field.Invalid(fldPath, k, msg)).WithOrigin("format=k8s-label-key") + allErrs = append(allErrs, field.Invalid(fldPath, k, msg).WithOrigin("format=k8s-label-key")) } } if err := ValidateAnnotationsSize(annotations); err != nil { diff --git a/vendor/modules.txt b/vendor/modules.txt index 278b47d83f..df4c2ec232 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -454,7 +454,7 @@ go.yaml.in/yaml/v2 # go.yaml.in/yaml/v3 v3.0.4 ## explicit; go 1.16 go.yaml.in/yaml/v3 -# golang.org/x/crypto v0.52.0 +# golang.org/x/crypto v0.53.0 ## explicit; go 1.25.0 golang.org/x/crypto/cryptobyte golang.org/x/crypto/cryptobyte/asn1 @@ -496,7 +496,7 @@ golang.org/x/sys/unix golang.org/x/sys/windows golang.org/x/sys/windows/registry golang.org/x/sys/windows/svc -# golang.org/x/term v0.43.0 +# golang.org/x/term v0.44.0 ## explicit; go 1.25.0 golang.org/x/term # golang.org/x/text v0.38.0 @@ -658,7 +658,7 @@ gopkg.in/natefinch/lumberjack.v2 # gopkg.in/yaml.v3 v3.0.1 ## explicit gopkg.in/yaml.v3 -# k8s.io/api v0.36.1 +# k8s.io/api v0.36.2 ## explicit; go 1.26.0 k8s.io/api/admission/v1 k8s.io/api/admission/v1beta1 @@ -718,7 +718,7 @@ k8s.io/api/storage/v1 k8s.io/api/storage/v1alpha1 k8s.io/api/storage/v1beta1 k8s.io/api/storagemigration/v1beta1 -# k8s.io/apimachinery v0.36.1 +# k8s.io/apimachinery v0.36.2 ## explicit; go 1.26.0 k8s.io/apimachinery/pkg/api/equality k8s.io/apimachinery/pkg/api/errors @@ -785,7 +785,7 @@ k8s.io/apimachinery/pkg/version k8s.io/apimachinery/pkg/watch k8s.io/apimachinery/third_party/forked/golang/json k8s.io/apimachinery/third_party/forked/golang/reflect -# k8s.io/apiserver v0.36.1 +# k8s.io/apiserver v0.36.2 ## explicit; go 1.26.0 k8s.io/apiserver/pkg/admission k8s.io/apiserver/pkg/admission/configuration @@ -967,7 +967,7 @@ k8s.io/apiserver/plugin/pkg/audit/webhook k8s.io/apiserver/plugin/pkg/authenticator/token/webhook k8s.io/apiserver/plugin/pkg/authorizer/webhook k8s.io/apiserver/plugin/pkg/authorizer/webhook/metrics -# k8s.io/client-go v0.36.1 +# k8s.io/client-go v0.36.2 ## explicit; go 1.26.0 k8s.io/client-go/applyconfigurations k8s.io/client-go/applyconfigurations/admissionregistration/v1 @@ -1301,7 +1301,7 @@ k8s.io/client-go/util/keyutil k8s.io/client-go/util/retry k8s.io/client-go/util/watchlist k8s.io/client-go/util/workqueue -# k8s.io/cloud-provider v0.36.1 +# k8s.io/cloud-provider v0.36.2 ## explicit; go 1.26.0 k8s.io/cloud-provider k8s.io/cloud-provider/api @@ -1321,7 +1321,7 @@ k8s.io/cloud-provider/names k8s.io/cloud-provider/node/helpers k8s.io/cloud-provider/options k8s.io/cloud-provider/service/helpers -# k8s.io/component-base v0.36.1 +# k8s.io/component-base v0.36.2 ## explicit; go 1.26.0 k8s.io/component-base/cli/flag k8s.io/component-base/cli/globalflag @@ -1356,10 +1356,10 @@ k8s.io/component-base/tracing k8s.io/component-base/tracing/api/v1 k8s.io/component-base/version k8s.io/component-base/zpages/features -# k8s.io/component-helpers v0.36.1 +# k8s.io/component-helpers v0.36.2 ## explicit; go 1.26.0 k8s.io/component-helpers/node/util -# k8s.io/controller-manager v0.36.1 +# k8s.io/controller-manager v0.36.2 ## explicit; go 1.26.0 k8s.io/controller-manager/app k8s.io/controller-manager/config @@ -1386,7 +1386,7 @@ k8s.io/klog/v2/internal/severity k8s.io/klog/v2/internal/sloghandler k8s.io/klog/v2/internal/verbosity k8s.io/klog/v2/textlogger -# k8s.io/kms v0.36.1 +# k8s.io/kms v0.36.2 ## explicit; go 1.26.0 k8s.io/kms/apis/v1beta1 k8s.io/kms/apis/v2 @@ -1414,14 +1414,14 @@ k8s.io/kube-openapi/pkg/validation/errors k8s.io/kube-openapi/pkg/validation/spec k8s.io/kube-openapi/pkg/validation/strfmt k8s.io/kube-openapi/pkg/validation/strfmt/bson -# k8s.io/kubelet v0.36.1 +# k8s.io/kubelet v0.36.2 ## explicit; go 1.26.0 k8s.io/kubelet/pkg/apis/credentialprovider k8s.io/kubelet/pkg/apis/credentialprovider/install k8s.io/kubelet/pkg/apis/credentialprovider/v1 k8s.io/kubelet/pkg/apis/credentialprovider/v1alpha1 k8s.io/kubelet/pkg/apis/credentialprovider/v1beta1 -# k8s.io/streaming v0.36.1 +# k8s.io/streaming v0.36.2 ## explicit; go 1.26.0 k8s.io/streaming/pkg/httpstream k8s.io/streaming/pkg/httpstream/wsstream @@ -1446,7 +1446,7 @@ sigs.k8s.io/apiserver-network-proxy/konnectivity-client/pkg/client sigs.k8s.io/apiserver-network-proxy/konnectivity-client/pkg/client/metrics sigs.k8s.io/apiserver-network-proxy/konnectivity-client/pkg/common/metrics sigs.k8s.io/apiserver-network-proxy/konnectivity-client/proto/client -# sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.6 +# sigs.k8s.io/cloud-provider-azure/pkg/azclient v0.20.8 ## explicit; go 1.25.0 sigs.k8s.io/cloud-provider-azure/pkg/azclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/accountclient @@ -1514,6 +1514,8 @@ sigs.k8s.io/cloud-provider-azure/pkg/azclient/secretclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/secretclient/mock_secretclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/securitygroupclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/securitygroupclient/mock_securitygroupclient +sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient +sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/mock_servicegatewayclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/snapshotclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/snapshotclient/mock_snapshotclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/sshpublickeyresourceclient @@ -1534,10 +1536,10 @@ sigs.k8s.io/cloud-provider-azure/pkg/azclient/virtualnetworkclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/virtualnetworkclient/mock_virtualnetworkclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/virtualnetworklinkclient sigs.k8s.io/cloud-provider-azure/pkg/azclient/virtualnetworklinkclient/mock_virtualnetworklinkclient -# sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache v0.14.1 +# sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache v0.14.2 ## explicit; go 1.26.0 sigs.k8s.io/cloud-provider-azure/pkg/azclient/cache -# sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.1 +# sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader v0.15.2 ## explicit; go 1.26.0 sigs.k8s.io/cloud-provider-azure/pkg/azclient/configloader # sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/Makefile b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/Makefile index 42f7e57c15..edcc28572a 100644 --- a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/Makefile +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/Makefile @@ -102,6 +102,7 @@ generatecode: build ## Generate client $(TYPESCAFFOLD) --package github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9 --package-alias armnetwork --resource PrivateLinkService --client-name PrivateLinkServicesClient --verbs get,createorupdate,delete,list --expand --ratelimitkey privateLinkServiceRateLimit $(TYPESCAFFOLD) --package github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9 --package-alias armnetwork --resource IPGroup --client-name IPGroupsClient --verbs get,createorupdate,delete,listbyrg --expand --ratelimitkey ipGroupRateLimit $(TYPESCAFFOLD) --package github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9 --package-alias armnetwork --resource NatGateway --client-name NatGatewaysClient --verbs get,createorupdate,delete,list --expand --ratelimitkey natGatewayRateLimit + $(TYPESCAFFOLD) --package github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9 --package-alias armnetwork --resource ServiceGateway --client-name ServiceGatewaysClient --verbs get,createorupdate,delete,list --ratelimitkey serviceGatewayRateLimit $(TYPESCAFFOLD) --package github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/storage/armstorage --package-alias armstorage --resource Account --client-name AccountsClient --verbs listbyrg --expand --ratelimitkey storageAccountRateLimit $(TYPESCAFFOLD) --package github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns --package-alias armprivatedns --resource PrivateZone --client-name PrivateZonesClient --verbs get,createorupdate --ratelimitkey privateDNSRateLimit $(TYPESCAFFOLD) --package github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/privatedns/armprivatedns --package-alias armprivatedns --resource PrivateZone --subresource VirtualNetworkLink --client-name VirtualNetworkLinksClient --verbs get,createorupdate --ratelimitkey virtualNetworkRateLimit diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/factory.go b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/factory.go index e294b520b2..184800f070 100644 --- a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/factory.go +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/factory.go @@ -46,6 +46,7 @@ import ( "sigs.k8s.io/cloud-provider-azure/pkg/azclient/routetableclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/secretclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/securitygroupclient" + "sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/snapshotclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/sshpublickeyresourceclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/subnetclient" @@ -92,6 +93,7 @@ type ClientFactory interface { GetRouteTableClient() routetableclient.Interface GetSecretClient() secretclient.Interface GetSecurityGroupClient() securitygroupclient.Interface + GetServiceGatewayClient() servicegatewayclient.Interface GetSnapshotClient() snapshotclient.Interface GetSnapshotClientForSub(subscriptionID string) (snapshotclient.Interface, error) GetSSHPublicKeyResourceClient() sshpublickeyresourceclient.Interface diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/factory_gen.go b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/factory_gen.go index e46fc1cdc2..d257d66460 100644 --- a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/factory_gen.go +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/factory_gen.go @@ -55,6 +55,7 @@ import ( "sigs.k8s.io/cloud-provider-azure/pkg/azclient/routetableclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/secretclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/securitygroupclient" + "sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/snapshotclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/sshpublickeyresourceclient" "sigs.k8s.io/cloud-provider-azure/pkg/azclient/subnetclient" @@ -101,6 +102,7 @@ type ClientFactoryImpl struct { routetableclientInterface routetableclient.Interface secretclientInterface secretclient.Interface securitygroupclientInterface securitygroupclient.Interface + servicegatewayclientInterface servicegatewayclient.Interface snapshotclientInterface sync.Map sshpublickeyresourceclientInterface sshpublickeyresourceclient.Interface subnetclientInterface subnetclient.Interface @@ -298,6 +300,12 @@ func NewClientFactory(config *ClientFactoryConfig, armConfig *ARMClientConfig, c return nil, err } + //initialize servicegatewayclient + factory.servicegatewayclientInterface, err = factory.createServiceGatewayClient(config.SubscriptionID) + if err != nil { + return nil, err + } + //initialize snapshotclient _, err = factory.GetSnapshotClientForSub(config.SubscriptionID) if err != nil { @@ -1138,6 +1146,31 @@ func (factory *ClientFactoryImpl) GetSecurityGroupClient() securitygroupclient.I return factory.securitygroupclientInterface } +func (factory *ClientFactoryImpl) createServiceGatewayClient(subscription string) (servicegatewayclient.Interface, error) { + //initialize servicegatewayclient + options, err := GetDefaultResourceClientOption(factory.armConfig) + if err != nil { + return nil, err + } + options.Cloud = factory.cloudConfig + //add ratelimit policy + ratelimitOption := factory.factoryConfig.GetRateLimitConfig("serviceGatewayRateLimit") + rateLimitPolicy := ratelimit.NewRateLimitPolicy(ratelimitOption) + if rateLimitPolicy != nil { + options.ClientOptions.PerCallPolicies = append(options.ClientOptions.PerCallPolicies, rateLimitPolicy) + } + for _, optionMutFn := range factory.clientOptionsMutFn { + if optionMutFn != nil { + optionMutFn(options) + } + } + return servicegatewayclient.New(subscription, factory.cred, options) +} + +func (factory *ClientFactoryImpl) GetServiceGatewayClient() servicegatewayclient.Interface { + return factory.servicegatewayclientInterface +} + func (factory *ClientFactoryImpl) createSnapshotClient(subscription string) (snapshotclient.Interface, error) { //initialize snapshotclient options, err := GetDefaultResourceClientOption(factory.armConfig) diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/mock_azclient/interface.go b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/mock_azclient/interface.go index f50584f291..ee7a6046ac 100644 --- a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/mock_azclient/interface.go +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/mock_azclient/interface.go @@ -59,6 +59,7 @@ import ( routetableclient "sigs.k8s.io/cloud-provider-azure/pkg/azclient/routetableclient" secretclient "sigs.k8s.io/cloud-provider-azure/pkg/azclient/secretclient" securitygroupclient "sigs.k8s.io/cloud-provider-azure/pkg/azclient/securitygroupclient" + servicegatewayclient "sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient" snapshotclient "sigs.k8s.io/cloud-provider-azure/pkg/azclient/snapshotclient" sshpublickeyresourceclient "sigs.k8s.io/cloud-provider-azure/pkg/azclient/sshpublickeyresourceclient" subnetclient "sigs.k8s.io/cloud-provider-azure/pkg/azclient/subnetclient" @@ -590,6 +591,20 @@ func (mr *MockClientFactoryMockRecorder) GetSecurityGroupClient() *gomock.Call { return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetSecurityGroupClient", reflect.TypeOf((*MockClientFactory)(nil).GetSecurityGroupClient)) } +// GetServiceGatewayClient mocks base method. +func (m *MockClientFactory) GetServiceGatewayClient() servicegatewayclient.Interface { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetServiceGatewayClient") + ret0, _ := ret[0].(servicegatewayclient.Interface) + return ret0 +} + +// GetServiceGatewayClient indicates an expected call of GetServiceGatewayClient. +func (mr *MockClientFactoryMockRecorder) GetServiceGatewayClient() *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetServiceGatewayClient", reflect.TypeOf((*MockClientFactory)(nil).GetServiceGatewayClient)) +} + // GetSnapshotClient mocks base method. func (m *MockClientFactory) GetSnapshotClient() snapshotclient.Interface { m.ctrl.T.Helper() diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/custom.go b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/custom.go new file mode 100644 index 0000000000..c6a3f26c11 --- /dev/null +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/custom.go @@ -0,0 +1,104 @@ +/* +Copyright 2026 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 servicegatewayclient + +import ( + "context" + + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + armnetwork "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9" + + "sigs.k8s.io/cloud-provider-azure/pkg/azclient/metrics" + "sigs.k8s.io/cloud-provider-azure/pkg/azclient/utils" +) + +const UpdateTagsOperationName = "ServiceGatewaysClient.UpdateTags" + +// UpdateTags updates the tags of a ServiceGateway. +func (client *Client) UpdateTags(ctx context.Context, resourceGroupName string, serviceGatewayName string, parameters armnetwork.TagsObject) (result *armnetwork.ServiceGateway, err error) { + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "update_tags") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, UpdateTagsOperationName, client.tracer, nil) + defer endSpan(err) + resp, err := client.ServiceGatewaysClient.UpdateTags(ctx, resourceGroupName, serviceGatewayName, parameters, nil) + if err != nil { + return nil, err + } + return &resp.ServiceGateway, nil +} + +const GetAddressLocationsOperationName = "ServiceGatewaysClient.GetAddressLocations" + +// GetAddressLocations gets the address locations of a ServiceGateway. +func (client *Client) GetAddressLocations(ctx context.Context, resourceGroupName string, serviceGatewayName string) (result []*armnetwork.ServiceGatewayAddressLocationResponse, err error) { + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "get_address_locations") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, GetAddressLocationsOperationName, client.tracer, nil) + defer endSpan(err) + pager := client.NewGetAddressLocationsPager(resourceGroupName, serviceGatewayName, nil) + for pager.More() { + nextResult, err := pager.NextPage(ctx) + if err != nil { + return nil, err + } + result = append(result, nextResult.Value...) + } + return result, nil +} + +const GetServicesOperationName = "ServiceGatewaysClient.GetServices" + +// GetServices gets the services of a ServiceGateway. +func (client *Client) GetServices(ctx context.Context, resourceGroupName string, serviceGatewayName string) (result []*armnetwork.ServiceGatewayService, err error) { + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "get_services") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, GetServicesOperationName, client.tracer, nil) + defer endSpan(err) + pager := client.NewGetServicesPager(resourceGroupName, serviceGatewayName, nil) + for pager.More() { + nextResult, err := pager.NextPage(ctx) + if err != nil { + return nil, err + } + result = append(result, nextResult.Value...) + } + return result, nil +} + +const UpdateAddressLocationsOperationName = "ServiceGatewaysClient.UpdateAddressLocations" + +// UpdateAddressLocations updates the address locations of a ServiceGateway. +func (client *Client) UpdateAddressLocations(ctx context.Context, resourceGroupName string, serviceGatewayName string, parameters armnetwork.ServiceGatewayUpdateAddressLocationsRequest) (err error) { + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "update_address_locations") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, UpdateAddressLocationsOperationName, client.tracer, nil) + defer endSpan(err) + _, err = utils.NewPollerWrapper(client.BeginUpdateAddressLocations(ctx, resourceGroupName, serviceGatewayName, parameters, nil)).WaitforPollerResp(ctx) + return err +} + +const UpdateServicesOperationName = "ServiceGatewaysClient.UpdateServices" + +// UpdateServices updates the services of a ServiceGateway. +func (client *Client) UpdateServices(ctx context.Context, resourceGroupName string, serviceGatewayName string, parameters armnetwork.ServiceGatewayUpdateServicesRequest) (err error) { + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "update_services") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, UpdateServicesOperationName, client.tracer, nil) + defer endSpan(err) + _, err = utils.NewPollerWrapper(client.BeginUpdateServices(ctx, resourceGroupName, serviceGatewayName, parameters, nil)).WaitforPollerResp(ctx) + return err +} diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/interface.go b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/interface.go new file mode 100644 index 0000000000..ce658ac7cb --- /dev/null +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/interface.go @@ -0,0 +1,39 @@ +/* +Copyright 2026 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. +*/ + +// +azure:enableclientgen:=true +package servicegatewayclient + +import ( + "context" + + armnetwork "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9" + + "sigs.k8s.io/cloud-provider-azure/pkg/azclient/utils" +) + +// +azure:client:verbs=get;createorupdate;delete;list,resource=ServiceGateway,packageName=github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9,packageAlias=armnetwork,clientName=ServiceGatewaysClient,expand=false,rateLimitKey=serviceGatewayRateLimit +type Interface interface { + utils.GetFunc[armnetwork.ServiceGateway] + utils.CreateOrUpdateFunc[armnetwork.ServiceGateway] + utils.DeleteFunc[armnetwork.ServiceGateway] + utils.ListFunc[armnetwork.ServiceGateway] + UpdateTags(ctx context.Context, resourceGroupName string, serviceGatewayName string, parameters armnetwork.TagsObject) (*armnetwork.ServiceGateway, error) + GetAddressLocations(ctx context.Context, resourceGroupName string, serviceGatewayName string) ([]*armnetwork.ServiceGatewayAddressLocationResponse, error) + GetServices(ctx context.Context, resourceGroupName string, serviceGatewayName string) ([]*armnetwork.ServiceGatewayService, error) + UpdateAddressLocations(ctx context.Context, resourceGroupName string, serviceGatewayName string, parameters armnetwork.ServiceGatewayUpdateAddressLocationsRequest) error + UpdateServices(ctx context.Context, resourceGroupName string, serviceGatewayName string, parameters armnetwork.ServiceGatewayUpdateServicesRequest) error +} diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/interface_gomock.go b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/interface_gomock.go new file mode 100644 index 0000000000..6bb7e7859b --- /dev/null +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/interface_gomock.go @@ -0,0 +1,25 @@ +// /* +// Copyright 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. +// */ + +// Code generated by client-gen. DO NOT EDIT. +package servicegatewayclient + +import ( + "sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/mock_servicegatewayclient" +) + +// Code generated by MockGen. DO NOT EDIT. +var _ Interface = &mock_servicegatewayclient.MockInterface{} diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/mock_servicegatewayclient/interface.go b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/mock_servicegatewayclient/interface.go new file mode 100644 index 0000000000..90172abac2 --- /dev/null +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/mock_servicegatewayclient/interface.go @@ -0,0 +1,409 @@ +// /* +// Copyright 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. +// */ +// + +// Code generated by MockGen. DO NOT EDIT. +// Source: servicegatewayclient/interface.go +// +// Generated by this command: +// +// mockgen -package mock_servicegatewayclient -source servicegatewayclient/interface.go -typed -write_generate_directive -copyright_file ../../hack/boilerplate/boilerplate.generatego.txt +// + +// Package mock_servicegatewayclient is a generated GoMock package. +package mock_servicegatewayclient + +import ( + context "context" + reflect "reflect" + + armnetwork "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9" + gomock "go.uber.org/mock/gomock" +) + +//go:generate mockgen -package mock_servicegatewayclient -source servicegatewayclient/interface.go -typed -write_generate_directive -copyright_file ../../hack/boilerplate/boilerplate.generatego.txt + +// MockInterface is a mock of Interface interface. +type MockInterface struct { + ctrl *gomock.Controller + recorder *MockInterfaceMockRecorder + isgomock struct{} +} + +// MockInterfaceMockRecorder is the mock recorder for MockInterface. +type MockInterfaceMockRecorder struct { + mock *MockInterface +} + +// NewMockInterface creates a new mock instance. +func NewMockInterface(ctrl *gomock.Controller) *MockInterface { + mock := &MockInterface{ctrl: ctrl} + mock.recorder = &MockInterfaceMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use. +func (m *MockInterface) EXPECT() *MockInterfaceMockRecorder { + return m.recorder +} + +// CreateOrUpdate mocks base method. +func (m *MockInterface) CreateOrUpdate(ctx context.Context, resourceGroupName, resourceName string, resourceParam armnetwork.ServiceGateway) (*armnetwork.ServiceGateway, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "CreateOrUpdate", ctx, resourceGroupName, resourceName, resourceParam) + ret0, _ := ret[0].(*armnetwork.ServiceGateway) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// CreateOrUpdate indicates an expected call of CreateOrUpdate. +func (mr *MockInterfaceMockRecorder) CreateOrUpdate(ctx, resourceGroupName, resourceName, resourceParam any) *MockInterfaceCreateOrUpdateCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateOrUpdate", reflect.TypeOf((*MockInterface)(nil).CreateOrUpdate), ctx, resourceGroupName, resourceName, resourceParam) + return &MockInterfaceCreateOrUpdateCall{Call: call} +} + +// MockInterfaceCreateOrUpdateCall wrap *gomock.Call +type MockInterfaceCreateOrUpdateCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceCreateOrUpdateCall) Return(arg0 *armnetwork.ServiceGateway, arg1 error) *MockInterfaceCreateOrUpdateCall { + c.Call = c.Call.Return(arg0, arg1) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceCreateOrUpdateCall) Do(f func(context.Context, string, string, armnetwork.ServiceGateway) (*armnetwork.ServiceGateway, error)) *MockInterfaceCreateOrUpdateCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceCreateOrUpdateCall) DoAndReturn(f func(context.Context, string, string, armnetwork.ServiceGateway) (*armnetwork.ServiceGateway, error)) *MockInterfaceCreateOrUpdateCall { + c.Call = c.Call.DoAndReturn(f) + return c +} + +// Delete mocks base method. +func (m *MockInterface) Delete(ctx context.Context, resourceGroupName, resourceName string) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Delete", ctx, resourceGroupName, resourceName) + ret0, _ := ret[0].(error) + return ret0 +} + +// Delete indicates an expected call of Delete. +func (mr *MockInterfaceMockRecorder) Delete(ctx, resourceGroupName, resourceName any) *MockInterfaceDeleteCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockInterface)(nil).Delete), ctx, resourceGroupName, resourceName) + return &MockInterfaceDeleteCall{Call: call} +} + +// MockInterfaceDeleteCall wrap *gomock.Call +type MockInterfaceDeleteCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceDeleteCall) Return(arg0 error) *MockInterfaceDeleteCall { + c.Call = c.Call.Return(arg0) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceDeleteCall) Do(f func(context.Context, string, string) error) *MockInterfaceDeleteCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceDeleteCall) DoAndReturn(f func(context.Context, string, string) error) *MockInterfaceDeleteCall { + c.Call = c.Call.DoAndReturn(f) + return c +} + +// Get mocks base method. +func (m *MockInterface) Get(ctx context.Context, resourceGroupName, resourceName string) (*armnetwork.ServiceGateway, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "Get", ctx, resourceGroupName, resourceName) + ret0, _ := ret[0].(*armnetwork.ServiceGateway) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// Get indicates an expected call of Get. +func (mr *MockInterfaceMockRecorder) Get(ctx, resourceGroupName, resourceName any) *MockInterfaceGetCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockInterface)(nil).Get), ctx, resourceGroupName, resourceName) + return &MockInterfaceGetCall{Call: call} +} + +// MockInterfaceGetCall wrap *gomock.Call +type MockInterfaceGetCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceGetCall) Return(result *armnetwork.ServiceGateway, rerr error) *MockInterfaceGetCall { + c.Call = c.Call.Return(result, rerr) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceGetCall) Do(f func(context.Context, string, string) (*armnetwork.ServiceGateway, error)) *MockInterfaceGetCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceGetCall) DoAndReturn(f func(context.Context, string, string) (*armnetwork.ServiceGateway, error)) *MockInterfaceGetCall { + c.Call = c.Call.DoAndReturn(f) + return c +} + +// GetAddressLocations mocks base method. +func (m *MockInterface) GetAddressLocations(ctx context.Context, resourceGroupName, serviceGatewayName string) ([]*armnetwork.ServiceGatewayAddressLocationResponse, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetAddressLocations", ctx, resourceGroupName, serviceGatewayName) + ret0, _ := ret[0].([]*armnetwork.ServiceGatewayAddressLocationResponse) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetAddressLocations indicates an expected call of GetAddressLocations. +func (mr *MockInterfaceMockRecorder) GetAddressLocations(ctx, resourceGroupName, serviceGatewayName any) *MockInterfaceGetAddressLocationsCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAddressLocations", reflect.TypeOf((*MockInterface)(nil).GetAddressLocations), ctx, resourceGroupName, serviceGatewayName) + return &MockInterfaceGetAddressLocationsCall{Call: call} +} + +// MockInterfaceGetAddressLocationsCall wrap *gomock.Call +type MockInterfaceGetAddressLocationsCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceGetAddressLocationsCall) Return(arg0 []*armnetwork.ServiceGatewayAddressLocationResponse, arg1 error) *MockInterfaceGetAddressLocationsCall { + c.Call = c.Call.Return(arg0, arg1) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceGetAddressLocationsCall) Do(f func(context.Context, string, string) ([]*armnetwork.ServiceGatewayAddressLocationResponse, error)) *MockInterfaceGetAddressLocationsCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceGetAddressLocationsCall) DoAndReturn(f func(context.Context, string, string) ([]*armnetwork.ServiceGatewayAddressLocationResponse, error)) *MockInterfaceGetAddressLocationsCall { + c.Call = c.Call.DoAndReturn(f) + return c +} + +// GetServices mocks base method. +func (m *MockInterface) GetServices(ctx context.Context, resourceGroupName, serviceGatewayName string) ([]*armnetwork.ServiceGatewayService, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetServices", ctx, resourceGroupName, serviceGatewayName) + ret0, _ := ret[0].([]*armnetwork.ServiceGatewayService) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetServices indicates an expected call of GetServices. +func (mr *MockInterfaceMockRecorder) GetServices(ctx, resourceGroupName, serviceGatewayName any) *MockInterfaceGetServicesCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetServices", reflect.TypeOf((*MockInterface)(nil).GetServices), ctx, resourceGroupName, serviceGatewayName) + return &MockInterfaceGetServicesCall{Call: call} +} + +// MockInterfaceGetServicesCall wrap *gomock.Call +type MockInterfaceGetServicesCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceGetServicesCall) Return(arg0 []*armnetwork.ServiceGatewayService, arg1 error) *MockInterfaceGetServicesCall { + c.Call = c.Call.Return(arg0, arg1) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceGetServicesCall) Do(f func(context.Context, string, string) ([]*armnetwork.ServiceGatewayService, error)) *MockInterfaceGetServicesCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceGetServicesCall) DoAndReturn(f func(context.Context, string, string) ([]*armnetwork.ServiceGatewayService, error)) *MockInterfaceGetServicesCall { + c.Call = c.Call.DoAndReturn(f) + return c +} + +// List mocks base method. +func (m *MockInterface) List(ctx context.Context, resourceGroupName string) ([]*armnetwork.ServiceGateway, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "List", ctx, resourceGroupName) + ret0, _ := ret[0].([]*armnetwork.ServiceGateway) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// List indicates an expected call of List. +func (mr *MockInterfaceMockRecorder) List(ctx, resourceGroupName any) *MockInterfaceListCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockInterface)(nil).List), ctx, resourceGroupName) + return &MockInterfaceListCall{Call: call} +} + +// MockInterfaceListCall wrap *gomock.Call +type MockInterfaceListCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceListCall) Return(result []*armnetwork.ServiceGateway, rerr error) *MockInterfaceListCall { + c.Call = c.Call.Return(result, rerr) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceListCall) Do(f func(context.Context, string) ([]*armnetwork.ServiceGateway, error)) *MockInterfaceListCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceListCall) DoAndReturn(f func(context.Context, string) ([]*armnetwork.ServiceGateway, error)) *MockInterfaceListCall { + c.Call = c.Call.DoAndReturn(f) + return c +} + +// UpdateAddressLocations mocks base method. +func (m *MockInterface) UpdateAddressLocations(ctx context.Context, resourceGroupName, serviceGatewayName string, parameters armnetwork.ServiceGatewayUpdateAddressLocationsRequest) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "UpdateAddressLocations", ctx, resourceGroupName, serviceGatewayName, parameters) + ret0, _ := ret[0].(error) + return ret0 +} + +// UpdateAddressLocations indicates an expected call of UpdateAddressLocations. +func (mr *MockInterfaceMockRecorder) UpdateAddressLocations(ctx, resourceGroupName, serviceGatewayName, parameters any) *MockInterfaceUpdateAddressLocationsCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateAddressLocations", reflect.TypeOf((*MockInterface)(nil).UpdateAddressLocations), ctx, resourceGroupName, serviceGatewayName, parameters) + return &MockInterfaceUpdateAddressLocationsCall{Call: call} +} + +// MockInterfaceUpdateAddressLocationsCall wrap *gomock.Call +type MockInterfaceUpdateAddressLocationsCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceUpdateAddressLocationsCall) Return(arg0 error) *MockInterfaceUpdateAddressLocationsCall { + c.Call = c.Call.Return(arg0) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceUpdateAddressLocationsCall) Do(f func(context.Context, string, string, armnetwork.ServiceGatewayUpdateAddressLocationsRequest) error) *MockInterfaceUpdateAddressLocationsCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceUpdateAddressLocationsCall) DoAndReturn(f func(context.Context, string, string, armnetwork.ServiceGatewayUpdateAddressLocationsRequest) error) *MockInterfaceUpdateAddressLocationsCall { + c.Call = c.Call.DoAndReturn(f) + return c +} + +// UpdateServices mocks base method. +func (m *MockInterface) UpdateServices(ctx context.Context, resourceGroupName, serviceGatewayName string, parameters armnetwork.ServiceGatewayUpdateServicesRequest) error { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "UpdateServices", ctx, resourceGroupName, serviceGatewayName, parameters) + ret0, _ := ret[0].(error) + return ret0 +} + +// UpdateServices indicates an expected call of UpdateServices. +func (mr *MockInterfaceMockRecorder) UpdateServices(ctx, resourceGroupName, serviceGatewayName, parameters any) *MockInterfaceUpdateServicesCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateServices", reflect.TypeOf((*MockInterface)(nil).UpdateServices), ctx, resourceGroupName, serviceGatewayName, parameters) + return &MockInterfaceUpdateServicesCall{Call: call} +} + +// MockInterfaceUpdateServicesCall wrap *gomock.Call +type MockInterfaceUpdateServicesCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceUpdateServicesCall) Return(arg0 error) *MockInterfaceUpdateServicesCall { + c.Call = c.Call.Return(arg0) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceUpdateServicesCall) Do(f func(context.Context, string, string, armnetwork.ServiceGatewayUpdateServicesRequest) error) *MockInterfaceUpdateServicesCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceUpdateServicesCall) DoAndReturn(f func(context.Context, string, string, armnetwork.ServiceGatewayUpdateServicesRequest) error) *MockInterfaceUpdateServicesCall { + c.Call = c.Call.DoAndReturn(f) + return c +} + +// UpdateTags mocks base method. +func (m *MockInterface) UpdateTags(ctx context.Context, resourceGroupName, serviceGatewayName string, parameters armnetwork.TagsObject) (*armnetwork.ServiceGateway, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "UpdateTags", ctx, resourceGroupName, serviceGatewayName, parameters) + ret0, _ := ret[0].(*armnetwork.ServiceGateway) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// UpdateTags indicates an expected call of UpdateTags. +func (mr *MockInterfaceMockRecorder) UpdateTags(ctx, resourceGroupName, serviceGatewayName, parameters any) *MockInterfaceUpdateTagsCall { + mr.mock.ctrl.T.Helper() + call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateTags", reflect.TypeOf((*MockInterface)(nil).UpdateTags), ctx, resourceGroupName, serviceGatewayName, parameters) + return &MockInterfaceUpdateTagsCall{Call: call} +} + +// MockInterfaceUpdateTagsCall wrap *gomock.Call +type MockInterfaceUpdateTagsCall struct { + *gomock.Call +} + +// Return rewrite *gomock.Call.Return +func (c *MockInterfaceUpdateTagsCall) Return(arg0 *armnetwork.ServiceGateway, arg1 error) *MockInterfaceUpdateTagsCall { + c.Call = c.Call.Return(arg0, arg1) + return c +} + +// Do rewrite *gomock.Call.Do +func (c *MockInterfaceUpdateTagsCall) Do(f func(context.Context, string, string, armnetwork.TagsObject) (*armnetwork.ServiceGateway, error)) *MockInterfaceUpdateTagsCall { + c.Call = c.Call.Do(f) + return c +} + +// DoAndReturn rewrite *gomock.Call.DoAndReturn +func (c *MockInterfaceUpdateTagsCall) DoAndReturn(f func(context.Context, string, string, armnetwork.TagsObject) (*armnetwork.ServiceGateway, error)) *MockInterfaceUpdateTagsCall { + c.Call = c.Call.DoAndReturn(f) + return c +} diff --git a/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/zz_generated_client.go b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/zz_generated_client.go new file mode 100644 index 0000000000..2d2abdaea0 --- /dev/null +++ b/vendor/sigs.k8s.io/cloud-provider-azure/pkg/azclient/servicegatewayclient/zz_generated_client.go @@ -0,0 +1,120 @@ +// /* +// Copyright 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. +// */ + +// Code generated by client-gen. DO NOT EDIT. +package servicegatewayclient + +import ( + "context" + + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/tracing" + armnetwork "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v9" + + "sigs.k8s.io/cloud-provider-azure/pkg/azclient/metrics" + "sigs.k8s.io/cloud-provider-azure/pkg/azclient/utils" +) + +type Client struct { + *armnetwork.ServiceGatewaysClient + subscriptionID string + tracer tracing.Tracer +} + +func New(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (Interface, error) { + if options == nil { + options = utils.GetDefaultOption() + } + tr := options.TracingProvider.NewTracer(utils.ModuleName, utils.ModuleVersion) + + client, err := armnetwork.NewServiceGatewaysClient(subscriptionID, credential, options) + if err != nil { + return nil, err + } + return &Client{ + ServiceGatewaysClient: client, + subscriptionID: subscriptionID, + tracer: tr, + }, nil +} + +const GetOperationName = "ServiceGatewaysClient.Get" + +// Get gets the ServiceGateway +func (client *Client) Get(ctx context.Context, resourceGroupName string, servicegatewayName string) (result *armnetwork.ServiceGateway, err error) { + + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "get") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, GetOperationName, client.tracer, nil) + defer endSpan(err) + resp, err := client.ServiceGatewaysClient.Get(ctx, resourceGroupName, servicegatewayName, nil) + if err != nil { + return nil, err + } + //handle statuscode + return &resp.ServiceGateway, nil +} + +const CreateOrUpdateOperationName = "ServiceGatewaysClient.Create" + +// CreateOrUpdate creates or updates a ServiceGateway. +func (client *Client) CreateOrUpdate(ctx context.Context, resourceGroupName string, servicegatewayName string, resource armnetwork.ServiceGateway) (result *armnetwork.ServiceGateway, err error) { + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "create_or_update") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, CreateOrUpdateOperationName, client.tracer, nil) + defer endSpan(err) + resp, err := utils.NewPollerWrapper(client.ServiceGatewaysClient.BeginCreateOrUpdate(ctx, resourceGroupName, servicegatewayName, resource, nil)).WaitforPollerResp(ctx) + if err != nil { + return nil, err + } + if resp != nil { + return &resp.ServiceGateway, nil + } + return nil, nil +} + +const DeleteOperationName = "ServiceGatewaysClient.Delete" + +// Delete deletes a ServiceGateway by name. +func (client *Client) Delete(ctx context.Context, resourceGroupName string, servicegatewayName string) (err error) { + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "delete") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, DeleteOperationName, client.tracer, nil) + defer endSpan(err) + _, err = utils.NewPollerWrapper(client.BeginDelete(ctx, resourceGroupName, servicegatewayName, nil)).WaitforPollerResp(ctx) + return err +} + +const ListOperationName = "ServiceGatewaysClient.List" + +// List gets a list of ServiceGateway in the resource group. +func (client *Client) List(ctx context.Context, resourceGroupName string) (result []*armnetwork.ServiceGateway, err error) { + metricsCtx := metrics.BeginARMRequest(client.subscriptionID, resourceGroupName, "ServiceGateway", "list") + defer func() { metricsCtx.Observe(ctx, err) }() + ctx, endSpan := runtime.StartSpan(ctx, ListOperationName, client.tracer, nil) + defer endSpan(err) + pager := client.ServiceGatewaysClient.NewListPager(resourceGroupName, nil) + for pager.More() { + nextResult, err := pager.NextPage(ctx) + if err != nil { + return nil, err + } + result = append(result, nextResult.Value...) + } + return result, nil +}