diff --git a/go.mod b/go.mod index 897706c8e8cb..de93a574cace 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module github.com/openshift/hypershift -go 1.25.7 +go 1.25.8 require ( github.com/Azure/azure-sdk-for-go/sdk/azcore v1.22.0 @@ -84,10 +84,10 @@ require ( github.com/stretchr/testify v1.11.1 github.com/vincent-petithory/dataurl v1.0.0 github.com/vmware-archive/yaml-patch v0.0.11 - go.etcd.io/etcd/api/v3 v3.6.11 - go.etcd.io/etcd/client/pkg/v3 v3.6.11 - go.etcd.io/etcd/client/v3 v3.6.11 - go.etcd.io/etcd/server/v3 v3.6.11 + go.etcd.io/etcd/api/v3 v3.6.12 + go.etcd.io/etcd/client/pkg/v3 v3.6.12 + go.etcd.io/etcd/client/v3 v3.6.12 + go.etcd.io/etcd/server/v3 v3.6.12 go.uber.org/mock v0.6.0 go.uber.org/zap v1.28.0 golang.org/x/crypto v0.53.0 @@ -95,9 +95,9 @@ require ( golang.org/x/oauth2 v0.36.0 golang.org/x/sync v0.21.0 golang.org/x/time v0.15.0 - google.golang.org/api v0.280.0 + google.golang.org/api v0.286.0 google.golang.org/grpc v1.81.1 - gopkg.in/ini.v1 v1.67.2 + gopkg.in/ini.v1 v1.67.3 gopkg.in/yaml.v2 v2.4.0 gopkg.in/yaml.v3 v3.0.1 k8s.io/api v0.35.1 @@ -115,7 +115,7 @@ require ( k8s.io/kubectl v0.35.1 k8s.io/pod-security-admission v0.35.1 k8s.io/utils v0.0.0-20260108192941-914a6e750570 - kubevirt.io/api v1.8.2 + kubevirt.io/api v1.8.4 kubevirt.io/containerized-data-importer-api v1.65.0 sigs.k8s.io/cluster-api v1.12.7 sigs.k8s.io/cluster-api-provider-aws/v2 v2.10.0 @@ -221,7 +221,7 @@ require ( github.com/google/gnostic-models v0.7.1 // indirect github.com/google/pprof v0.0.0-20260402051712-545e8a4df936 // indirect github.com/google/s2a-go v0.1.9 // indirect - github.com/googleapis/enterprise-certificate-proxy v0.3.15 // indirect + github.com/googleapis/enterprise-certificate-proxy v0.3.16 // indirect github.com/googleapis/gax-go/v2 v2.22.0 // indirect github.com/gophercloud/gophercloud/v2 v2.12.0 // indirect github.com/gorilla/mux v1.8.1 // indirect @@ -267,7 +267,7 @@ require ( github.com/sirupsen/logrus v1.9.4 // indirect github.com/x448/float16 v0.8.4 // indirect github.com/xlab/treeprint v1.2.0 // indirect - go.etcd.io/etcd/pkg/v3 v3.6.11 // indirect + go.etcd.io/etcd/pkg/v3 v3.6.12 // indirect go.etcd.io/raft/v3 v3.6.0 // indirect go.mongodb.org/mongo-driver v1.17.7 // indirect go.opentelemetry.io/auto/sdk v1.2.1 // indirect @@ -291,7 +291,7 @@ require ( golang.org/x/tools v0.45.0 // indirect gomodules.xyz/jsonpatch/v2 v2.5.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20260319201613-d00831a3d3e7 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20260511170946-3700d4141b60 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20260610212136-7ab31c22f7ad // indirect google.golang.org/protobuf v1.36.11 // indirect gopkg.in/evanphx/json-patch.v4 v4.13.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect diff --git a/go.sum b/go.sum index 546d396f6034..e8f2be02ff35 100644 --- a/go.sum +++ b/go.sum @@ -437,8 +437,8 @@ github.com/google/s2a-go v0.1.9/go.mod h1:YA0Ei2ZQL3acow2O62kdp9UlnvMmU7kA6Eutn0 github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/googleapis/enterprise-certificate-proxy v0.3.15 h1:xolVQTEXusUcAA5UgtyRLjelpFFHWlPQ4XfWGc7MBas= -github.com/googleapis/enterprise-certificate-proxy v0.3.15/go.mod h1:vqVt9yG9480NtzREnTlmGSBmFrA+bzb0yl0TxoBQXOg= +github.com/googleapis/enterprise-certificate-proxy v0.3.16 h1:F/VPrx0YPBdksZJQdCAp0WUsqnNmZpUZszzfYt0M5Dw= +github.com/googleapis/enterprise-certificate-proxy v0.3.16/go.mod h1:9Yb0eAkH/Xqhvv3zbeKf/+wMJqCeocWc6KIhDvEAuYE= github.com/googleapis/gax-go/v2 v2.22.0 h1:PjIWBpgGIVKGoCXuiCoP64altEJCj3/Ei+kSU5vlZD4= github.com/googleapis/gax-go/v2 v2.22.0/go.mod h1:irWBbALSr0Sk3qlqb9SyJ1h68WjgeFuiOzI4Rqw5+aY= github.com/googleapis/gnostic v0.5.1/go.mod h1:6U4PtQXGIEt/Z3h5MAT7FNofLnw9vXk2cUuW7uA/OeU= @@ -751,16 +751,16 @@ github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1 github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= go.etcd.io/bbolt v1.4.3 h1:dEadXpI6G79deX5prL3QRNP6JB8UxVkqo4UPnHaNXJo= go.etcd.io/bbolt v1.4.3/go.mod h1:tKQlpPaYCVFctUIgFKFnAlvbmB3tpy1vkTnDWohtc0E= -go.etcd.io/etcd/api/v3 v3.6.11 h1:XFGTgrJ8nak3kB4NgMG8t7NT+lEeuuvKQAqUHKVgkWQ= -go.etcd.io/etcd/api/v3 v3.6.11/go.mod h1:HYfTh0jyh+uFgp6gMbxJteIDYY97yMuYz85Rnw6Gy9o= -go.etcd.io/etcd/client/pkg/v3 v3.6.11 h1:e41mp315Yn3QMGPmEzCyLsMINgJXTY/dX8kM++1csxU= -go.etcd.io/etcd/client/pkg/v3 v3.6.11/go.mod h1:DysuMe/inqRyC/1tjRR6hReH/VV9Lufs27YKSKBWWJg= -go.etcd.io/etcd/client/v3 v3.6.11 h1:LAByD96VmmeuairkvdAcE0RZnrmGz/q3ceeWePo9bwc= -go.etcd.io/etcd/client/v3 v3.6.11/go.mod h1:vOTDMCo+fGPEClJqcFEFSqZ+8e7WKV7AyqJjX//HR2w= -go.etcd.io/etcd/pkg/v3 v3.6.11 h1:tPKcVOJHqz1n60DBm3gR1dZ3vtEVOz10oKLn9ytqW1I= -go.etcd.io/etcd/pkg/v3 v3.6.11/go.mod h1:L/M2AmhhJ1+3WFRMiJv4Ra0z2hJGYVcsU6q+58NDFfc= -go.etcd.io/etcd/server/v3 v3.6.11 h1:ltQkUbTRM/YVwZGRGFXi+qcjyECMVoKcoCxISSpvtxg= -go.etcd.io/etcd/server/v3 v3.6.11/go.mod h1:WGWPgjHk4fWKoC1ftSMuPvUbdOBqeqvc/pDBPQgN1aw= +go.etcd.io/etcd/api/v3 v3.6.12 h1:OLOZUKEuAA36TR48F0cIaa8FdzrWygjyfrJxXg4iDgs= +go.etcd.io/etcd/api/v3 v3.6.12/go.mod h1:p14EIQXHbuOQbVvL/WEes5uqKnxP9AgKJgpjbMVvzvE= +go.etcd.io/etcd/client/pkg/v3 v3.6.12 h1:36zzB+pQOdHbhN+kH2iJz/K8bJn0ZLtLfPPO7jozTDo= +go.etcd.io/etcd/client/pkg/v3 v3.6.12/go.mod h1:hh2+ZXtfLzs3o6mn92ntgNPBrTJJOvXqICM5g3L3DMY= +go.etcd.io/etcd/client/v3 v3.6.12 h1:kMSP6JcPZMqSJiX+TXdUIBU/4eXEZWBAaui4VihMbIc= +go.etcd.io/etcd/client/v3 v3.6.12/go.mod h1:CMs6fJWYiZQk4ytFjd4lE1diOvvRMmtbbn/alZXd3dQ= +go.etcd.io/etcd/pkg/v3 v3.6.12 h1:rewjbWPC/H5GHK0yxPbU0lzdFdQR9RlpZL7XmLYm2BE= +go.etcd.io/etcd/pkg/v3 v3.6.12/go.mod h1:qDFIetmpC8TTZfkZkDzpNrXtVqVsyYumRWNPFXFhcpQ= +go.etcd.io/etcd/server/v3 v3.6.12 h1:PAcIHCcTjPM1sbePiu7fCzNKQvOBFEaGnu2JFhgaGJQ= +go.etcd.io/etcd/server/v3 v3.6.12/go.mod h1:iiREo2DGRVjtiAjQeA3LQyYCk6YDFo3uS30/vImHdtk= go.etcd.io/raft/v3 v3.6.0 h1:5NtvbDVYpnfZWcIHgGRk9DyzkBIXOi8j+DDp1IcnUWQ= go.etcd.io/raft/v3 v3.6.0/go.mod h1:nLvLevg6+xrVtHUmVaTcTz603gQPHfh7kUAwV6YpfGo= go.mongodb.org/mongo-driver v1.17.7 h1:a9w+U3Vt67eYzcfq3k/OAv284/uUUkL0uP75VE5rCOU= @@ -944,8 +944,8 @@ gomodules.xyz/jsonpatch/v2 v2.5.0 h1:JELs8RLM12qJGXU4u/TO3V25KW8GreMKl9pdkk14RM0 gomodules.xyz/jsonpatch/v2 v2.5.0/go.mod h1:AH3dM2RI6uoBZxn3LVrfvJ3E0/9dG4cSrbuBJT4moAY= gonum.org/v1/gonum v0.17.0 h1:VbpOemQlsSMrYmn7T2OUvQ4dqxQXU+ouZFQsZOx50z4= gonum.org/v1/gonum v0.17.0/go.mod h1:El3tOrEuMpv2UdMrbNlKEh9vd86bmQ6vqIcDwxEOc1E= -google.golang.org/api v0.280.0 h1:F4OfEHZhZh6a7uTufJAXXVd/2TQ8EjM4vZH+jX/vFYk= -google.golang.org/api v0.280.0/go.mod h1:oGKmPZRDoD3vdkf6MA7F4VNkR1rxCiuaPSkhsf3EolU= +google.golang.org/api v0.286.0 h1:TdTXMvzYKnWV1/lPbCdbXRqBrkDqjPto22H2xeZZ8LI= +google.golang.org/api v0.286.0/go.mod h1:NlOlUIr8MPoIhT9Bb/oUnRuHbJOLwxb6JSYJM8Yz+jQ= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= @@ -956,8 +956,8 @@ google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7 h1:XzmzkmB14QhVhgn google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7/go.mod h1:L43LFes82YgSonw6iTXTxXUX1OlULt4AQtkik4ULL/I= google.golang.org/genproto/googleapis/api v0.0.0-20260319201613-d00831a3d3e7 h1:41r6JMbpzBMen0R/4TZeeAmGXSJC7DftGINUodzTkPI= google.golang.org/genproto/googleapis/api v0.0.0-20260319201613-d00831a3d3e7/go.mod h1:EIQZ5bFCfRQDV4MhRle7+OgjNtZ6P1PiZBgAKuxXu/Y= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260511170946-3700d4141b60 h1:seT2EwLWM78plQ7wcDfuWBc/4FAEAXDDiaSol4ku4qo= -google.golang.org/genproto/googleapis/rpc v0.0.0-20260511170946-3700d4141b60/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260610212136-7ab31c22f7ad h1:45WmJvIV6C2+O/jjLkPUH+F3aOj/1miDoU2DD0+NWbg= +google.golang.org/genproto/googleapis/rpc v0.0.0-20260610212136-7ab31c22f7ad/go.mod h1:4Hqkh8ycfw05ld/3BWL7rJOSfebL2Q+DVDeRgYgxUU8= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= @@ -989,8 +989,8 @@ gopkg.in/evanphx/json-patch.v4 v4.13.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWM gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= -gopkg.in/ini.v1 v1.67.2 h1:JtOSMb9OuaCZKr7h5D/h6iii14sK0hLbplTc6frx4Ss= -gopkg.in/ini.v1 v1.67.2/go.mod h1:x/cyOwCgZqOkJoDIJ3c1KNHMo10+nLGAhh+kn3Zizss= +gopkg.in/ini.v1 v1.67.3 h1:iM9Lhz5MRSGhHVGGwCuzG9KO8PoirCXj/m/qTmOJJQw= +gopkg.in/ini.v1 v1.67.3/go.mod h1:x/cyOwCgZqOkJoDIJ3c1KNHMo10+nLGAhh+kn3Zizss= gopkg.in/natefinch/lumberjack.v2 v2.2.1 h1:bBRl1b0OH9s/DuPhuXpNl+VtCaJXFZ5/uEFST95x9zc= gopkg.in/natefinch/lumberjack.v2 v2.2.1/go.mod h1:YD8tP3GAjkrDg1eZH7EGmyESg/lsYskCTPBJVb9jqSc= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= @@ -1066,8 +1066,8 @@ k8s.io/utils v0.0.0-20210802155522-efc7438f0176/go.mod h1:jPW/WVKK9YHAvNhRxK0md/ k8s.io/utils v0.0.0-20211116205334-6203023598ed/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA= k8s.io/utils v0.0.0-20260108192941-914a6e750570 h1:JT4W8lsdrGENg9W+YwwdLJxklIuKWdRm+BC+xt33FOY= k8s.io/utils v0.0.0-20260108192941-914a6e750570/go.mod h1:xDxuJ0whA3d0I4mf/C4ppKHxXynQ+fxnkmQH0vTHnuk= -kubevirt.io/api v1.8.2 h1:h8AACJlity2n8gRE6e9PgikLAwzmNz6gzVjT1kbsDZY= -kubevirt.io/api v1.8.2/go.mod h1:EUaPeD1GQK4IIEp8TVtk5dsFlYQGzFfcWi4CV4rs0rY= +kubevirt.io/api v1.8.4 h1:L0mULVzwCvcaw16svfDKseqF/c3gIP+Kjs3F90l4avk= +kubevirt.io/api v1.8.4/go.mod h1:EUaPeD1GQK4IIEp8TVtk5dsFlYQGzFfcWi4CV4rs0rY= kubevirt.io/containerized-data-importer-api v1.65.0 h1:eU7fX+htMQwMUQbhmoI99MqrpZGcyKQ6pX8t2xhCdkU= kubevirt.io/containerized-data-importer-api v1.65.0/go.mod h1:VWE7E1H+RsmCKBULIfvpCz2oThQ4f7JvoED2XpXaGfQ= kubevirt.io/controller-lifecycle-operator-sdk/api v0.2.4 h1:fZYvD3/Vnitfkx6IJxjLAk8ugnZQ7CXVYcRfkSKmuZY= diff --git a/vendor/github.com/googleapis/enterprise-certificate-proxy/client/client.go b/vendor/github.com/googleapis/enterprise-certificate-proxy/client/client.go index ea5beb5aa768..c0600808a344 100644 --- a/vendor/github.com/googleapis/enterprise-certificate-proxy/client/client.go +++ b/vendor/github.com/googleapis/enterprise-certificate-proxy/client/client.go @@ -118,7 +118,7 @@ func (k *Key) Public() crypto.PublicKey { // Sign signs a message digest, using the specified signer opts. Implements crypto.Signer interface. func (k *Key) Sign(_ io.Reader, digest []byte, opts crypto.SignerOpts) (signed []byte, err error) { if opts != nil && opts.HashFunc() != 0 && len(digest) != opts.HashFunc().Size() { - return nil, fmt.Errorf("Digest length of %v bytes does not match Hash function size of %v bytes", len(digest), opts.HashFunc().Size()) + return nil, fmt.Errorf("digest length of %v bytes does not match Hash function size of %v bytes", len(digest), opts.HashFunc().Size()) } err = k.client.Call(signAPI, SignArgs{Digest: digest, Opts: opts}, &signed) return @@ -138,7 +138,7 @@ func (k *Key) Decrypt(_ io.Reader, msg []byte, opts crypto.DecrypterOpts) (plain // ErrCredUnavailable is a sentinel error that indicates ECP Cred is unavailable, // possibly due to missing config or missing binary path. -var ErrCredUnavailable = errors.New("Cred is unavailable") +var ErrCredUnavailable = errors.New("cred is unavailable") // Cred spawns a signer subprocess that listens on stdin/stdout to perform certificate // related operations, including signing messages with the private key. diff --git a/vendor/github.com/googleapis/enterprise-certificate-proxy/client/util/util.go b/vendor/github.com/googleapis/enterprise-certificate-proxy/client/util/util.go index f374a7f55f47..ef76e1f047da 100644 --- a/vendor/github.com/googleapis/enterprise-certificate-proxy/client/util/util.go +++ b/vendor/github.com/googleapis/enterprise-certificate-proxy/client/util/util.go @@ -39,7 +39,7 @@ type Libs struct { // ErrConfigUnavailable is a sentinel error that indicates ECP config is unavailable, // possibly due to entire config missing or missing binary path. -var ErrConfigUnavailable = errors.New("Config is unavailable") +var ErrConfigUnavailable = errors.New("config is unavailable") // LoadSignerBinaryPath retrieves the path of the signer binary from the config file. func LoadSignerBinaryPath(configFilePath string) (path string, err error) { diff --git a/vendor/go.etcd.io/etcd/api/v3/version/version.go b/vendor/go.etcd.io/etcd/api/v3/version/version.go index 5d748b563c58..b5382afb0b96 100644 --- a/vendor/go.etcd.io/etcd/api/v3/version/version.go +++ b/vendor/go.etcd.io/etcd/api/v3/version/version.go @@ -26,7 +26,7 @@ import ( var ( // MinClusterVersion is the min cluster version this etcd binary is compatible with. MinClusterVersion = "3.0.0" - Version = "3.6.11" + Version = "3.6.12" APIVersion = "unknown" // Git SHA Value will be set during build diff --git a/vendor/go.etcd.io/etcd/server/v3/etcdserver/api/membership/cluster.go b/vendor/go.etcd.io/etcd/server/v3/etcdserver/api/membership/cluster.go index 299e61374cea..3378c96992b8 100644 --- a/vendor/go.etcd.io/etcd/server/v3/etcdserver/api/membership/cluster.go +++ b/vendor/go.etcd.io/etcd/server/v3/etcdserver/api/membership/cluster.go @@ -619,24 +619,31 @@ func (c *RaftCluster) UpdateRaftAttributes(id types.ID, raftAttr RaftAttributes, c.Lock() defer c.Unlock() + var ( + m *Member + ok bool + ) + + if m, ok = c.members[id]; !ok { + c.lg.Info("Skipped updating non-existent member in v2store", + zap.String("cluster-id", c.cid.String()), + zap.String("local-member-id", c.localID.String()), + zap.String("updated-remote-peer-id", id.String()), + zap.Strings("updated-remote-peer-urls", raftAttr.PeerURLs), + zap.Bool("updated-remote-peer-is-learner", raftAttr.IsLearner), + zap.Bool("should-apply-v3", bool(shouldApplyV3)), + ) + return + } + // `MemberUpdateRequest` only supports updating PeerURLs. + m.RaftAttributes.PeerURLs = raftAttr.PeerURLs + if c.v2store != nil { - if _, ok := c.members[id]; ok { - m := *(c.members[id]) - m.RaftAttributes = raftAttr - mustUpdateMemberInStore(c.lg, c.v2store, &m) - } else { - c.lg.Info("Skipped updating non-existent member in v2store", - zap.String("cluster-id", c.cid.String()), - zap.String("local-member-id", c.localID.String()), - zap.String("updated-remote-peer-id", id.String()), - zap.Strings("updated-remote-peer-urls", raftAttr.PeerURLs), - zap.Bool("updated-remote-peer-is-learner", raftAttr.IsLearner), - ) - } + mustUpdateMemberInStore(c.lg, c.v2store, m) } + if c.be != nil && shouldApplyV3 { - c.members[id].RaftAttributes = raftAttr - c.be.MustSaveMemberToBackend(c.members[id]) + c.be.MustSaveMemberToBackend(m) c.lg.Info( "updated member", diff --git a/vendor/google.golang.org/api/compute/v1/compute-api.json b/vendor/google.golang.org/api/compute/v1/compute-api.json index 9c88fd3ca023..50db8b7f63a0 100644 --- a/vendor/google.golang.org/api/compute/v1/compute-api.json +++ b/vendor/google.golang.org/api/compute/v1/compute-api.json @@ -5197,6 +5197,18 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "required": true, "type": "string" + }, + "view": { + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "The default view of a ForwardingRule, which includes the basic fields.", + "The full view, including the ForwardingRule.`attached_extensions` field." + ], + "location": "query", + "type": "string" } }, "path": "projects/{project}/regions/{region}/forwardingRules/{forwardingRule}", @@ -6172,6 +6184,18 @@ "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "required": true, "type": "string" + }, + "view": { + "enum": [ + "BASIC", + "FULL" + ], + "enumDescriptions": [ + "The default view of a ForwardingRule, which includes the basic fields.", + "The full view, including the ForwardingRule.`attached_extensions` field." + ], + "location": "query", + "type": "string" } }, "path": "projects/{project}/global/forwardingRules/{forwardingRule}", @@ -37971,6 +37995,51 @@ }, "rollouts": { "methods": { + "advance": { + "description": "Advances a Rollout to the next wave, or completes it if no waves remain.", + "flatPath": "projects/{project}/global/rollouts/{rollout}/advance", + "httpMethod": "POST", + "id": "compute.rollouts.advance", + "parameterOrder": [ + "project", + "rollout" + ], + "parameters": { + "currentWaveNumber": { + "description": "Required. Wave number of the current wave.", + "format": "int64", + "location": "query", + "type": "string" + }, + "project": { + "description": "Required. Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to advance.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/rollouts/{rollout}/advance", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "cancel": { "description": "Cancels a Rollout.", "flatPath": "projects/{project}/global/rollouts/{rollout}", @@ -38143,6 +38212,94 @@ "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/compute.readonly" ] + }, + "pause": { + "description": "Pauses a Rollout.", + "flatPath": "projects/{project}/global/rollouts/{rollout}/pause", + "httpMethod": "POST", + "id": "compute.rollouts.pause", + "parameterOrder": [ + "project", + "rollout" + ], + "parameters": { + "etag": { + "description": "The etag of the Rollout.\nIf this is provided, the request will only succeed if the etag matches\nthe current etag of the Rollout.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Required. Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to pause.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/rollouts/{rollout}/pause", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resume": { + "description": "Resumes a Rollout.", + "flatPath": "projects/{project}/global/rollouts/{rollout}/resume", + "httpMethod": "POST", + "id": "compute.rollouts.resume", + "parameterOrder": [ + "project", + "rollout" + ], + "parameters": { + "etag": { + "description": "The etag of the Rollout.\nIf this is provided, the request will only succeed if the etag matches\nthe current etag of the Rollout.", + "location": "query", + "type": "string" + }, + "project": { + "description": "Required. Project ID for this request.", + "location": "path", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "required": true, + "type": "string" + }, + "requestId": { + "description": "An optional request ID to identify requests. Specify a unique request ID so\nthat if you must retry your request, the server will know to ignore the\nrequest if it has already been completed.\n\nFor example, consider a situation where you make an initial request and\nthe request times out. If you make the request again with the same\nrequest ID, the server can check if original operation with the same\nrequest ID was received, and if so, will ignore the second request. This\nprevents clients from accidentally creating duplicate commitments.\n\nThe request ID must be\na valid UUID with the exception that zero UUID is not supported\n(00000000-0000-0000-0000-000000000000).", + "location": "query", + "type": "string" + }, + "rollout": { + "description": "Required. Name of the Rollout resource to resume.", + "location": "path", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?|[1-9][0-9]{0,19}", + "required": true, + "type": "string" + } + }, + "path": "projects/{project}/global/rollouts/{rollout}/resume", + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] } } }, @@ -47746,7 +47903,7 @@ } } }, - "revision": "20260501", + "revision": "20260612", "rootUrl": "https://compute.googleapis.com/", "schemas": { "AWSV4Signature": { @@ -50367,7 +50524,7 @@ "Do not automatically scale the MIG in or out.\nThe recommended_size field contains the size of MIG that would be set if\nthe actuation mode was enabled.", "Automatically scale the MIG in and out according to the policy.", "Automatically create VMs according to the policy, but do not scale\nthe MIG in.", - "Automatically create VMs according to the policy, but do not scale\nthe MIG in." + "Automatically create VMs according to the policy, but do not scale\nthe MIG in.\nIt's recommended to use ONLY_SCALE_OUT instead of ONLY_UP." ], "type": "string" }, @@ -52757,6 +52914,20 @@ "description": "Denotes whether to enable logging for the load balancer\ntraffic served by this backend service. The default value is false.", "type": "boolean" }, + "loggingHttpRequestHeaders": { + "description": "The list of request headers that will be logged to Stackdriver.", + "items": { + "$ref": "BackendServiceLogConfigLoggingHttpHeader" + }, + "type": "array" + }, + "loggingHttpResponseHeaders": { + "description": "The list of response headers that will be logged to Stackdriver.", + "items": { + "$ref": "BackendServiceLogConfigLoggingHttpHeader" + }, + "type": "array" + }, "optionalFields": { "description": "This field can only be specified if logging is enabled for this backend\nservice and \"logConfig.optionalMode\" was set to CUSTOM. Contains a list\nof optional fields you want to include in the logs. For example:\nserverInstance, serverGkeDetails.cluster,\nserverGkeDetails.pod.podNamespace", "items": { @@ -52786,6 +52957,17 @@ }, "type": "object" }, + "BackendServiceLogConfigLoggingHttpHeader": { + "description": "Determines which HTTP headers will be logged to Stackdriver.", + "id": "BackendServiceLogConfigLoggingHttpHeader", + "properties": { + "headerName": { + "description": "The name of the header to be logged.", + "type": "string" + } + }, + "type": "object" + }, "BackendServiceNetworkPassThroughLbTrafficPolicy": { "id": "BackendServiceNetworkPassThroughLbTrafficPolicy", "properties": { @@ -55591,6 +55773,57 @@ }, "type": "object" }, + "DateTime": { + "description": "Represents civil time (or occasionally physical time).\n\nThis type can represent a civil time in one of a few possible ways:\n\n * When utc_offset is set and time_zone is unset: a civil time on a calendar\n day with a particular offset from UTC.\n * When time_zone is set and utc_offset is unset: a civil time on a calendar\n day in a particular time zone.\n * When neither time_zone nor utc_offset is set: a civil time on a calendar\n day in local time.\n\nThe date is relative to the Proleptic Gregorian Calendar.\n\nIf year, month, or day are 0, the DateTime is considered not to have a\nspecific year, month, or day respectively.\n\nThis type may also be used to represent a physical time if all the date and\ntime fields are set and either case of the `time_offset` oneof is set.\nConsider using `Timestamp` message for physical time instead. If your use\ncase also would like to store the user's timezone, that can be done in\nanother field.\n\nThis type is more flexible than some applications may want. Make sure to\ndocument and validate your application's limitations.", + "id": "DateTime", + "properties": { + "day": { + "description": "Optional. Day of month. Must be from 1 to 31 and valid for the year and\nmonth, or 0 if specifying a datetime without a day.", + "format": "int32", + "type": "integer" + }, + "hours": { + "description": "Optional. Hours of day in 24 hour format. Should be from 0 to 23, defaults\nto 0 (midnight). An API may choose to allow the value \"24:00:00\" for\nscenarios like business closing time.", + "format": "int32", + "type": "integer" + }, + "minutes": { + "description": "Optional. Minutes of hour of day. Must be from 0 to 59, defaults to 0.", + "format": "int32", + "type": "integer" + }, + "month": { + "description": "Optional. Month of year. Must be from 1 to 12, or 0 if specifying a\ndatetime without a month.", + "format": "int32", + "type": "integer" + }, + "nanos": { + "description": "Optional. Fractions of seconds in nanoseconds. Must be from 0 to\n999,999,999, defaults to 0.", + "format": "int32", + "type": "integer" + }, + "seconds": { + "description": "Optional. Seconds of minutes of the time. Must normally be from 0 to 59,\ndefaults to 0. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32", + "type": "integer" + }, + "timeZone": { + "$ref": "TimeZone", + "description": "Time zone." + }, + "utcOffset": { + "description": "UTC offset. Must be whole seconds, between -18 hours and +18 hours.\nFor example, a UTC offset of -4:00 would be represented as\n{ seconds: -14400 }.", + "format": "google-duration", + "type": "string" + }, + "year": { + "description": "Optional. Year of date. Must be from 1 to 9999, or 0 if specifying a\ndatetime without a year.", + "format": "int32", + "type": "integer" + } + }, + "type": "object" + }, "DeprecationStatus": { "description": "Deprecation status for a public resource.", "id": "DeprecationStatus", @@ -58927,6 +59160,14 @@ "description": "This is used in PSC consumer ForwardingRule to control whether the PSC\nendpoint can be accessed from another region.", "type": "boolean" }, + "attachedExtensions": { + "description": "Output only. [Output Only]. The extensions that are attached to this ForwardingRule.", + "items": { + "$ref": "ForwardingRuleAttachedExtension" + }, + "readOnly": true, + "type": "array" + }, "backendService": { "description": "Identifies the backend service to which the forwarding rule sends traffic.\nRequired for internal and external passthrough Network Load Balancers;\nmust be omitted for all other load balancer types.", "type": "string" @@ -59319,6 +59560,18 @@ }, "type": "object" }, + "ForwardingRuleAttachedExtension": { + "description": "Reference to an extension resource that is attached to this ForwardingRule.", + "id": "ForwardingRuleAttachedExtension", + "properties": { + "reference": { + "description": "Output only. The resource name.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, "ForwardingRuleList": { "description": "Contains a list of ForwardingRule resources.", "id": "ForwardingRuleList", @@ -66960,14 +67213,14 @@ "id": "InstanceGroupManagerInstanceLifecyclePolicy", "properties": { "defaultActionOnFailure": { - "description": "The action that a MIG performs on a failed or an unhealthy VM.\nA VM is marked as unhealthy when the application running on that\nVM fails a health check.\nValid values are \n \n - REPAIR (default): MIG automatically repairs a failed or\n an unhealthy VM by recreating it. For more information, see About\n repairing VMs in a MIG.\n - DO_NOTHING: MIG does not repair a failed or an unhealthy\n VM.", + "description": "The action that a MIG performs on a failed VM. If the value of the\nonFailedHealthCheck field is `DEFAULT_ACTION`, then the same action also\napplies to the VMs on which your application fails a health check.\nValid values are \n \n - REPAIR (default): MIG automatically repairs a failed VM\n by recreating it. For more information, see About\n repairing VMs in a MIG.\n - DO_NOTHING: MIG does not repair a failed VM.", "enum": [ "DO_NOTHING", "REPAIR" ], "enumDescriptions": [ - "MIG does not repair a failed or an unhealthy VM.", - "(Default) MIG automatically repairs a failed or an unhealthy\nVM by recreating it. For more information, see About\nrepairing VMs in a MIG." + "MIG does not repair a failed VM.", + "(default): MIG automatically repairs a failed VM by recreating it.\nFor more information, see About\nrepairing VMs in a MIG." ], "type": "string" }, @@ -66996,6 +67249,29 @@ "MIG automatically repairs an unhealthy VM by recreating it." ], "type": "string" + }, + "onRepair": { + "$ref": "InstanceGroupManagerInstanceLifecyclePolicyOnRepair", + "description": "Configuration for VM repairs in the MIG." + } + }, + "type": "object" + }, + "InstanceGroupManagerInstanceLifecyclePolicyOnRepair": { + "description": "Configuration for VM repairs in the MIG.", + "id": "InstanceGroupManagerInstanceLifecyclePolicyOnRepair", + "properties": { + "allowChangingZone": { + "description": "Specifies whether the MIG can change a VM's zone during a repair.\nValid values are:\n \n - NO (default): MIG cannot change a VM's zone during a\n repair.\n - YES: MIG can select a different zone for the VM during\n a repair.", + "enum": [ + "NO", + "YES" + ], + "enumDescriptions": [ + "[Default] MIG cannot change a VM's zone during a repair.", + "MIG can select a different zone for the VM during a repair." + ], + "type": "string" } }, "type": "object" @@ -69282,16 +69558,16 @@ "properties": { "error": { "$ref": "InstanceManagedByIgmErrorManagedInstanceError", - "description": "Output only. [Output Only] Contents of the error.", + "description": "Output only. Contents of the error.", "readOnly": true }, "instanceActionDetails": { "$ref": "InstanceManagedByIgmErrorInstanceActionDetails", - "description": "Output only. [Output Only] Details of the instance action that triggered this error.\nMay be null, if the error was not caused by an action on an instance.\nThis field is optional.", + "description": "Output only. Details of the instance action that triggered this error.\nMay be null, if the error was not caused by an action on an instance.\nThis field is optional.", "readOnly": true }, "timestamp": { - "description": "Output only. [Output Only] The time that this error occurred.\nThis value is in RFC3339 text format.", + "description": "Output only. The time that this error occurred. This value is in RFC3339 text format.", "readOnly": true, "type": "string" } @@ -69302,7 +69578,7 @@ "id": "InstanceManagedByIgmErrorInstanceActionDetails", "properties": { "action": { - "description": "Output only. [Output Only] Action that managed instance group was executing on\nthe instance when the error occurred. Possible values:", + "description": "Output only. Action that managed instance group was executing on the instance when the\nerror occurred. Possible values:", "enum": [ "ABANDONING", "CREATING", @@ -69337,13 +69613,13 @@ "type": "string" }, "instance": { - "description": "Output only. [Output Only] The URL of the instance.\nThe URL can be set even if the instance has not yet been created.", + "description": "Output only. The URL of the instance. The URL can be set even if the instance has not\nyet been created.", "readOnly": true, "type": "string" }, "version": { "$ref": "ManagedInstanceVersion", - "description": "Output only. [Output Only] Version this instance was created from, or was being\ncreated from, but the creation failed. Corresponds to one of the versions\nthat were set on the Instance Group Manager resource at the time this\ninstance was being created.", + "description": "Output only. Version this instance was created from, or was being\ncreated from, but the creation failed. Corresponds to one of the versions\nthat were set on the Instance Group Manager resource at the time this\ninstance was being created.", "readOnly": true } }, @@ -69353,12 +69629,12 @@ "id": "InstanceManagedByIgmErrorManagedInstanceError", "properties": { "code": { - "description": "Output only. [Output Only] Error code.", + "description": "Output only. Error code.", "readOnly": true, "type": "string" }, "message": { - "description": "Output only. [Output Only] Error message.", + "description": "Output only. Error message.", "readOnly": true, "type": "string" } @@ -71418,6 +71694,11 @@ "description": "An optional description of this resource. Provide this property when you\ncreate the resource.", "type": "string" }, + "effectiveLocation": { + "description": "Output only. URL of the InterconnectLocation object that represents where\nthis connection is to be provisioned. By default it will be the same as the\nlocation field.", + "readOnly": true, + "type": "string" + }, "expectedOutages": { "description": "Output only. [Output Only] A list of outages expected for this Interconnect.", "items": { @@ -79446,6 +79727,13 @@ }, "type": "array" }, + "aliasIpv6Ranges": { + "description": "An array of alias IPv6 ranges for this network interface.\nYou can only specify this field for network interfaces in VPC networks.", + "items": { + "$ref": "AliasIpRange" + }, + "type": "array" + }, "enableVpcScopedDns": { "description": "Optional. If true, DNS resolution will be enabled over this interface. Only valid\nwith network_attachment.", "type": "boolean" @@ -85268,6 +85556,54 @@ }, "type": "object" }, + "PeriodicPartialMaintenanceSchedule": { + "description": "The periodic partial maintenance schedule includes 52 weeks worth of\nmaintenance windows.\nLINT.IfChange(PeriodicPartialMaintenanceSchedule)", + "id": "PeriodicPartialMaintenanceSchedule", + "properties": { + "subType": { + "description": "The maintenance type in which the zone is during the given window.", + "enum": [ + "MAINTENANCE_SUBTYPE_UNSPECIFIED", + "MAINTENANCE_TYPE_CUSTOMER_MAINTENANCE", + "MAINTENANCE_TYPE_DISRUPTIVE_UPGRADE", + "MAINTENANCE_TYPE_STABLE", + "MAINTENANCE_TYPE_TRANSITION" + ], + "enumDescriptions": [ + "Default value.", + "A dedicated window for customers to perform their own maintenance. This\noften runs concurrently with a DISRUPTIVE_UPGRADE.", + "For disruptive updates, including host machine kernel or firmware\nupgrades.", + "A post-maintenance window for customers to conduct final testing and\nperformance validation before resuming full business operations.", + "For preliminary, non-disruptive tasks such as key rotations." + ], + "type": "string" + }, + "targetResource": { + "description": "The target resource that the maintenance window is for.\nFor example, \"projects/my-project/zones/us-central1-a\".", + "type": "string" + }, + "type": { + "enum": [ + "MAINTENANCE_TYPE_UNSPECIFIED", + "PRIVATE_ZONE_MAINTENANCE" + ], + "enumDescriptions": [ + "Default value.", + "The zone is in a private maintenance window." + ], + "type": "string" + }, + "windowEndTime": { + "$ref": "DateTime", + "description": "The end civil timestamp of the window (not inclusive).\nThis contains a time zone." + }, + "windowStartTime": { + "$ref": "DateTime", + "description": "The start civil timestamp of the window.\nThis contains a time zone." + } + }, + "type": "object" + }, "Policy": { "description": "An Identity and Access Management (IAM) policy, which specifies access\ncontrols for Google Cloud resources.\n\n\nA `Policy` is a collection of `bindings`. A `binding` binds one or more\n`members`, or principals, to a single `role`. Principals can be user\naccounts, service accounts, Google groups, and domains (such as G Suite). A\n`role` is a named list of permissions; each `role` can be an IAM predefined\nrole or a user-created custom role.\n\nFor some types of Google Cloud resources, a `binding` can also specify a\n`condition`, which is a logical expression that allows access to a resource\nonly if the expression evaluates to `true`. A condition can add constraints\nbased on attributes of the request, the resource, or both. To learn which\nresources support conditions in their IAM policies, see the\n[IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).\n\n**JSON example:**\n\n```\n {\n \"bindings\": [\n {\n \"role\": \"roles/resourcemanager.organizationAdmin\",\n \"members\": [\n \"user:mike@example.com\",\n \"group:admins@example.com\",\n \"domain:google.com\",\n \"serviceAccount:my-project-id@appspot.gserviceaccount.com\"\n ]\n },\n {\n \"role\": \"roles/resourcemanager.organizationViewer\",\n \"members\": [\n \"user:eve@example.com\"\n ],\n \"condition\": {\n \"title\": \"expirable access\",\n \"description\": \"Does not grant access after Sep 2020\",\n \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\",\n }\n }\n ],\n \"etag\": \"BwWWja0YfJA=\",\n \"version\": 3\n }\n```\n\n**YAML example:**\n\n```\n bindings:\n - members:\n - user:mike@example.com\n - group:admins@example.com\n - domain:google.com\n - serviceAccount:my-project-id@appspot.gserviceaccount.com\n role: roles/resourcemanager.organizationAdmin\n - members:\n - user:eve@example.com\n role: roles/resourcemanager.organizationViewer\n condition:\n title: expirable access\n description: Does not grant access after Sep 2020\n expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\n etag: BwWWja0YfJA=\n version: 3\n```\n\nFor a description of IAM and its features, see the\n[IAM documentation](https://cloud.google.com/iam/docs/).", "id": "Policy", @@ -89830,6 +90166,11 @@ "description": "Represents a reservation block resource.", "id": "ReservationBlock", "properties": { + "blockHealthInfo": { + "$ref": "ReservationBlockHealthInfo", + "description": "Output only. [Output Only] Health information for the reservation block.", + "readOnly": true + }, "count": { "description": "Output only. [Output Only] The number of resources that are allocated in this\nreservation block.", "format": "int32", @@ -89841,11 +90182,6 @@ "readOnly": true, "type": "string" }, - "healthInfo": { - "$ref": "ReservationBlockHealthInfo", - "description": "Output only. [Output Only] Health information for the reservation block.", - "readOnly": true - }, "id": { "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", @@ -90690,11 +91026,6 @@ "readOnly": true, "type": "string" }, - "healthInfo": { - "$ref": "ReservationSubBlockHealthInfo", - "description": "Output only. [Output Only] Health information for the reservation subBlock.", - "readOnly": true - }, "id": { "description": "Output only. [Output Only] The unique identifier for the resource. This identifier is\ndefined by the server.", "format": "uint64", @@ -90761,6 +91092,11 @@ "readOnly": true, "type": "string" }, + "subBlockHealthInfo": { + "$ref": "ReservationSubBlockHealthInfo", + "description": "Output only. [Output Only] Health information for the reservation subBlock.", + "readOnly": true + }, "zone": { "description": "Output only. [Output Only] Zone in which the reservation subBlock resides.", "readOnly": true, @@ -92306,6 +92642,11 @@ "description": "Represents the physical host topology of the host on which the VM is\nrunning.", "id": "ResourceStatusPhysicalHostTopology", "properties": { + "additionalAttributes": { + "$ref": "ResourceStatusPhysicalHostTopologyAdditionalAttributes", + "description": "Output only. [Output Only] Additional location information of the running instance.", + "readOnly": true + }, "block": { "description": "[Output Only] The ID of the block in which the running instance is\nlocated. Instances within the same block experience low network latency.", "type": "string" @@ -92325,6 +92666,21 @@ }, "type": "object" }, + "ResourceStatusPhysicalHostTopologyAdditionalAttributes": { + "description": "Additional location information of the running instance.", + "id": "ResourceStatusPhysicalHostTopologyAdditionalAttributes", + "properties": { + "acceleratorTopologyIds": { + "additionalProperties": { + "type": "string" + }, + "description": "Output only. The IDs of the accelerator topologies the instance belongs to. For\nexample\nThe key will be topologies like \"4x4\", \"2x2x2\" and the value will be\nthe location ID of the topologies.", + "readOnly": true, + "type": "object" + } + }, + "type": "object" + }, "ResourceStatusReservationConsumptionInfo": { "description": "Reservation consumption information that the instance is consuming from.", "id": "ResourceStatusReservationConsumptionInfo", @@ -92399,6 +92755,16 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "pauseTime": { + "description": "Output only. The timestamp at which the Rollout was paused.", + "readOnly": true, + "type": "string" + }, + "resumeTime": { + "description": "Output only. The timestamp at which the Rollout was resumed.", + "readOnly": true, + "type": "string" + }, "rolloutEntity": { "$ref": "RolloutRolloutEntity", "description": "Required. The resource being rolled out." @@ -93818,6 +94184,10 @@ }, "type": "array" }, + "nccGateway": { + "description": "URI of the ncc_gateway to which this router associated.", + "type": "string" + }, "network": { "annotations": { "required": [ @@ -94558,6 +94928,12 @@ }, "type": "array" }, + "effectiveTcpTimeWaitTimeoutSec": { + "description": "Output only. Effective timeout (in seconds) for TCP connections that are in TIME_WAIT\nstate. This value is equal to tcp_time_wait_timeout_sec.\nIf tcp_time_wait_timeout_sec isn't set, the effective timeout is 30s or\n120s. The field is output only.", + "format": "int32", + "readOnly": true, + "type": "integer" + }, "enableDynamicPortAllocation": { "description": "Enable Dynamic Port Allocation.\n\n\nIf not specified, it is disabled by default.\n\n\nIf set to true,\n \n - Dynamic Port Allocation will be enabled on this NAT\n config.\n - enableEndpointIndependentMapping cannot be set to true.\n - If minPorts is set, minPortsPerVm must be set to a\n power of two greater than or equal to 32. If minPortsPerVm is not set, a\n minimum of 32 ports will be allocated to a VM from this NAT\n config.", "type": "boolean" @@ -94878,6 +95254,10 @@ }, "type": "array" }, + "nccGateway": { + "description": "URI of the ncc_gateway to which this router associated.", + "type": "string" + }, "network": { "description": "URI of the network to which this router belongs.", "type": "string" @@ -96702,6 +97082,35 @@ "SecurityPolicyDdosProtectionConfig": { "id": "SecurityPolicyDdosProtectionConfig", "properties": { + "ddosAdaptiveProtection": { + "enum": [ + "DDOS_ADAPTIVE_PROTECTION_UNSPECIFIED", + "DISABLED", + "ENABLED", + "PREVIEW", + "UNSPECIFIED_ADAPTIVE_PROTECTION" + ], + "enumDeprecated": [ + false, + false, + false, + false, + true + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "type": "string" + }, + "ddosImpactedBaselineThreshold": { + "description": "DDoS Protection for Network Load Balancers (and VMs with public IPs)\nbuilds DDoS mitigations that minimize collateral damage. It quantifies\nthis as the fraction of a non-abuse baseline that's inadvertently\nblocked.\n\nRules whose collateral damage exceeds ddosImpactedBaselineThreshold will\nnot be deployed. Using a lower value will prioritize keeping collateral\ndamage low, possibly at the cost of its effectiveness in rate limiting\nsome or all of the attack. It should typically be unset, so Advanced DDoS\n(and Adaptive Protection) uses the best mitigation it can find. Setting\nthe threshold is advised if there are logs for false positive detections\nwith high collateral damage, and will cause Advanced DDoS to attempt to\nfind a less aggressive rule that satisfies the constraint. If a suitable\nrule cannot be found, the system falls back to either no mitigation for\nsmaller attacks or broader network throttles for larger ones.", + "format": "float", + "type": "number" + }, "ddosProtection": { "enum": [ "ADVANCED", @@ -97583,6 +97992,11 @@ "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "type": "string" }, + "natIpsPerEndpoint": { + "description": "The number of NAT IP addresses to be allocated per connected endpoint.\nIf not specified, the default value is 1.", + "format": "uint32", + "type": "integer" + }, "natSubnets": { "description": "An array of URLs where each entry is the URL of a subnet provided\nby the service producer to use for NAT in this service attachment.", "items": { @@ -98585,7 +98999,7 @@ "type": "string" }, "storageBytesStatus": { - "description": "Output only. [Output Only] An indicator whether storageBytes is in a\nstable state or it is being adjusted as a result of shared storage\nreallocation. This status can either be UPDATING, meaning\nthe size of the snapshot is being updated, or UP_TO_DATE,\nmeaning the size of the snapshot is up-to-date.", + "description": "Output only. [Deprecated] Instead, check the storageBytes field. After\nsnapshot creation, the storageBytesStatus field is alwaysUP_TO_DATE.\n[Output Only] An indicator whether storageBytes is in a\nstable state or it is being adjusted as a result of shared storage\nreallocation. This status can either be unset, meaning the snapshot is\nbeing created, or UP_TO_DATE, meaning the size of the snapshot\nis up-to-date.", "enum": [ "UPDATING", "UP_TO_DATE" @@ -105949,6 +106363,22 @@ "readOnly": true, "type": "string" }, + "loadBalancingScheme": { + "description": "Specifies the type of load balancing scheme used by this target proxy.", + "enum": [ + "EXTERNAL", + "EXTERNAL_MANAGED", + "INTERNAL_MANAGED", + "LOAD_BALANCING_SCHEME_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "type": "string" + }, "name": { "description": "Name of the resource. Provided by the client when the resource is created.\nThe name must be 1-63 characters long, and comply withRFC1035.\nSpecifically, the name must be 1-63 characters long and match the regular\nexpression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first\ncharacter must be a lowercase letter, and all following characters must\nbe a dash, lowercase letter, or digit, except the last character, which\ncannot be a dash.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", @@ -106953,6 +107383,21 @@ }, "type": "object" }, + "TimeZone": { + "description": "Represents a time zone from the\n[IANA Time Zone Database](https://www.iana.org/time-zones).", + "id": "TimeZone", + "properties": { + "id": { + "description": "IANA Time Zone Database time zone. For example \"America/New_York\".", + "type": "string" + }, + "version": { + "description": "Optional. IANA Time Zone Database version number. For example \"2019a\".", + "type": "string" + } + }, + "type": "object" + }, "Uint128": { "id": "Uint128", "properties": { @@ -111032,6 +111477,10 @@ "description": "[Output Only] Full URL reference to the region which hosts the zone.", "type": "string" }, + "resourceStatus": { + "$ref": "ZoneResourceStatus", + "readOnly": true + }, "selfLink": { "description": "[Output Only] Server-defined URL for the resource.", "type": "string" @@ -111213,6 +111662,20 @@ }, "type": "object" }, + "ZoneResourceStatus": { + "id": "ZoneResourceStatus", + "properties": { + "upcomingMaintenances": { + "description": "Output only. [Output Only] The upcoming maintenance schedule.", + "items": { + "$ref": "PeriodicPartialMaintenanceSchedule" + }, + "readOnly": true, + "type": "array" + } + }, + "type": "object" + }, "ZoneSetLabelsRequest": { "id": "ZoneSetLabelsRequest", "properties": { diff --git a/vendor/google.golang.org/api/compute/v1/compute-gen.go b/vendor/google.golang.org/api/compute/v1/compute-gen.go index 30d6937405f5..03e9c5eb5723 100644 --- a/vendor/google.golang.org/api/compute/v1/compute-gen.go +++ b/vendor/google.golang.org/api/compute/v1/compute-gen.go @@ -5122,6 +5122,7 @@ type AutoscalingPolicy struct { // "ONLY_UP" - Automatically create VMs according to the policy, but do not // scale // the MIG in. + // It's recommended to use ONLY_SCALE_OUT instead of ONLY_UP. Mode string `json:"mode,omitempty"` ScaleInControl *AutoscalingPolicyScaleInControl `json:"scaleInControl,omitempty"` // ScalingSchedules: Scaling schedules defined for an autoscaler. Multiple @@ -9162,6 +9163,12 @@ type BackendServiceLogConfig struct { // Enable: Denotes whether to enable logging for the load balancer // traffic served by this backend service. The default value is false. Enable bool `json:"enable,omitempty"` + // LoggingHttpRequestHeaders: The list of request headers that will be logged + // to Stackdriver. + LoggingHttpRequestHeaders []*BackendServiceLogConfigLoggingHttpHeader `json:"loggingHttpRequestHeaders,omitempty"` + // LoggingHttpResponseHeaders: The list of response headers that will be logged + // to Stackdriver. + LoggingHttpResponseHeaders []*BackendServiceLogConfigLoggingHttpHeader `json:"loggingHttpResponseHeaders,omitempty"` // OptionalFields: This field can only be specified if logging is enabled for // this backend // service and "logConfig.optionalMode" was set to CUSTOM. Contains a list @@ -9224,6 +9231,29 @@ func (s *BackendServiceLogConfig) UnmarshalJSON(data []byte) error { return nil } +// BackendServiceLogConfigLoggingHttpHeader: Determines which HTTP headers will +// be logged to Stackdriver. +type BackendServiceLogConfigLoggingHttpHeader struct { + // HeaderName: The name of the header to be logged. + HeaderName string `json:"headerName,omitempty"` + // ForceSendFields is a list of field names (e.g. "HeaderName") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "HeaderName") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s BackendServiceLogConfigLoggingHttpHeader) MarshalJSON() ([]byte, error) { + type NoMethod BackendServiceLogConfigLoggingHttpHeader + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + type BackendServiceNetworkPassThroughLbTrafficPolicy struct { // ZonalAffinity: When configured, new connections are load balanced across // healthy backend @@ -13206,6 +13236,97 @@ func (s Date) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// DateTime: Represents civil time (or occasionally physical time). +// +// This type can represent a civil time in one of a few possible ways: +// +// - When utc_offset is set and time_zone is unset: a civil time on a +// +// calendar +// +// day with a particular offset from UTC. +// * When time_zone is set and utc_offset is unset: a civil time on a +// +// calendar +// +// day in a particular time zone. +// * When neither time_zone nor utc_offset is set: a civil time on a calendar +// day in local time. +// +// The date is relative to the Proleptic Gregorian Calendar. +// +// If year, month, or day are 0, the DateTime is considered not to have +// a +// specific year, month, or day respectively. +// +// This type may also be used to represent a physical time if all the date +// and +// time fields are set and either case of the `time_offset` oneof is +// set. +// Consider using `Timestamp` message for physical time instead. If your +// use +// case also would like to store the user's timezone, that can be done +// in +// another field. +// +// This type is more flexible than some applications may want. Make sure +// to +// document and validate your application's limitations. +type DateTime struct { + // Day: Optional. Day of month. Must be from 1 to 31 and valid for the year + // and + // month, or 0 if specifying a datetime without a day. + Day int64 `json:"day,omitempty"` + // Hours: Optional. Hours of day in 24 hour format. Should be from 0 to 23, + // defaults + // to 0 (midnight). An API may choose to allow the value "24:00:00" + // for + // scenarios like business closing time. + Hours int64 `json:"hours,omitempty"` + // Minutes: Optional. Minutes of hour of day. Must be from 0 to 59, defaults to + // 0. + Minutes int64 `json:"minutes,omitempty"` + // Month: Optional. Month of year. Must be from 1 to 12, or 0 if specifying + // a + // datetime without a month. + Month int64 `json:"month,omitempty"` + // Nanos: Optional. Fractions of seconds in nanoseconds. Must be from 0 + // to + // 999,999,999, defaults to 0. + Nanos int64 `json:"nanos,omitempty"` + // Seconds: Optional. Seconds of minutes of the time. Must normally be from 0 + // to 59, + // defaults to 0. An API may allow the value 60 if it allows leap-seconds. + Seconds int64 `json:"seconds,omitempty"` + // TimeZone: Time zone. + TimeZone *TimeZone `json:"timeZone,omitempty"` + // UtcOffset: UTC offset. Must be whole seconds, between -18 hours and +18 + // hours. + // For example, a UTC offset of -4:00 would be represented as + // { seconds: -14400 }. + UtcOffset string `json:"utcOffset,omitempty"` + // Year: Optional. Year of date. Must be from 1 to 9999, or 0 if specifying + // a + // datetime without a year. + Year int64 `json:"year,omitempty"` + // ForceSendFields is a list of field names (e.g. "Day") to unconditionally + // include in API requests. By default, fields with empty or default values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Day") to include in API requests + // with the JSON null value. By default, fields with empty values are omitted + // from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s DateTime) MarshalJSON() ([]byte, error) { + type NoMethod DateTime + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // DeprecationStatus: Deprecation status for a public resource. type DeprecationStatus struct { // Deleted: An optional RFC3339 timestamp on or after which the state of @@ -17834,6 +17955,9 @@ type ForwardingRule struct { // whether the PSC // endpoint can be accessed from another region. AllowPscGlobalAccess bool `json:"allowPscGlobalAccess,omitempty"` + // AttachedExtensions: Output only. [Output Only]. The extensions that are + // attached to this ForwardingRule. + AttachedExtensions []*ForwardingRuleAttachedExtension `json:"attachedExtensions,omitempty"` // BackendService: Identifies the backend service to which the forwarding rule // sends traffic. // Required for internal and external passthrough Network Load Balancers; @@ -18460,6 +18584,29 @@ func (s ForwardingRuleAggregatedListWarningData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// ForwardingRuleAttachedExtension: Reference to an extension resource that is +// attached to this ForwardingRule. +type ForwardingRuleAttachedExtension struct { + // Reference: Output only. The resource name. + Reference string `json:"reference,omitempty"` + // ForceSendFields is a list of field names (e.g. "Reference") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Reference") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s ForwardingRuleAttachedExtension) MarshalJSON() ([]byte, error) { + type NoMethod ForwardingRuleAttachedExtension + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // ForwardingRuleList: Contains a list of ForwardingRule resources. type ForwardingRuleList struct { // Id: [Output Only] Unique identifier for the resource; defined by the server. @@ -28462,22 +28609,23 @@ func (s InstanceGroupManagerInstanceFlexibilityPolicyInstanceSelection) MarshalJ } type InstanceGroupManagerInstanceLifecyclePolicy struct { - // DefaultActionOnFailure: The action that a MIG performs on a failed or an - // unhealthy VM. - // A VM is marked as unhealthy when the application running on that - // VM fails a health check. + // DefaultActionOnFailure: The action that a MIG performs on a failed VM. If + // the value of the + // onFailedHealthCheck field is `DEFAULT_ACTION`, then the same action + // also + // applies to the VMs on which your application fails a health check. // Valid values are // - // - REPAIR (default): MIG automatically repairs a failed or - // an unhealthy VM by recreating it. For more information, see About + // - REPAIR (default): MIG automatically repairs a failed VM + // by recreating it. For more information, see About // repairing VMs in a MIG. - // - DO_NOTHING: MIG does not repair a failed or an unhealthy - // VM. + // - DO_NOTHING: MIG does not repair a failed VM. // // Possible values: - // "DO_NOTHING" - MIG does not repair a failed or an unhealthy VM. - // "REPAIR" - (Default) MIG automatically repairs a failed or an unhealthy - // VM by recreating it. For more information, see About + // "DO_NOTHING" - MIG does not repair a failed VM. + // "REPAIR" - (default): MIG automatically repairs a failed VM by recreating + // it. + // For more information, see About // repairing VMs in a MIG. DefaultActionOnFailure string `json:"defaultActionOnFailure,omitempty"` // ForceUpdateOnRepair: A bit indicating whether to forcefully apply the @@ -28518,6 +28666,8 @@ type InstanceGroupManagerInstanceLifecyclePolicy struct { // "DO_NOTHING" - MIG doesn't repair an unhealthy VM. // "REPAIR" - MIG automatically repairs an unhealthy VM by recreating it. OnFailedHealthCheck string `json:"onFailedHealthCheck,omitempty"` + // OnRepair: Configuration for VM repairs in the MIG. + OnRepair *InstanceGroupManagerInstanceLifecyclePolicyOnRepair `json:"onRepair,omitempty"` // ForceSendFields is a list of field names (e.g. "DefaultActionOnFailure") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See @@ -28536,6 +28686,40 @@ func (s InstanceGroupManagerInstanceLifecyclePolicy) MarshalJSON() ([]byte, erro return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// InstanceGroupManagerInstanceLifecyclePolicyOnRepair: Configuration for VM +// repairs in the MIG. +type InstanceGroupManagerInstanceLifecyclePolicyOnRepair struct { + // AllowChangingZone: Specifies whether the MIG can change a VM's zone during a + // repair. + // Valid values are: + // + // - NO (default): MIG cannot change a VM's zone during a + // repair. + // - YES: MIG can select a different zone for the VM during + // a repair. + // + // Possible values: + // "NO" - [Default] MIG cannot change a VM's zone during a repair. + // "YES" - MIG can select a different zone for the VM during a repair. + AllowChangingZone string `json:"allowChangingZone,omitempty"` + // ForceSendFields is a list of field names (e.g. "AllowChangingZone") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "AllowChangingZone") to include in + // API requests with the JSON null value. By default, fields with empty values + // are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s InstanceGroupManagerInstanceLifecyclePolicyOnRepair) MarshalJSON() ([]byte, error) { + type NoMethod InstanceGroupManagerInstanceLifecyclePolicyOnRepair + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // InstanceGroupManagerList: [Output Only] A list of managed instance groups. type InstanceGroupManagerList struct { // Id: Output only. Unique identifier for the resource; defined by the server. @@ -31712,16 +31896,15 @@ func (s InstanceListReferrersWarningData) MarshalJSON() ([]byte, error) { } type InstanceManagedByIgmError struct { - // Error: Output only. [Output Only] Contents of the error. + // Error: Output only. Contents of the error. Error *InstanceManagedByIgmErrorManagedInstanceError `json:"error,omitempty"` - // InstanceActionDetails: Output only. [Output Only] Details of the instance - // action that triggered this error. + // InstanceActionDetails: Output only. Details of the instance action that + // triggered this error. // May be null, if the error was not caused by an action on an instance. // This field is optional. InstanceActionDetails *InstanceManagedByIgmErrorInstanceActionDetails `json:"instanceActionDetails,omitempty"` - // Timestamp: Output only. [Output Only] The time that this error - // occurred. - // This value is in RFC3339 text format. + // Timestamp: Output only. The time that this error occurred. This value is in + // RFC3339 text format. Timestamp string `json:"timestamp,omitempty"` // ForceSendFields is a list of field names (e.g. "Error") to unconditionally // include in API requests. By default, fields with empty or default values are @@ -31742,9 +31925,9 @@ func (s InstanceManagedByIgmError) MarshalJSON() ([]byte, error) { } type InstanceManagedByIgmErrorInstanceActionDetails struct { - // Action: Output only. [Output Only] Action that managed instance group was - // executing on - // the instance when the error occurred. Possible values: + // Action: Output only. Action that managed instance group was executing on the + // instance when the + // error occurred. Possible values: // // Possible values: // "ABANDONING" - The managed instance group is abandoning this instance. The @@ -31785,11 +31968,12 @@ type InstanceManagedByIgmErrorInstanceActionDetails struct { // 2. Waiting for addition verification steps performed as post-instance // creation (subject to future extensions). Action string `json:"action,omitempty"` - // Instance: Output only. [Output Only] The URL of the instance. - // The URL can be set even if the instance has not yet been created. + // Instance: Output only. The URL of the instance. The URL can be set even if + // the instance has not + // yet been created. Instance string `json:"instance,omitempty"` - // Version: Output only. [Output Only] Version this instance was created from, - // or was being + // Version: Output only. Version this instance was created from, or was + // being // created from, but the creation failed. Corresponds to one of the // versions // that were set on the Instance Group Manager resource at the time @@ -31815,9 +31999,9 @@ func (s InstanceManagedByIgmErrorInstanceActionDetails) MarshalJSON() ([]byte, e } type InstanceManagedByIgmErrorManagedInstanceError struct { - // Code: Output only. [Output Only] Error code. + // Code: Output only. Error code. Code string `json:"code,omitempty"` - // Message: Output only. [Output Only] Error message. + // Message: Output only. Error message. Message string `json:"message,omitempty"` // ForceSendFields is a list of field names (e.g. "Code") to unconditionally // include in API requests. By default, fields with empty or default values are @@ -34429,6 +34613,12 @@ type Interconnect struct { // when you // create the resource. Description string `json:"description,omitempty"` + // EffectiveLocation: Output only. URL of the InterconnectLocation object that + // represents where + // this connection is to be provisioned. By default it will be the same as + // the + // location field. + EffectiveLocation string `json:"effectiveLocation,omitempty"` // ExpectedOutages: Output only. [Output Only] A list of outages expected for // this Interconnect. ExpectedOutages []*InterconnectOutageNotification `json:"expectedOutages,omitempty"` @@ -44539,6 +44729,10 @@ type NetworkInterface struct { // AliasIpRanges: An array of alias IP ranges for this network interface. // You can only specify this field for network interfaces in VPC networks. AliasIpRanges []*AliasIpRange `json:"aliasIpRanges,omitempty"` + // AliasIpv6Ranges: An array of alias IPv6 ranges for this network + // interface. + // You can only specify this field for network interfaces in VPC networks. + AliasIpv6Ranges []*AliasIpRange `json:"aliasIpv6Ranges,omitempty"` // EnableVpcScopedDns: Optional. If true, DNS resolution will be enabled over // this interface. Only valid // with network_attachment. @@ -51414,6 +51608,58 @@ func (s PerInstanceConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// PeriodicPartialMaintenanceSchedule: The periodic partial maintenance +// schedule includes 52 weeks worth of +// maintenance windows. +// LINT.IfChange(PeriodicPartialMaintenanceSchedule) +type PeriodicPartialMaintenanceSchedule struct { + // SubType: The maintenance type in which the zone is during the given window. + // + // Possible values: + // "MAINTENANCE_SUBTYPE_UNSPECIFIED" - Default value. + // "MAINTENANCE_TYPE_CUSTOMER_MAINTENANCE" - A dedicated window for customers + // to perform their own maintenance. This + // often runs concurrently with a DISRUPTIVE_UPGRADE. + // "MAINTENANCE_TYPE_DISRUPTIVE_UPGRADE" - For disruptive updates, including + // host machine kernel or firmware + // upgrades. + // "MAINTENANCE_TYPE_STABLE" - A post-maintenance window for customers to + // conduct final testing and + // performance validation before resuming full business operations. + // "MAINTENANCE_TYPE_TRANSITION" - For preliminary, non-disruptive tasks such + // as key rotations. + SubType string `json:"subType,omitempty"` + // TargetResource: The target resource that the maintenance window is for. + // For example, "projects/my-project/zones/us-central1-a". + TargetResource string `json:"targetResource,omitempty"` + // Possible values: + // "MAINTENANCE_TYPE_UNSPECIFIED" - Default value. + // "PRIVATE_ZONE_MAINTENANCE" - The zone is in a private maintenance window. + Type string `json:"type,omitempty"` + // WindowEndTime: The end civil timestamp of the window (not inclusive). + // This contains a time zone. + WindowEndTime *DateTime `json:"windowEndTime,omitempty"` + // WindowStartTime: The start civil timestamp of the window. + // This contains a time zone. + WindowStartTime *DateTime `json:"windowStartTime,omitempty"` + // ForceSendFields is a list of field names (e.g. "SubType") to unconditionally + // include in API requests. By default, fields with empty or default values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "SubType") to include in API + // requests with the JSON null value. By default, fields with empty values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s PeriodicPartialMaintenanceSchedule) MarshalJSON() ([]byte, error) { + type NoMethod PeriodicPartialMaintenanceSchedule + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // Policy: An Identity and Access Management (IAM) policy, which specifies // access // controls for Google Cloud resources. @@ -57020,6 +57266,9 @@ func (s ReservationAggregatedListWarningData) MarshalJSON() ([]byte, error) { // ReservationBlock: Represents a reservation block resource. type ReservationBlock struct { + // BlockHealthInfo: Output only. [Output Only] Health information for the + // reservation block. + BlockHealthInfo *ReservationBlockHealthInfo `json:"blockHealthInfo,omitempty"` // Count: Output only. [Output Only] The number of resources that are allocated // in this // reservation block. @@ -57027,9 +57276,6 @@ type ReservationBlock struct { // CreationTimestamp: Output only. [Output Only] Creation timestamp inRFC3339 // text format. CreationTimestamp string `json:"creationTimestamp,omitempty"` - // HealthInfo: Output only. [Output Only] Health information for the - // reservation block. - HealthInfo *ReservationBlockHealthInfo `json:"healthInfo,omitempty"` // Id: Output only. [Output Only] The unique identifier for the resource. This // identifier is // defined by the server. @@ -57084,15 +57330,15 @@ type ReservationBlock struct { // Zone: Output only. [Output Only] Zone in which the reservation block // resides. Zone string `json:"zone,omitempty"` - // ForceSendFields is a list of field names (e.g. "Count") to unconditionally - // include in API requests. By default, fields with empty or default values are - // omitted from API requests. See + // ForceSendFields is a list of field names (e.g. "BlockHealthInfo") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Count") to include in API - // requests with the JSON null value. By default, fields with empty values are - // omitted from API requests. See + // NullFields is a list of field names (e.g. "BlockHealthInfo") to include in + // API requests with the JSON null value. By default, fields with empty values + // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } @@ -57992,9 +58238,6 @@ type ReservationSubBlock struct { // CreationTimestamp: Output only. [Output Only] Creation timestamp inRFC3339 // text format. CreationTimestamp string `json:"creationTimestamp,omitempty"` - // HealthInfo: Output only. [Output Only] Health information for the - // reservation subBlock. - HealthInfo *ReservationSubBlockHealthInfo `json:"healthInfo,omitempty"` // Id: Output only. [Output Only] The unique identifier for the resource. This // identifier is // defined by the server. @@ -58036,6 +58279,9 @@ type ReservationSubBlock struct { // "INVALID" // "READY" - Reservation subBlock has allocated all its resources. Status string `json:"status,omitempty"` + // SubBlockHealthInfo: Output only. [Output Only] Health information for the + // reservation subBlock. + SubBlockHealthInfo *ReservationSubBlockHealthInfo `json:"subBlockHealthInfo,omitempty"` // Zone: Output only. [Output Only] Zone in which the reservation subBlock // resides. Zone string `json:"zone,omitempty"` @@ -59950,6 +60196,9 @@ func (s ResourceStatusEffectiveInstanceMetadata) MarshalJSON() ([]byte, error) { // the host on which the VM is // running. type ResourceStatusPhysicalHostTopology struct { + // AdditionalAttributes: Output only. [Output Only] Additional location + // information of the running instance. + AdditionalAttributes *ResourceStatusPhysicalHostTopologyAdditionalAttributes `json:"additionalAttributes,omitempty"` // Block: [Output Only] The ID of the block in which the running instance // is // located. Instances within the same block experience low network latency. @@ -59969,15 +60218,15 @@ type ResourceStatusPhysicalHostTopology struct { // latency // than instances in the same block. Subblock string `json:"subblock,omitempty"` - // ForceSendFields is a list of field names (e.g. "Block") to unconditionally - // include in API requests. By default, fields with empty or default values are - // omitted from API requests. See + // ForceSendFields is a list of field names (e.g. "AdditionalAttributes") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "Block") to include in API - // requests with the JSON null value. By default, fields with empty values are - // omitted from API requests. See + // NullFields is a list of field names (e.g. "AdditionalAttributes") to include + // in API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } @@ -59987,6 +60236,33 @@ func (s ResourceStatusPhysicalHostTopology) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// ResourceStatusPhysicalHostTopologyAdditionalAttributes: Additional location +// information of the running instance. +type ResourceStatusPhysicalHostTopologyAdditionalAttributes struct { + // AcceleratorTopologyIds: Output only. The IDs of the accelerator topologies + // the instance belongs to. For + // example + // The key will be topologies like "4x4", "2x2x2" and the value will be + // the location ID of the topologies. + AcceleratorTopologyIds map[string]string `json:"acceleratorTopologyIds,omitempty"` + // ForceSendFields is a list of field names (e.g. "AcceleratorTopologyIds") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "AcceleratorTopologyIds") to + // include in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s ResourceStatusPhysicalHostTopologyAdditionalAttributes) MarshalJSON() ([]byte, error) { + type NoMethod ResourceStatusPhysicalHostTopologyAdditionalAttributes + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + // ResourceStatusReservationConsumptionInfo: Reservation consumption // information that the instance is consuming from. type ResourceStatusReservationConsumptionInfo struct { @@ -60084,6 +60360,10 @@ type Rollout struct { // following characters must be a dash, lowercase letter, or digit, except // the last character, which cannot be a dash. Name string `json:"name,omitempty"` + // PauseTime: Output only. The timestamp at which the Rollout was paused. + PauseTime string `json:"pauseTime,omitempty"` + // ResumeTime: Output only. The timestamp at which the Rollout was resumed. + ResumeTime string `json:"resumeTime,omitempty"` // RolloutEntity: Required. The resource being rolled out. RolloutEntity *RolloutRolloutEntity `json:"rolloutEntity,omitempty"` // RolloutPlan: Required. Rollout Plan used to model the Rollout. @@ -61783,6 +62063,8 @@ type Router struct { Name string `json:"name,omitempty"` // Nats: A list of NAT services created in this router. Nats []*RouterNat `json:"nats,omitempty"` + // NccGateway: URI of the ncc_gateway to which this router associated. + NccGateway string `json:"nccGateway,omitempty"` // Network: URI of the network to which this router belongs. Network string `json:"network,omitempty"` // Params: Input only. [Input Only] Additional params passed with the request, @@ -62729,6 +63011,13 @@ type RouterNat struct { // must be valid static external IPs that have been assigned to the NAT. // These IPs should be used for updating/patching a NAT only. DrainNatIps []string `json:"drainNatIps,omitempty"` + // EffectiveTcpTimeWaitTimeoutSec: Output only. Effective timeout (in seconds) + // for TCP connections that are in TIME_WAIT + // state. This value is equal to tcp_time_wait_timeout_sec. + // If tcp_time_wait_timeout_sec isn't set, the effective timeout is 30s + // or + // 120s. The field is output only. + EffectiveTcpTimeWaitTimeoutSec int64 `json:"effectiveTcpTimeWaitTimeoutSec,omitempty"` // EnableDynamicPortAllocation: Enable Dynamic Port Allocation. // // @@ -63177,6 +63466,8 @@ type RouterStatus struct { BestRoutesForRouter []*Route `json:"bestRoutesForRouter,omitempty"` BgpPeerStatus []*RouterStatusBgpPeerStatus `json:"bgpPeerStatus,omitempty"` NatStatus []*RouterStatusNatStatus `json:"natStatus,omitempty"` + // NccGateway: URI of the ncc_gateway to which this router associated. + NccGateway string `json:"nccGateway,omitempty"` // Network: URI of the network to which this router belongs. Network string `json:"network,omitempty"` // ForceSendFields is a list of field names (e.g. "BestRoutes") to @@ -65339,20 +65630,50 @@ func (s SecurityPolicyAssociation) MarshalJSON() ([]byte, error) { } type SecurityPolicyDdosProtectionConfig struct { + // Possible values: + // "DDOS_ADAPTIVE_PROTECTION_UNSPECIFIED" + // "DISABLED" + // "ENABLED" + // "PREVIEW" + // "UNSPECIFIED_ADAPTIVE_PROTECTION" + DdosAdaptiveProtection string `json:"ddosAdaptiveProtection,omitempty"` + // DdosImpactedBaselineThreshold: DDoS Protection for Network Load Balancers + // (and VMs with public IPs) + // builds DDoS mitigations that minimize collateral damage. It quantifies + // this as the fraction of a non-abuse baseline that's + // inadvertently + // blocked. + // + // Rules whose collateral damage exceeds ddosImpactedBaselineThreshold will + // not be deployed. Using a lower value will prioritize keeping + // collateral + // damage low, possibly at the cost of its effectiveness in rate limiting + // some or all of the attack. It should typically be unset, so Advanced + // DDoS + // (and Adaptive Protection) uses the best mitigation it can find. Setting + // the threshold is advised if there are logs for false positive + // detections + // with high collateral damage, and will cause Advanced DDoS to attempt to + // find a less aggressive rule that satisfies the constraint. If a + // suitable + // rule cannot be found, the system falls back to either no mitigation + // for + // smaller attacks or broader network throttles for larger ones. + DdosImpactedBaselineThreshold float64 `json:"ddosImpactedBaselineThreshold,omitempty"` // Possible values: // "ADVANCED" // "ADVANCED_PREVIEW" // "STANDARD" DdosProtection string `json:"ddosProtection,omitempty"` - // ForceSendFields is a list of field names (e.g. "DdosProtection") to + // ForceSendFields is a list of field names (e.g. "DdosAdaptiveProtection") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` - // NullFields is a list of field names (e.g. "DdosProtection") to include in - // API requests with the JSON null value. By default, fields with empty values - // are omitted from API requests. See + // NullFields is a list of field names (e.g. "DdosAdaptiveProtection") to + // include in API requests with the JSON null value. By default, fields with + // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } @@ -65362,6 +65683,20 @@ func (s SecurityPolicyDdosProtectionConfig) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +func (s *SecurityPolicyDdosProtectionConfig) UnmarshalJSON(data []byte) error { + type NoMethod SecurityPolicyDdosProtectionConfig + var s1 struct { + DdosImpactedBaselineThreshold gensupport.JSONFloat64 `json:"ddosImpactedBaselineThreshold"` + *NoMethod + } + s1.NoMethod = (*NoMethod)(s) + if err := json.Unmarshal(data, &s1); err != nil { + return err + } + s.DdosImpactedBaselineThreshold = float64(s1.DdosImpactedBaselineThreshold) + return nil +} + type SecurityPolicyList struct { // Id: [Output Only] Unique identifier for the resource; defined by the server. Id string `json:"id,omitempty"` @@ -66675,6 +67010,10 @@ type ServiceAttachment struct { // which // cannot be a dash. Name string `json:"name,omitempty"` + // NatIpsPerEndpoint: The number of NAT IP addresses to be allocated per + // connected endpoint. + // If not specified, the default value is 1. + NatIpsPerEndpoint int64 `json:"natIpsPerEndpoint,omitempty"` // NatSubnets: An array of URLs where each entry is the URL of a subnet // provided // by the service producer to use for NAT in this service attachment. @@ -67871,13 +68210,15 @@ type Snapshot struct { // snapshot // creation/deletion. StorageBytes int64 `json:"storageBytes,omitempty,string"` - // StorageBytesStatus: Output only. [Output Only] An indicator whether - // storageBytes is in a + // StorageBytesStatus: Output only. [Deprecated] Instead, check the + // storageBytes field. After + // snapshot creation, the storageBytesStatus field is alwaysUP_TO_DATE. + // [Output Only] An indicator whether storageBytes is in a // stable state or it is being adjusted as a result of shared // storage - // reallocation. This status can either be UPDATING, meaning - // the size of the snapshot is being updated, or UP_TO_DATE, - // meaning the size of the snapshot is up-to-date. + // reallocation. This status can either be unset, meaning the snapshot is + // being created, or UP_TO_DATE, meaning the size of the snapshot + // is up-to-date. // // Possible values: // "UPDATING" @@ -77175,6 +77516,15 @@ type TargetTcpProxy struct { // Kind: Output only. [Output Only] Type of the resource. // Alwayscompute#targetTcpProxy for target TCP proxies. Kind string `json:"kind,omitempty"` + // LoadBalancingScheme: Specifies the type of load balancing scheme used by + // this target proxy. + // + // Possible values: + // "EXTERNAL" + // "EXTERNAL_MANAGED" + // "INTERNAL_MANAGED" + // "LOAD_BALANCING_SCHEME_UNSPECIFIED" + LoadBalancingScheme string `json:"loadBalancingScheme,omitempty"` // Name: Name of the resource. Provided by the client when the resource is // created. // The name must be 1-63 characters long, and comply withRFC1035. @@ -78371,6 +78721,32 @@ func (s TestPermissionsResponse) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +// TimeZone: Represents a time zone from the +// IANA Time Zone Database (https://www.iana.org/time-zones). +type TimeZone struct { + // Id: IANA Time Zone Database time zone. For example "America/New_York". + Id string `json:"id,omitempty"` + // Version: Optional. IANA Time Zone Database version number. For example + // "2019a". + Version string `json:"version,omitempty"` + // ForceSendFields is a list of field names (e.g. "Id") to unconditionally + // include in API requests. By default, fields with empty or default values are + // omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "Id") to include in API requests + // with the JSON null value. By default, fields with empty values are omitted + // from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s TimeZone) MarshalJSON() ([]byte, error) { + type NoMethod TimeZone + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + type Uint128 struct { High uint64 `json:"high,omitempty,string"` Low uint64 `json:"low,omitempty,string"` @@ -83553,7 +83929,8 @@ type Zone struct { // Name: [Output Only] Name of the resource. Name string `json:"name,omitempty"` // Region: [Output Only] Full URL reference to the region which hosts the zone. - Region string `json:"region,omitempty"` + Region string `json:"region,omitempty"` + ResourceStatus *ZoneResourceStatus `json:"resourceStatus,omitempty"` // SelfLink: [Output Only] Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` // Status: [Output Only] Status of the zone, either UP orDOWN. @@ -83765,6 +84142,28 @@ func (s ZoneListWarningData) MarshalJSON() ([]byte, error) { return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) } +type ZoneResourceStatus struct { + // UpcomingMaintenances: Output only. [Output Only] The upcoming maintenance + // schedule. + UpcomingMaintenances []*PeriodicPartialMaintenanceSchedule `json:"upcomingMaintenances,omitempty"` + // ForceSendFields is a list of field names (e.g. "UpcomingMaintenances") to + // unconditionally include in API requests. By default, fields with empty or + // default values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more + // details. + ForceSendFields []string `json:"-"` + // NullFields is a list of field names (e.g. "UpcomingMaintenances") to include + // in API requests with the JSON null value. By default, fields with empty + // values are omitted from API requests. See + // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. + NullFields []string `json:"-"` +} + +func (s ZoneResourceStatus) MarshalJSON() ([]byte, error) { + type NoMethod ZoneResourceStatus + return gensupport.MarshalJSON(NoMethod(s), s.ForceSendFields, s.NullFields) +} + type ZoneSetLabelsRequest struct { // LabelFingerprint: The fingerprint of the previous set of labels for this // resource, diff --git a/vendor/google.golang.org/api/compute/v1/compute2-gen.go b/vendor/google.golang.org/api/compute/v1/compute2-gen.go index 67dc993e0480..68bb6a499df5 100644 --- a/vendor/google.golang.org/api/compute/v1/compute2-gen.go +++ b/vendor/google.golang.org/api/compute/v1/compute2-gen.go @@ -17112,6 +17112,22 @@ func (r *ForwardingRulesService) Get(project string, region string, forwardingRu return c } +// View sets the optional parameter "view": +// +// Possible values: +// +// "BASIC" - The default view of a ForwardingRule, which includes the basic +// +// fields. +// +// "FULL" - The full view, including the ForwardingRule.`attached_extensions` +// +// field. +func (c *ForwardingRulesGetCall) View(view string) *ForwardingRulesGetCall { + c.urlParams_.Set("view", view) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. @@ -20325,6 +20341,22 @@ func (r *GlobalForwardingRulesService) Get(project string, forwardingRule string return c } +// View sets the optional parameter "view": +// +// Possible values: +// +// "BASIC" - The default view of a ForwardingRule, which includes the basic +// +// fields. +// +// "FULL" - The full view, including the ForwardingRule.`attached_extensions` +// +// field. +func (c *GlobalForwardingRulesGetCall) View(view string) *GlobalForwardingRulesGetCall { + c.urlParams_.Set("view", view) + return c +} + // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. diff --git a/vendor/google.golang.org/api/compute/v1/compute3-gen.go b/vendor/google.golang.org/api/compute/v1/compute3-gen.go index 33c228a00b6d..f6dbed536f05 100644 --- a/vendor/google.golang.org/api/compute/v1/compute3-gen.go +++ b/vendor/google.golang.org/api/compute/v1/compute3-gen.go @@ -38636,6 +38636,137 @@ func (c *RolloutPlansListCall) Pages(ctx context.Context, f func(*RolloutPlansLi } } +type RolloutsAdvanceCall struct { + s *Service + project string + rollout string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Advance: Advances a Rollout to the next wave, or completes it if no waves +// remain. +// +// - project: Project ID for this request. +// - rollout: Name of the Rollout resource to advance. +func (r *RolloutsService) Advance(project string, rollout string) *RolloutsAdvanceCall { + c := &RolloutsAdvanceCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.rollout = rollout + return c +} + +// CurrentWaveNumber sets the optional parameter "currentWaveNumber": Required. +// Wave number of the current wave. +func (c *RolloutsAdvanceCall) CurrentWaveNumber(currentWaveNumber int64) *RolloutsAdvanceCall { + c.urlParams_.Set("currentWaveNumber", fmt.Sprint(currentWaveNumber)) + return c +} + +// RequestId sets the optional parameter "requestId": An optional request ID to +// identify requests. Specify a unique request ID so +// that if you must retry your request, the server will know to ignore +// the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request and +// the request times out. If you make the request again with the same +// request ID, the server can check if original operation with the same +// request ID was received, and if so, will ignore the second request. +// This +// prevents clients from accidentally creating duplicate commitments. +// +// The request ID must be +// a valid UUID with the exception that zero UUID is not +// supported +// (00000000-0000-0000-0000-000000000000). +func (c *RolloutsAdvanceCall) RequestId(requestId string) *RolloutsAdvanceCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more +// details. +func (c *RolloutsAdvanceCall) Fields(s ...googleapi.Field) *RolloutsAdvanceCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. +func (c *RolloutsAdvanceCall) Context(ctx context.Context) *RolloutsAdvanceCall { + c.ctx_ = ctx + return c +} + +// Header returns a http.Header that can be modified by the caller to add +// headers to the request. +func (c *RolloutsAdvanceCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RolloutsAdvanceCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{project}/global/rollouts/{rollout}/advance") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, nil) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "rollout": c.rollout, + }) + c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "compute.rollouts.advance", "request", internallog.HTTPRequest(req, nil)) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.rollouts.advance" call. +// Any non-2xx status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was returned. +func (c *RolloutsAdvanceCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + b, err := gensupport.DecodeResponseBytes(target, res) + if err != nil { + return nil, err + } + c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "compute.rollouts.advance", "response", internallog.HTTPResponse(res, b)) + return ret, nil +} + type RolloutsCancelCall struct { s *Service project string @@ -39266,6 +39397,268 @@ func (c *RolloutsListCall) Pages(ctx context.Context, f func(*RolloutsListRespon } } +type RolloutsPauseCall struct { + s *Service + project string + rollout string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Pause: Pauses a Rollout. +// +// - project: Project ID for this request. +// - rollout: Name of the Rollout resource to pause. +func (r *RolloutsService) Pause(project string, rollout string) *RolloutsPauseCall { + c := &RolloutsPauseCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.rollout = rollout + return c +} + +// Etag sets the optional parameter "etag": The etag of the Rollout. +// If this is provided, the request will only succeed if the etag matches +// the current etag of the Rollout. +func (c *RolloutsPauseCall) Etag(etag string) *RolloutsPauseCall { + c.urlParams_.Set("etag", etag) + return c +} + +// RequestId sets the optional parameter "requestId": An optional request ID to +// identify requests. Specify a unique request ID so +// that if you must retry your request, the server will know to ignore +// the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request and +// the request times out. If you make the request again with the same +// request ID, the server can check if original operation with the same +// request ID was received, and if so, will ignore the second request. +// This +// prevents clients from accidentally creating duplicate commitments. +// +// The request ID must be +// a valid UUID with the exception that zero UUID is not +// supported +// (00000000-0000-0000-0000-000000000000). +func (c *RolloutsPauseCall) RequestId(requestId string) *RolloutsPauseCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more +// details. +func (c *RolloutsPauseCall) Fields(s ...googleapi.Field) *RolloutsPauseCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. +func (c *RolloutsPauseCall) Context(ctx context.Context) *RolloutsPauseCall { + c.ctx_ = ctx + return c +} + +// Header returns a http.Header that can be modified by the caller to add +// headers to the request. +func (c *RolloutsPauseCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RolloutsPauseCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{project}/global/rollouts/{rollout}/pause") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, nil) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "rollout": c.rollout, + }) + c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "compute.rollouts.pause", "request", internallog.HTTPRequest(req, nil)) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.rollouts.pause" call. +// Any non-2xx status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was returned. +func (c *RolloutsPauseCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + b, err := gensupport.DecodeResponseBytes(target, res) + if err != nil { + return nil, err + } + c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "compute.rollouts.pause", "response", internallog.HTTPResponse(res, b)) + return ret, nil +} + +type RolloutsResumeCall struct { + s *Service + project string + rollout string + urlParams_ gensupport.URLParams + ctx_ context.Context + header_ http.Header +} + +// Resume: Resumes a Rollout. +// +// - project: Project ID for this request. +// - rollout: Name of the Rollout resource to resume. +func (r *RolloutsService) Resume(project string, rollout string) *RolloutsResumeCall { + c := &RolloutsResumeCall{s: r.s, urlParams_: make(gensupport.URLParams)} + c.project = project + c.rollout = rollout + return c +} + +// Etag sets the optional parameter "etag": The etag of the Rollout. +// If this is provided, the request will only succeed if the etag matches +// the current etag of the Rollout. +func (c *RolloutsResumeCall) Etag(etag string) *RolloutsResumeCall { + c.urlParams_.Set("etag", etag) + return c +} + +// RequestId sets the optional parameter "requestId": An optional request ID to +// identify requests. Specify a unique request ID so +// that if you must retry your request, the server will know to ignore +// the +// request if it has already been completed. +// +// For example, consider a situation where you make an initial request and +// the request times out. If you make the request again with the same +// request ID, the server can check if original operation with the same +// request ID was received, and if so, will ignore the second request. +// This +// prevents clients from accidentally creating duplicate commitments. +// +// The request ID must be +// a valid UUID with the exception that zero UUID is not +// supported +// (00000000-0000-0000-0000-000000000000). +func (c *RolloutsResumeCall) RequestId(requestId string) *RolloutsResumeCall { + c.urlParams_.Set("requestId", requestId) + return c +} + +// Fields allows partial responses to be retrieved. See +// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more +// details. +func (c *RolloutsResumeCall) Fields(s ...googleapi.Field) *RolloutsResumeCall { + c.urlParams_.Set("fields", googleapi.CombineFields(s)) + return c +} + +// Context sets the context to be used in this call's Do method. +func (c *RolloutsResumeCall) Context(ctx context.Context) *RolloutsResumeCall { + c.ctx_ = ctx + return c +} + +// Header returns a http.Header that can be modified by the caller to add +// headers to the request. +func (c *RolloutsResumeCall) Header() http.Header { + if c.header_ == nil { + c.header_ = make(http.Header) + } + return c.header_ +} + +func (c *RolloutsResumeCall) doRequest(alt string) (*http.Response, error) { + reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) + c.urlParams_.Set("alt", alt) + c.urlParams_.Set("prettyPrint", "false") + urls := googleapi.ResolveRelative(c.s.BasePath, "projects/{project}/global/rollouts/{rollout}/resume") + urls += "?" + c.urlParams_.Encode() + req, err := http.NewRequest("POST", urls, nil) + if err != nil { + return nil, err + } + req.Header = reqHeaders + googleapi.Expand(req.URL, map[string]string{ + "project": c.project, + "rollout": c.rollout, + }) + c.s.logger.DebugContext(c.ctx_, "api request", "serviceName", apiName, "rpcName", "compute.rollouts.resume", "request", internallog.HTTPRequest(req, nil)) + return gensupport.SendRequest(c.ctx_, c.s.client, req) +} + +// Do executes the "compute.rollouts.resume" call. +// Any non-2xx status code is an error. Response headers are in either +// *Operation.ServerResponse.Header or (if a response was returned at all) in +// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check +// whether the returned error was because http.StatusNotModified was returned. +func (c *RolloutsResumeCall) Do(opts ...googleapi.CallOption) (*Operation, error) { + gensupport.SetOptions(c.urlParams_, opts...) + res, err := c.doRequest("json") + if res != nil && res.StatusCode == http.StatusNotModified { + if res.Body != nil { + res.Body.Close() + } + return nil, gensupport.WrapError(&googleapi.Error{ + Code: res.StatusCode, + Header: res.Header, + }) + } + if err != nil { + return nil, err + } + defer googleapi.CloseBody(res) + if err := googleapi.CheckResponse(res); err != nil { + return nil, gensupport.WrapError(err) + } + ret := &Operation{ + ServerResponse: googleapi.ServerResponse{ + Header: res.Header, + HTTPStatusCode: res.StatusCode, + }, + } + target := &ret + b, err := gensupport.DecodeResponseBytes(target, res) + if err != nil { + return nil, err + } + c.s.logger.DebugContext(c.ctx_, "api response", "serviceName", apiName, "rpcName", "compute.rollouts.resume", "response", internallog.HTTPResponse(res, b)) + return ret, nil +} + type RoutersAggregatedListCall struct { s *Service project string diff --git a/vendor/google.golang.org/api/internal/version.go b/vendor/google.golang.org/api/internal/version.go index fafd3517c409..a91cdbad05ed 100644 --- a/vendor/google.golang.org/api/internal/version.go +++ b/vendor/google.golang.org/api/internal/version.go @@ -5,4 +5,4 @@ package internal // Version is the current tagged release of the library. -const Version = "0.280.0" +const Version = "0.286.0" diff --git a/vendor/google.golang.org/api/storage/v1/storage-api.json b/vendor/google.golang.org/api/storage/v1/storage-api.json index 9bd7de921c44..b32da8f7886f 100644 --- a/vendor/google.golang.org/api/storage/v1/storage-api.json +++ b/vendor/google.golang.org/api/storage/v1/storage-api.json @@ -253,7 +253,7 @@ "location": "northamerica-south1" } ], - "etag": "\"3136383236333536383830353031333435373432\"", + "etag": "\"3135343638383433383330343638393536313030\"", "icons": { "x16": "https://www.google.com/images/icons/product/cloud_storage-16.png", "x32": "https://www.google.com/images/icons/product/cloud_storage-32.png" @@ -4605,7 +4605,7 @@ } } }, - "revision": "20260408", + "revision": "20260524", "rootUrl": "https://storage.googleapis.com/", "schemas": { "AdvanceRelocateBucketOperationRequest": { @@ -5118,6 +5118,16 @@ "description": "Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object.", "format": "int32", "type": "integer" + }, + "sizeAboveBytes": { + "description": "Objects having a size greater than this value in bytes will be matched.", + "format": "int64", + "type": "string" + }, + "sizeBelowBytes": { + "description": "Objects having a size less than this value in bytes will be matched.", + "format": "int64", + "type": "string" } }, "type": "object" diff --git a/vendor/google.golang.org/api/storage/v1/storage-gen.go b/vendor/google.golang.org/api/storage/v1/storage-gen.go index e35ce697a475..ec9db60844f6 100644 --- a/vendor/google.golang.org/api/storage/v1/storage-gen.go +++ b/vendor/google.golang.org/api/storage/v1/storage-gen.go @@ -1195,6 +1195,12 @@ type BucketLifecycleRuleCondition struct { // this condition is satisfied when there are at least N versions (including // the live version) newer than this version of the object. NumNewerVersions int64 `json:"numNewerVersions,omitempty"` + // SizeAboveBytes: Objects having a size greater than this value in bytes will + // be matched. + SizeAboveBytes int64 `json:"sizeAboveBytes,omitempty,string"` + // SizeBelowBytes: Objects having a size less than this value in bytes will be + // matched. + SizeBelowBytes int64 `json:"sizeBelowBytes,omitempty,string"` // ForceSendFields is a list of field names (e.g. "Age") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See diff --git a/vendor/gopkg.in/ini.v1/key.go b/vendor/gopkg.in/ini.v1/key.go index b1ef5c96d7fc..800d04a473b1 100644 --- a/vendor/gopkg.in/ini.v1/key.go +++ b/vendor/gopkg.in/ini.v1/key.go @@ -15,12 +15,12 @@ package ini import ( - "bytes" "errors" "fmt" "strconv" "strings" "time" + "unicode/utf8" ) // Key represents a key under a section. @@ -495,31 +495,38 @@ func (k *Key) Strings(delim string) []string { return []string{} } - runes := []rune(str) - vals := make([]string, 0, 2) - var buf bytes.Buffer - escape := false - idx := 0 + maxParts := strings.Count(str, delim) + 1 + vals := make([]string, 0, maxParts) + + var buf strings.Builder + buf.Grow(len(str)) + + i := 0 for { - if escape { - escape = false - if runes[idx] != '\\' && !strings.HasPrefix(string(runes[idx:]), delim) { + if str[i] == '\\' { + i++ + if i >= len(str) { + break + } + + if str[i] != '\\' && !strings.HasPrefix(str[i:], delim) { buf.WriteRune('\\') } - buf.WriteRune(runes[idx]) + + r, size := utf8.DecodeRuneInString(str[i:]) + i += size + buf.WriteRune(r) + } else if strings.HasPrefix(str[i:], delim) { + i += len(delim) + vals = append(vals, strings.TrimSpace(buf.String())) + buf.Reset() } else { - if runes[idx] == '\\' { - escape = true - } else if strings.HasPrefix(string(runes[idx:]), delim) { - idx += len(delim) - 1 - vals = append(vals, strings.TrimSpace(buf.String())) - buf.Reset() - } else { - buf.WriteRune(runes[idx]) - } + r, size := utf8.DecodeRuneInString(str[i:]) + i += size + buf.WriteRune(r) } - idx++ - if idx == len(runes) { + + if i >= len(str) { break } } diff --git a/vendor/kubevirt.io/api/core/v1/types.go b/vendor/kubevirt.io/api/core/v1/types.go index c30fa4d27c46..867d788ee82c 100644 --- a/vendor/kubevirt.io/api/core/v1/types.go +++ b/vendor/kubevirt.io/api/core/v1/types.go @@ -302,6 +302,9 @@ type VirtualMachineInstanceStatus struct { // VSOCKCID is used to track the allocated VSOCK CID in the VM. // +optional + // +kubebuilder:validation:Format:=int64 + // +kubebuilder:validation:Minimum:=0 + // +kubebuilder:validation:Maximum:=4294967295 VSOCKCID *uint32 `json:"VSOCKCID,omitempty"` // SELinuxContext is the actual SELinux context of the virt-launcher pod @@ -404,12 +407,18 @@ type VolumeStatus struct { // KernelInfo show info about the kernel image type KernelInfo struct { + // +kubebuilder:validation:Format:=int64 + // +kubebuilder:validation:Minimum:=0 + // +kubebuilder:validation:Maximum:=4294967295 // Checksum is the checksum of the kernel image Checksum uint32 `json:"checksum,omitempty"` } // InitrdInfo show info about the initrd file type InitrdInfo struct { + // +kubebuilder:validation:Format:=int64 + // +kubebuilder:validation:Minimum:=0 + // +kubebuilder:validation:Maximum:=4294967295 // Checksum is the checksum of the initrd file Checksum uint32 `json:"checksum,omitempty"` } @@ -444,6 +453,9 @@ type HotplugVolumeStatus struct { // ContainerDiskInfo shows info about the containerdisk type ContainerDiskInfo struct { + // +kubebuilder:validation:Format:=int64 + // +kubebuilder:validation:Minimum:=0 + // +kubebuilder:validation:Maximum:=4294967295 // Checksum is the checksum of the rootdisk or kernel artifacts inside the containerdisk Checksum uint32 `json:"checksum,omitempty"` } @@ -2329,6 +2341,12 @@ type Handler struct { // +optional Exec *k8sv1.ExecAction `json:"exec,omitempty" protobuf:"bytes,1,opt,name=exec"` // GuestAgentPing contacts the qemu-guest-agent for availability checks. + // Probe failures are automatically suppressed when the guest agent is + // unreachable for a non-fault reason: during live migration (guest paused + // on one pod while memory is transferred) and whenever the VM is paused + // for an intentional or transient reason such as a user pause, snapshot, + // save, or dump. Failures are not suppressed when the VM is paused due to + // a fault (IO error, crash, or postcopy failure). // +optional GuestAgentPing *GuestAgentPing `json:"guestAgentPing,omitempty"` // HTTPGet specifies the http request to perform. diff --git a/vendor/kubevirt.io/api/core/v1/types_swagger_generated.go b/vendor/kubevirt.io/api/core/v1/types_swagger_generated.go index 06ea23e9a50e..1f8967d16fc5 100644 --- a/vendor/kubevirt.io/api/core/v1/types_swagger_generated.go +++ b/vendor/kubevirt.io/api/core/v1/types_swagger_generated.go @@ -79,7 +79,7 @@ func (VirtualMachineInstanceStatus) SwaggerDoc() map[string]string { "topologyHints": "+optional", "virtualMachineRevisionName": "VirtualMachineRevisionName is used to get the vm revision of the vmi when doing\nan online vm snapshot\n+optional", "runtimeUser": "RuntimeUser is used to determine what user will be used in launcher\n+optional", - "VSOCKCID": "VSOCKCID is used to track the allocated VSOCK CID in the VM.\n+optional", + "VSOCKCID": "VSOCKCID is used to track the allocated VSOCK CID in the VM.\n+optional\n+kubebuilder:validation:Format:=int64\n+kubebuilder:validation:Minimum:=0\n+kubebuilder:validation:Maximum:=4294967295", "selinuxContext": "SELinuxContext is the actual SELinux context of the virt-launcher pod\n+optional", "machine": "Machine shows the final resulting qemu machine type. This can be different\nthan the machine type selected in the spec, due to qemus machine type alias mechanism.\n+optional", "currentCPUTopology": "CurrentCPUTopology specifies the current CPU topology used by the VM workload.\nCurrent topology may differ from the desired topology in the spec while CPU hotplug\ntakes place.", @@ -130,14 +130,14 @@ func (VolumeStatus) SwaggerDoc() map[string]string { func (KernelInfo) SwaggerDoc() map[string]string { return map[string]string{ "": "KernelInfo show info about the kernel image", - "checksum": "Checksum is the checksum of the kernel image", + "checksum": "+kubebuilder:validation:Format:=int64\n+kubebuilder:validation:Minimum:=0\n+kubebuilder:validation:Maximum:=4294967295\nChecksum is the checksum of the kernel image", } } func (InitrdInfo) SwaggerDoc() map[string]string { return map[string]string{ "": "InitrdInfo show info about the initrd file", - "checksum": "Checksum is the checksum of the initrd file", + "checksum": "+kubebuilder:validation:Format:=int64\n+kubebuilder:validation:Minimum:=0\n+kubebuilder:validation:Maximum:=4294967295\nChecksum is the checksum of the initrd file", } } @@ -170,7 +170,7 @@ func (HotplugVolumeStatus) SwaggerDoc() map[string]string { func (ContainerDiskInfo) SwaggerDoc() map[string]string { return map[string]string{ "": "ContainerDiskInfo shows info about the containerdisk", - "checksum": "Checksum is the checksum of the rootdisk or kernel artifacts inside the containerdisk", + "checksum": "+kubebuilder:validation:Format:=int64\n+kubebuilder:validation:Minimum:=0\n+kubebuilder:validation:Maximum:=4294967295\nChecksum is the checksum of the rootdisk or kernel artifacts inside the containerdisk", } } @@ -558,7 +558,7 @@ func (Handler) SwaggerDoc() map[string]string { return map[string]string{ "": "Handler defines a specific action that should be taken", "exec": "One and only one of the following should be specified.\nExec specifies the action to take, it will be executed on the guest through the qemu-guest-agent.\nIf the guest agent is not available, this probe will fail.\n+optional", - "guestAgentPing": "GuestAgentPing contacts the qemu-guest-agent for availability checks.\n+optional", + "guestAgentPing": "GuestAgentPing contacts the qemu-guest-agent for availability checks.\nProbe failures are automatically suppressed when the guest agent is\nunreachable for a non-fault reason: during live migration (guest paused\non one pod while memory is transferred) and whenever the VM is paused\nfor an intentional or transient reason such as a user pause, snapshot,\nsave, or dump. Failures are not suppressed when the VM is paused due to\na fault (IO error, crash, or postcopy failure).\n+optional", "httpGet": "HTTPGet specifies the http request to perform.\n+optional", "tcpSocket": "TCPSocket specifies an action involving a TCP port.\nTCP hooks not yet supported\n+optional", } diff --git a/vendor/modules.txt b/vendor/modules.txt index 7d77f0f6c7b5..5b7392b9b95c 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -849,8 +849,8 @@ github.com/google/s2a-go/stream # github.com/google/uuid v1.6.0 ## explicit github.com/google/uuid -# github.com/googleapis/enterprise-certificate-proxy v0.3.15 -## explicit; go 1.24.11 +# github.com/googleapis/enterprise-certificate-proxy v0.3.16 +## explicit; go 1.25.8 github.com/googleapis/enterprise-certificate-proxy/client github.com/googleapis/enterprise-certificate-proxy/client/util # github.com/googleapis/gax-go/v2 v2.22.0 @@ -1290,7 +1290,7 @@ github.com/x448/float16 # github.com/xlab/treeprint v1.2.0 ## explicit; go 1.13 github.com/xlab/treeprint -# go.etcd.io/etcd/api/v3 v3.6.11 +# go.etcd.io/etcd/api/v3 v3.6.12 ## explicit; go 1.25.0 go.etcd.io/etcd/api/v3/authpb go.etcd.io/etcd/api/v3/etcdserverpb @@ -1299,7 +1299,7 @@ go.etcd.io/etcd/api/v3/mvccpb go.etcd.io/etcd/api/v3/v3rpc/rpctypes go.etcd.io/etcd/api/v3/version go.etcd.io/etcd/api/v3/versionpb -# go.etcd.io/etcd/client/pkg/v3 v3.6.11 +# go.etcd.io/etcd/client/pkg/v3 v3.6.12 ## explicit; go 1.25.0 go.etcd.io/etcd/client/pkg/v3/fileutil go.etcd.io/etcd/client/pkg/v3/logutil @@ -1308,19 +1308,19 @@ go.etcd.io/etcd/client/pkg/v3/tlsutil go.etcd.io/etcd/client/pkg/v3/transport go.etcd.io/etcd/client/pkg/v3/types go.etcd.io/etcd/client/pkg/v3/verify -# go.etcd.io/etcd/client/v3 v3.6.11 +# go.etcd.io/etcd/client/v3 v3.6.12 ## explicit; go 1.25.0 go.etcd.io/etcd/client/v3 go.etcd.io/etcd/client/v3/credentials go.etcd.io/etcd/client/v3/internal/endpoint go.etcd.io/etcd/client/v3/internal/resolver go.etcd.io/etcd/client/v3/kubernetes -# go.etcd.io/etcd/pkg/v3 v3.6.11 +# go.etcd.io/etcd/pkg/v3 v3.6.12 ## explicit; go 1.25.0 go.etcd.io/etcd/pkg/v3/cpuutil go.etcd.io/etcd/pkg/v3/netutil go.etcd.io/etcd/pkg/v3/notify -# go.etcd.io/etcd/server/v3 v3.6.11 +# go.etcd.io/etcd/server/v3 v3.6.12 ## explicit; go 1.25.0 go.etcd.io/etcd/server/v3/etcdserver/api/membership go.etcd.io/etcd/server/v3/etcdserver/api/v2error @@ -1576,8 +1576,8 @@ golang.org/x/tools/internal/versions # gomodules.xyz/jsonpatch/v2 v2.5.0 ## explicit; go 1.20 gomodules.xyz/jsonpatch/v2 -# google.golang.org/api v0.280.0 -## explicit; go 1.25.0 +# google.golang.org/api v0.286.0 +## explicit; go 1.25.8 google.golang.org/api/cloudresourcemanager/v1 google.golang.org/api/compute/v1 google.golang.org/api/dns/v1 @@ -1600,7 +1600,7 @@ google.golang.org/genproto/googleapis/api google.golang.org/genproto/googleapis/api/annotations google.golang.org/genproto/googleapis/api/expr/v1alpha1 google.golang.org/genproto/googleapis/api/httpbody -# google.golang.org/genproto/googleapis/rpc v0.0.0-20260511170946-3700d4141b60 +# google.golang.org/genproto/googleapis/rpc v0.0.0-20260610212136-7ab31c22f7ad ## explicit; go 1.25.0 google.golang.org/genproto/googleapis/rpc/code google.golang.org/genproto/googleapis/rpc/errdetails @@ -1724,7 +1724,7 @@ gopkg.in/evanphx/json-patch.v4 # gopkg.in/inf.v0 v0.9.1 ## explicit gopkg.in/inf.v0 -# gopkg.in/ini.v1 v1.67.2 +# gopkg.in/ini.v1 v1.67.3 ## explicit; go 1.13 gopkg.in/ini.v1 # gopkg.in/natefinch/lumberjack.v2 v2.2.1 @@ -2556,7 +2556,7 @@ k8s.io/utils/ptr k8s.io/utils/set k8s.io/utils/strings/slices k8s.io/utils/trace -# kubevirt.io/api v1.8.2 +# kubevirt.io/api v1.8.4 ## explicit; go 1.24.0 kubevirt.io/api/backup kubevirt.io/api/backup/v1alpha1