google-apis-compute_v1 0.116.0 → 0.118.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/google/apis/compute_v1/classes.rb +611 -45
- data/lib/google/apis/compute_v1/gem_version.rb +2 -2
- data/lib/google/apis/compute_v1/representations.rb +195 -0
- data/lib/google/apis/compute_v1/service.rb +294 -0
- metadata +3 -3
| @@ -1324,6 +1324,16 @@ module Google | |
| 1324 1324 | 
             
                  class AllocationResourceStatus
         | 
| 1325 1325 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 1326 1326 |  | 
| 1327 | 
            +
                    # The number of reservation blocks associated with this reservation.
         | 
| 1328 | 
            +
                    # Corresponds to the JSON property `reservationBlockCount`
         | 
| 1329 | 
            +
                    # @return [Fixnum]
         | 
| 1330 | 
            +
                    attr_accessor :reservation_block_count
         | 
| 1331 | 
            +
                  
         | 
| 1332 | 
            +
                    # Maintenance Info for ReservationBlocks.
         | 
| 1333 | 
            +
                    # Corresponds to the JSON property `reservationMaintenance`
         | 
| 1334 | 
            +
                    # @return [Google::Apis::ComputeV1::GroupMaintenanceInfo]
         | 
| 1335 | 
            +
                    attr_accessor :reservation_maintenance
         | 
| 1336 | 
            +
                  
         | 
| 1327 1337 | 
             
                    # Contains Properties set for the reservation.
         | 
| 1328 1338 | 
             
                    # Corresponds to the JSON property `specificSkuAllocation`
         | 
| 1329 1339 | 
             
                    # @return [Google::Apis::ComputeV1::AllocationResourceStatusSpecificSkuAllocation]
         | 
| @@ -1335,6 +1345,8 @@ module Google | |
| 1335 1345 |  | 
| 1336 1346 | 
             
                    # Update properties of this object
         | 
| 1337 1347 | 
             
                    def update!(**args)
         | 
| 1348 | 
            +
                      @reservation_block_count = args[:reservation_block_count] if args.key?(:reservation_block_count)
         | 
| 1349 | 
            +
                      @reservation_maintenance = args[:reservation_maintenance] if args.key?(:reservation_maintenance)
         | 
| 1338 1350 | 
             
                      @specific_sku_allocation = args[:specific_sku_allocation] if args.key?(:specific_sku_allocation)
         | 
| 1339 1351 | 
             
                    end
         | 
| 1340 1352 | 
             
                  end
         | 
| @@ -2807,7 +2819,8 @@ module Google | |
| 2807 2819 | 
             
                    # the [Backend services overview](https://cloud.google.com/load-balancing/docs/
         | 
| 2808 2820 | 
             
                    # backend-service#backends). You must use the *fully-qualified* URL (starting
         | 
| 2809 2821 | 
             
                    # with https://www.googleapis.com/) to specify the instance group or NEG.
         | 
| 2810 | 
            -
                    # Partial URLs are not supported.
         | 
| 2822 | 
            +
                    # Partial URLs are not supported. If haPolicy is specified, backends must refer
         | 
| 2823 | 
            +
                    # to NEG resources of type GCE_VM_IP.
         | 
| 2811 2824 | 
             
                    # Corresponds to the JSON property `group`
         | 
| 2812 2825 | 
             
                    # @return [String]
         | 
| 2813 2826 | 
             
                    attr_accessor :group
         | 
| @@ -3044,7 +3057,7 @@ module Google | |
| 3044 3057 | 
             
                    attr_accessor :client_ttl
         | 
| 3045 3058 |  | 
| 3046 3059 | 
             
                    # Specifies the default TTL for cached content served by this origin for
         | 
| 3047 | 
            -
                    # responses that do not have an existing valid TTL (max-age or s- | 
| 3060 | 
            +
                    # responses that do not have an existing valid TTL (max-age or s-maxage).
         | 
| 3048 3061 | 
             
                    # Setting a TTL of "0" means "always revalidate". The value of defaultTTL cannot
         | 
| 3049 3062 | 
             
                    # be set to a value greater than that of maxTTL, but can be equal. When the
         | 
| 3050 3063 | 
             
                    # cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set
         | 
| @@ -3108,7 +3121,7 @@ module Google | |
| 3108 3121 | 
             
                    # that do not specify a max-stale directive. Stale responses that exceed the TTL
         | 
| 3109 3122 | 
             
                    # configured here will not be served. The default limit (max-stale) is 86400s (1
         | 
| 3110 3123 | 
             
                    # day), which will allow stale content to be served up to this limit beyond the
         | 
| 3111 | 
            -
                    # max-age (or s- | 
| 3124 | 
            +
                    # max-age (or s-maxage) of a cached response. The maximum allowed value is
         | 
| 3112 3125 | 
             
                    # 604800 (1 week). Set this to zero (0) to disable serve-while-stale.
         | 
| 3113 3126 | 
             
                    # Corresponds to the JSON property `serveWhileStale`
         | 
| 3114 3127 | 
             
                    # @return [Fixnum]
         | 
| @@ -3512,6 +3525,32 @@ module Google | |
| 3512 3525 | 
             
                    attr_accessor :enable_cdn
         | 
| 3513 3526 | 
             
                    alias_method :enable_cdn?, :enable_cdn
         | 
| 3514 3527 |  | 
| 3528 | 
            +
                    # Specifies the canary migration state. Possible values are PREPARE,
         | 
| 3529 | 
            +
                    # TEST_BY_PERCENTAGE, and TEST_ALL_TRAFFIC. To begin the migration from EXTERNAL
         | 
| 3530 | 
            +
                    # to EXTERNAL_MANAGED, the state must be changed to PREPARE. The state must be
         | 
| 3531 | 
            +
                    # changed to TEST_ALL_TRAFFIC before the loadBalancingScheme can be changed to
         | 
| 3532 | 
            +
                    # EXTERNAL_MANAGED. Optionally, the TEST_BY_PERCENTAGE state can be used to
         | 
| 3533 | 
            +
                    # migrate traffic by percentage using externalManagedMigrationTestingPercentage.
         | 
| 3534 | 
            +
                    # Rolling back a migration requires the states to be set in reverse order. So
         | 
| 3535 | 
            +
                    # changing the scheme from EXTERNAL_MANAGED to EXTERNAL requires the state to be
         | 
| 3536 | 
            +
                    # set to TEST_ALL_TRAFFIC at the same time. Optionally, the TEST_BY_PERCENTAGE
         | 
| 3537 | 
            +
                    # state can be used to migrate some traffic back to EXTERNAL or PREPARE can be
         | 
| 3538 | 
            +
                    # used to migrate all traffic back to EXTERNAL.
         | 
| 3539 | 
            +
                    # Corresponds to the JSON property `externalManagedMigrationState`
         | 
| 3540 | 
            +
                    # @return [String]
         | 
| 3541 | 
            +
                    attr_accessor :external_managed_migration_state
         | 
| 3542 | 
            +
                  
         | 
| 3543 | 
            +
                    # Determines the fraction of requests that should be processed by the Global
         | 
| 3544 | 
            +
                    # external Application Load Balancer. The value of this field must be in the
         | 
| 3545 | 
            +
                    # range [0, 100]. Session affinity options will slightly affect this routing
         | 
| 3546 | 
            +
                    # behavior, for more details, see: Session Affinity. This value can only be set
         | 
| 3547 | 
            +
                    # if the loadBalancingScheme in the BackendService is set to EXTERNAL (when
         | 
| 3548 | 
            +
                    # using the classic Application Load Balancer) and the migration state is
         | 
| 3549 | 
            +
                    # TEST_BY_PERCENTAGE.
         | 
| 3550 | 
            +
                    # Corresponds to the JSON property `externalManagedMigrationTestingPercentage`
         | 
| 3551 | 
            +
                    # @return [Float]
         | 
| 3552 | 
            +
                    attr_accessor :external_managed_migration_testing_percentage
         | 
| 3553 | 
            +
                  
         | 
| 3515 3554 | 
             
                    # For load balancers that have configurable failover: [Internal passthrough
         | 
| 3516 3555 | 
             
                    # Network Load Balancers](https://cloud.google.com/load-balancing/docs/internal/
         | 
| 3517 3556 | 
             
                    # failover-overview) and [external passthrough Network Load Balancers](https://
         | 
| @@ -3537,13 +3576,35 @@ module Google | |
| 3537 3576 | 
             
                    # @return [String]
         | 
| 3538 3577 | 
             
                    attr_accessor :fingerprint
         | 
| 3539 3578 |  | 
| 3579 | 
            +
                    # Configures self-managed High Availability (HA) for External and Internal
         | 
| 3580 | 
            +
                    # Protocol Forwarding. The backends of this regional backend service must only
         | 
| 3581 | 
            +
                    # specify zonal network endpoint groups (NEGs) of type GCE_VM_IP. When haPolicy
         | 
| 3582 | 
            +
                    # is set for an Internal Passthrough Network Load Balancer, the regional backend
         | 
| 3583 | 
            +
                    # service must set the network field. All zonal NEGs must belong to the same
         | 
| 3584 | 
            +
                    # network. However, individual NEGs can belong to different subnetworks of that
         | 
| 3585 | 
            +
                    # network. When haPolicy is specified, the set of attached network endpoints
         | 
| 3586 | 
            +
                    # across all backends comprise an High Availability domain from which one
         | 
| 3587 | 
            +
                    # endpoint is selected as the active endpoint (the leader) that receives all
         | 
| 3588 | 
            +
                    # traffic. haPolicy can be added only at backend service creation time. Once set
         | 
| 3589 | 
            +
                    # up, it cannot be deleted. Note that haPolicy is not for load balancing, and
         | 
| 3590 | 
            +
                    # therefore cannot be specified with sessionAffinity, connectionTrackingPolicy,
         | 
| 3591 | 
            +
                    # and failoverPolicy. haPolicy requires customers to be responsible for tracking
         | 
| 3592 | 
            +
                    # backend endpoint health and electing a leader among the healthy endpoints.
         | 
| 3593 | 
            +
                    # Therefore, haPolicy cannot be specified with healthChecks. haPolicy can only
         | 
| 3594 | 
            +
                    # be specified for External Passthrough Network Load Balancers and Internal
         | 
| 3595 | 
            +
                    # Passthrough Network Load Balancers.
         | 
| 3596 | 
            +
                    # Corresponds to the JSON property `haPolicy`
         | 
| 3597 | 
            +
                    # @return [Google::Apis::ComputeV1::BackendServiceHaPolicy]
         | 
| 3598 | 
            +
                    attr_accessor :ha_policy
         | 
| 3599 | 
            +
                  
         | 
| 3540 3600 | 
             
                    # The list of URLs to the healthChecks, httpHealthChecks (legacy), or
         | 
| 3541 3601 | 
             
                    # httpsHealthChecks (legacy) resource for health checking this backend service.
         | 
| 3542 3602 | 
             
                    # Not all backend services support legacy health checks. See Load balancer guide.
         | 
| 3543 3603 | 
             
                    # Currently, at most one health check can be specified for each backend service.
         | 
| 3544 3604 | 
             
                    # Backend services with instance group or zonal NEG backends must have a health
         | 
| 3545 | 
            -
                    # check. Backend services with internet or | 
| 3546 | 
            -
                    # a health check.
         | 
| 3605 | 
            +
                    # check unless haPolicy is specified. Backend services with internet or
         | 
| 3606 | 
            +
                    # serverless NEG backends must not have a health check. healthChecks[] cannot be
         | 
| 3607 | 
            +
                    # specified with haPolicy.
         | 
| 3547 3608 | 
             
                    # Corresponds to the JSON property `healthChecks`
         | 
| 3548 3609 | 
             
                    # @return [Array<String>]
         | 
| 3549 3610 | 
             
                    attr_accessor :health_checks
         | 
| @@ -3631,6 +3692,7 @@ module Google | |
| 3631 3692 | 
             
                    # default value for localityLbPolicy is MAGLEV. Only ROUND_ROBIN and RING_HASH
         | 
| 3632 3693 | 
             
                    # are supported when the backend service is referenced by a URL map that is
         | 
| 3633 3694 | 
             
                    # bound to target gRPC proxy that has validateForProxyless field set to true.
         | 
| 3695 | 
            +
                    # localityLbPolicy cannot be specified with haPolicy.
         | 
| 3634 3696 | 
             
                    # Corresponds to the JSON property `localityLbPolicy`
         | 
| 3635 3697 | 
             
                    # @return [String]
         | 
| 3636 3698 | 
             
                    attr_accessor :locality_lb_policy
         | 
| @@ -3665,8 +3727,11 @@ module Google | |
| 3665 3727 | 
             
                    # @return [String]
         | 
| 3666 3728 | 
             
                    attr_accessor :name
         | 
| 3667 3729 |  | 
| 3668 | 
            -
                    # The URL of the network to which this backend service belongs. This field  | 
| 3669 | 
            -
                    #  | 
| 3730 | 
            +
                    # The URL of the network to which this backend service belongs. This field must
         | 
| 3731 | 
            +
                    # be set for Internal Passthrough Network Load Balancers when the haPolicy is
         | 
| 3732 | 
            +
                    # enabled, and for External Passthrough Network Load Balancers when the haPolicy
         | 
| 3733 | 
            +
                    # fastIpMove is enabled. This field can only be specified when the load
         | 
| 3734 | 
            +
                    # balancing scheme is set to INTERNAL.
         | 
| 3670 3735 | 
             
                    # Corresponds to the JSON property `network`
         | 
| 3671 3736 | 
             
                    # @return [String]
         | 
| 3672 3737 | 
             
                    attr_accessor :network
         | 
| @@ -3746,7 +3811,8 @@ module Google | |
| 3746 3811 | 
             
                    # HEADER_FIELD are supported when the backend service is referenced by a URL map
         | 
| 3747 3812 | 
             
                    # that is bound to target gRPC proxy that has validateForProxyless field set to
         | 
| 3748 3813 | 
             
                    # true. For more details, see: [Session Affinity](https://cloud.google.com/load-
         | 
| 3749 | 
            -
                    # balancing/docs/backend-service#session_affinity).
         | 
| 3814 | 
            +
                    # balancing/docs/backend-service#session_affinity). sessionAffinity cannot be
         | 
| 3815 | 
            +
                    # specified with haPolicy.
         | 
| 3750 3816 | 
             
                    # Corresponds to the JSON property `sessionAffinity`
         | 
| 3751 3817 | 
             
                    # @return [String]
         | 
| 3752 3818 | 
             
                    attr_accessor :session_affinity
         | 
| @@ -3801,8 +3867,11 @@ module Google | |
| 3801 3867 | 
             
                      @description = args[:description] if args.key?(:description)
         | 
| 3802 3868 | 
             
                      @edge_security_policy = args[:edge_security_policy] if args.key?(:edge_security_policy)
         | 
| 3803 3869 | 
             
                      @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
         | 
| 3870 | 
            +
                      @external_managed_migration_state = args[:external_managed_migration_state] if args.key?(:external_managed_migration_state)
         | 
| 3871 | 
            +
                      @external_managed_migration_testing_percentage = args[:external_managed_migration_testing_percentage] if args.key?(:external_managed_migration_testing_percentage)
         | 
| 3804 3872 | 
             
                      @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
         | 
| 3805 3873 | 
             
                      @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
         | 
| 3874 | 
            +
                      @ha_policy = args[:ha_policy] if args.key?(:ha_policy)
         | 
| 3806 3875 | 
             
                      @health_checks = args[:health_checks] if args.key?(:health_checks)
         | 
| 3807 3876 | 
             
                      @iap = args[:iap] if args.key?(:iap)
         | 
| 3808 3877 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| @@ -4005,7 +4074,7 @@ module Google | |
| 4005 4074 | 
             
                    attr_accessor :client_ttl
         | 
| 4006 4075 |  | 
| 4007 4076 | 
             
                    # Specifies the default TTL for cached content served by this origin for
         | 
| 4008 | 
            -
                    # responses that do not have an existing valid TTL (max-age or s- | 
| 4077 | 
            +
                    # responses that do not have an existing valid TTL (max-age or s-maxage).
         | 
| 4009 4078 | 
             
                    # Setting a TTL of "0" means "always revalidate". The value of defaultTTL cannot
         | 
| 4010 4079 | 
             
                    # be set to a value greater than that of maxTTL, but can be equal. When the
         | 
| 4011 4080 | 
             
                    # cacheMode is set to FORCE_CACHE_ALL, the defaultTTL will overwrite the TTL set
         | 
| @@ -4069,7 +4138,7 @@ module Google | |
| 4069 4138 | 
             
                    # that do not specify a max-stale directive. Stale responses that exceed the TTL
         | 
| 4070 4139 | 
             
                    # configured here will not be served. The default limit (max-stale) is 86400s (1
         | 
| 4071 4140 | 
             
                    # day), which will allow stale content to be served up to this limit beyond the
         | 
| 4072 | 
            -
                    # max-age (or s- | 
| 4141 | 
            +
                    # max-age (or s-maxage) of a cached response. The maximum allowed value is
         | 
| 4073 4142 | 
             
                    # 604800 (1 week). Set this to zero (0) to disable serve-while-stale.
         | 
| 4074 4143 | 
             
                    # Corresponds to the JSON property `serveWhileStale`
         | 
| 4075 4144 | 
             
                    # @return [Fixnum]
         | 
| @@ -4354,6 +4423,71 @@ module Google | |
| 4354 4423 | 
             
                    end
         | 
| 4355 4424 | 
             
                  end
         | 
| 4356 4425 |  | 
| 4426 | 
            +
                  # 
         | 
| 4427 | 
            +
                  class BackendServiceHaPolicy
         | 
| 4428 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 4429 | 
            +
                  
         | 
| 4430 | 
            +
                    # Specifies whether fast IP move is enabled, and if so, the mechanism to achieve
         | 
| 4431 | 
            +
                    # it. Supported values are: - DISABLED: Fast IP Move is disabled. You can only
         | 
| 4432 | 
            +
                    # use the haPolicy.leader API to update the leader. - >GARP_RA: Provides a
         | 
| 4433 | 
            +
                    # method to very quickly define a new network endpoint as the leader. This
         | 
| 4434 | 
            +
                    # method is faster than updating the leader using the haPolicy.leader API. Fast
         | 
| 4435 | 
            +
                    # IP move works as follows: The VM hosting the network endpoint that should
         | 
| 4436 | 
            +
                    # become the new leader sends either a Gratuitous ARP (GARP) packet (IPv4) or an
         | 
| 4437 | 
            +
                    # ICMPv6 Router Advertisement(RA) packet (IPv6). Google Cloud immediately but
         | 
| 4438 | 
            +
                    # temporarily associates the forwarding rule IP address with that VM, and both
         | 
| 4439 | 
            +
                    # new and in-flight packets are quickly delivered to that VM. Note the important
         | 
| 4440 | 
            +
                    # properties of the Fast IP Move functionality: - The GARP/RA-initiated re-
         | 
| 4441 | 
            +
                    # routing stays active for approximately 20 minutes. After triggering fast
         | 
| 4442 | 
            +
                    # failover, you must also appropriately set the haPolicy.leader. - The new
         | 
| 4443 | 
            +
                    # leader instance should continue to send GARP/RA packets periodically every 10
         | 
| 4444 | 
            +
                    # seconds until at least 10 minutes after updating the haPolicy.leader (but stop
         | 
| 4445 | 
            +
                    # immediately if it is no longer the leader). - After triggering a fast failover,
         | 
| 4446 | 
            +
                    # we recommend that you wait at least 3 seconds before sending another GARP/RA
         | 
| 4447 | 
            +
                    # packet from a different VM instance to avoid race conditions. - Don't send
         | 
| 4448 | 
            +
                    # GARP/RA packets from different VM instances at the same time. If multiple
         | 
| 4449 | 
            +
                    # instances continue to send GARP/RA packets, traffic might be routed to
         | 
| 4450 | 
            +
                    # different destinations in an alternating order. This condition ceases when a
         | 
| 4451 | 
            +
                    # single instance issues a GARP/RA packet. - The GARP/RA request always takes
         | 
| 4452 | 
            +
                    # priority over the leader API. Using the haPolicy.leader API to change the
         | 
| 4453 | 
            +
                    # leader to a different instance will have no effect until the GARP/RA request
         | 
| 4454 | 
            +
                    # becomes inactive. - The GARP/RA packets should follow the GARP/RA Packet
         | 
| 4455 | 
            +
                    # Specifications.. - When multiple forwarding rules refer to a regional backend
         | 
| 4456 | 
            +
                    # service, you need only send a GARP or RA packet for a single forwarding rule
         | 
| 4457 | 
            +
                    # virtual IP. The virtual IPs for all forwarding rules targeting the same
         | 
| 4458 | 
            +
                    # backend service will also be moved to the sender of the GARP or RA packet. The
         | 
| 4459 | 
            +
                    # following are the Fast IP Move limitations (that is, when fastIPMove is not
         | 
| 4460 | 
            +
                    # DISABLED): - Multiple forwarding rules cannot use the same IP address if one
         | 
| 4461 | 
            +
                    # of them refers to a regional backend service with fastIPMove. - The regional
         | 
| 4462 | 
            +
                    # backend service must set the network field, and all NEGs must belong to that
         | 
| 4463 | 
            +
                    # network. However, individual NEGs can belong to different subnetworks of that
         | 
| 4464 | 
            +
                    # network. - The maximum number of network endpoints across all backends of a
         | 
| 4465 | 
            +
                    # backend service with fastIPMove is 64. - The maximum number of backend
         | 
| 4466 | 
            +
                    # services with fastIPMove that can have the same network endpoint attached to
         | 
| 4467 | 
            +
                    # one of its backends is 64. - The maximum number of backend services with
         | 
| 4468 | 
            +
                    # fastIPMove in a VPC in a region is 64. - The network endpoints that are
         | 
| 4469 | 
            +
                    # attached to a backend of a backend service with fastIPMove cannot resolve to
         | 
| 4470 | 
            +
                    # Gen3+ machines for IPv6. - Traffic directed to the leader by a static route
         | 
| 4471 | 
            +
                    # next hop will not be redirected to a new leader by fast failover. Such traffic
         | 
| 4472 | 
            +
                    # will only be redirected once an haPolicy.leader update has taken effect. Only
         | 
| 4473 | 
            +
                    # traffic to the forwarding rule's virtual IP will be redirected to a new leader
         | 
| 4474 | 
            +
                    # by fast failover. haPolicy.fastIPMove can be set only at backend service
         | 
| 4475 | 
            +
                    # creation time. Once set, it cannot be updated. By default, fastIpMove is set
         | 
| 4476 | 
            +
                    # to DISABLED.
         | 
| 4477 | 
            +
                    # Corresponds to the JSON property `fastIPMove`
         | 
| 4478 | 
            +
                    # @return [String]
         | 
| 4479 | 
            +
                    attr_accessor :fast_ip_move
         | 
| 4480 | 
            +
                  
         | 
| 4481 | 
            +
                    def initialize(**args)
         | 
| 4482 | 
            +
                       update!(**args)
         | 
| 4483 | 
            +
                    end
         | 
| 4484 | 
            +
                  
         | 
| 4485 | 
            +
                    # Update properties of this object
         | 
| 4486 | 
            +
                    def update!(**args)
         | 
| 4487 | 
            +
                      @fast_ip_move = args[:fast_ip_move] if args.key?(:fast_ip_move)
         | 
| 4488 | 
            +
                    end
         | 
| 4489 | 
            +
                  end
         | 
| 4490 | 
            +
                  
         | 
| 4357 4491 | 
             
                  # The HTTP cookie used for stateful session affinity.
         | 
| 4358 4492 | 
             
                  class BackendServiceHttpCookie
         | 
| 4359 4493 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -5551,6 +5685,16 @@ module Google | |
| 5551 5685 | 
             
                  class CacheInvalidationRule
         | 
| 5552 5686 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 5553 5687 |  | 
| 5688 | 
            +
                    # A list of cache tags used to identify cached objects. - Cache tags are
         | 
| 5689 | 
            +
                    # specified when the response is first cached, by setting the `Cache-Tag`
         | 
| 5690 | 
            +
                    # response header at the origin. - Multiple cache tags in the same invalidation
         | 
| 5691 | 
            +
                    # request are treated as Boolean `OR` - for example, `tag1 OR tag2 OR tag3`. -
         | 
| 5692 | 
            +
                    # If other fields are also specified, these are treated as Boolean `AND` with
         | 
| 5693 | 
            +
                    # any tags. Up to 10 tags can be specified in a single invalidation request.
         | 
| 5694 | 
            +
                    # Corresponds to the JSON property `cacheTags`
         | 
| 5695 | 
            +
                    # @return [Array<String>]
         | 
| 5696 | 
            +
                    attr_accessor :cache_tags
         | 
| 5697 | 
            +
                  
         | 
| 5554 5698 | 
             
                    # If set, this invalidation rule will only apply to requests with a Host header
         | 
| 5555 5699 | 
             
                    # matching host.
         | 
| 5556 5700 | 
             
                    # Corresponds to the JSON property `host`
         | 
| @@ -5568,6 +5712,7 @@ module Google | |
| 5568 5712 |  | 
| 5569 5713 | 
             
                    # Update properties of this object
         | 
| 5570 5714 | 
             
                    def update!(**args)
         | 
| 5715 | 
            +
                      @cache_tags = args[:cache_tags] if args.key?(:cache_tags)
         | 
| 5571 5716 | 
             
                      @host = args[:host] if args.key?(:host)
         | 
| 5572 5717 | 
             
                      @path = args[:path] if args.key?(:path)
         | 
| 5573 5718 | 
             
                    end
         | 
| @@ -11083,6 +11228,45 @@ module Google | |
| 11083 11228 | 
             
                    end
         | 
| 11084 11229 | 
             
                  end
         | 
| 11085 11230 |  | 
| 11231 | 
            +
                  # Maintenance Info for ReservationBlocks.
         | 
| 11232 | 
            +
                  class GroupMaintenanceInfo
         | 
| 11233 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 11234 | 
            +
                  
         | 
| 11235 | 
            +
                    # Progress for ongoing maintenance for this group of VMs/hosts. Describes number
         | 
| 11236 | 
            +
                    # of hosts in the block that have ongoing maintenance.
         | 
| 11237 | 
            +
                    # Corresponds to the JSON property `maintenanceOngoingCount`
         | 
| 11238 | 
            +
                    # @return [Fixnum]
         | 
| 11239 | 
            +
                    attr_accessor :maintenance_ongoing_count
         | 
| 11240 | 
            +
                  
         | 
| 11241 | 
            +
                    # Progress for ongoing maintenance for this group of VMs/hosts. Describes number
         | 
| 11242 | 
            +
                    # of hosts in the block that have pending maintenance.
         | 
| 11243 | 
            +
                    # Corresponds to the JSON property `maintenancePendingCount`
         | 
| 11244 | 
            +
                    # @return [Fixnum]
         | 
| 11245 | 
            +
                    attr_accessor :maintenance_pending_count
         | 
| 11246 | 
            +
                  
         | 
| 11247 | 
            +
                    # The type of maintenance for the reservation.
         | 
| 11248 | 
            +
                    # Corresponds to the JSON property `schedulingType`
         | 
| 11249 | 
            +
                    # @return [String]
         | 
| 11250 | 
            +
                    attr_accessor :scheduling_type
         | 
| 11251 | 
            +
                  
         | 
| 11252 | 
            +
                    # Upcoming Maintenance notification information.
         | 
| 11253 | 
            +
                    # Corresponds to the JSON property `upcomingGroupMaintenance`
         | 
| 11254 | 
            +
                    # @return [Google::Apis::ComputeV1::UpcomingMaintenance]
         | 
| 11255 | 
            +
                    attr_accessor :upcoming_group_maintenance
         | 
| 11256 | 
            +
                  
         | 
| 11257 | 
            +
                    def initialize(**args)
         | 
| 11258 | 
            +
                       update!(**args)
         | 
| 11259 | 
            +
                    end
         | 
| 11260 | 
            +
                  
         | 
| 11261 | 
            +
                    # Update properties of this object
         | 
| 11262 | 
            +
                    def update!(**args)
         | 
| 11263 | 
            +
                      @maintenance_ongoing_count = args[:maintenance_ongoing_count] if args.key?(:maintenance_ongoing_count)
         | 
| 11264 | 
            +
                      @maintenance_pending_count = args[:maintenance_pending_count] if args.key?(:maintenance_pending_count)
         | 
| 11265 | 
            +
                      @scheduling_type = args[:scheduling_type] if args.key?(:scheduling_type)
         | 
| 11266 | 
            +
                      @upcoming_group_maintenance = args[:upcoming_group_maintenance] if args.key?(:upcoming_group_maintenance)
         | 
| 11267 | 
            +
                    end
         | 
| 11268 | 
            +
                  end
         | 
| 11269 | 
            +
                  
         | 
| 11086 11270 | 
             
                  # A guest attributes entry.
         | 
| 11087 11271 | 
             
                  class GuestAttributes
         | 
| 11088 11272 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -11192,8 +11376,8 @@ module Google | |
| 11192 11376 | 
             
                    # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
         | 
| 11193 11377 | 
             
                    # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE -
         | 
| 11194 11378 | 
             
                    # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE_V2 - SEV_SNP_CAPABLE -
         | 
| 11195 | 
            -
                    # TDX_CAPABLE - IDPF For more information, see Enabling guest | 
| 11196 | 
            -
                    # features.
         | 
| 11379 | 
            +
                    # TDX_CAPABLE - IDPF - SNP_SVSM_CAPABLE For more information, see Enabling guest
         | 
| 11380 | 
            +
                    # operating system features.
         | 
| 11197 11381 | 
             
                    # Corresponds to the JSON property `type`
         | 
| 11198 11382 | 
             
                    # @return [String]
         | 
| 11199 11383 | 
             
                    attr_accessor :type
         | 
| @@ -18798,7 +18982,7 @@ module Google | |
| 18798 18982 | 
             
                  class InstancesReportHostAsFaultyRequest
         | 
| 18799 18983 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 18800 18984 |  | 
| 18801 | 
            -
                    # The disruption schedule for the VM.  | 
| 18985 | 
            +
                    # The disruption schedule for the VM. Required field, only allows IMMEDIATE.
         | 
| 18802 18986 | 
             
                    # Corresponds to the JSON property `disruptionSchedule`
         | 
| 18803 18987 | 
             
                    # @return [String]
         | 
| 18804 18988 | 
             
                    attr_accessor :disruption_schedule
         | 
| @@ -19772,7 +19956,8 @@ module Google | |
| 19772 19956 |  | 
| 19773 19957 | 
             
                    # Type of link requested, which can take one of the following values: -
         | 
| 19774 19958 | 
             
                    # LINK_TYPE_ETHERNET_10G_LR: A 10G Ethernet with LR optics -
         | 
| 19775 | 
            -
                    # LINK_TYPE_ETHERNET_100G_LR: A 100G Ethernet with LR optics.  | 
| 19959 | 
            +
                    # LINK_TYPE_ETHERNET_100G_LR: A 100G Ethernet with LR optics. -
         | 
| 19960 | 
            +
                    # LINK_TYPE_ETHERNET_400G_LR4: A 400G Ethernet with LR4 optics. Note that this
         | 
| 19776 19961 | 
             
                    # field indicates the speed of each of the links in the bundle, not the speed of
         | 
| 19777 19962 | 
             
                    # the entire bundle.
         | 
| 19778 19963 | 
             
                    # Corresponds to the JSON property `linkType`
         | 
| @@ -21166,7 +21351,7 @@ module Google | |
| 21166 21351 |  | 
| 21167 21352 | 
             
                    # [Output only] List of link types available at this InterconnectLocation, which
         | 
| 21168 21353 | 
             
                    # can take one of the following values: - LINK_TYPE_ETHERNET_10G_LR -
         | 
| 21169 | 
            -
                    # LINK_TYPE_ETHERNET_100G_LR
         | 
| 21354 | 
            +
                    # LINK_TYPE_ETHERNET_100G_LR - LINK_TYPE_ETHERNET_400G_LR4
         | 
| 21170 21355 | 
             
                    # Corresponds to the JSON property `availableLinkTypes`
         | 
| 21171 21356 | 
             
                    # @return [Array<String>]
         | 
| 21172 21357 | 
             
                    attr_accessor :available_link_types
         | 
| @@ -22579,6 +22764,23 @@ module Google | |
| 22579 22764 | 
             
                    # @return [String]
         | 
| 22580 22765 | 
             
                    attr_accessor :kind
         | 
| 22581 22766 |  | 
| 22767 | 
            +
                    # A fingerprint for the labels being applied to this machine image, which is
         | 
| 22768 | 
            +
                    # essentially a hash of the labels set used for optimistic locking. The
         | 
| 22769 | 
            +
                    # fingerprint is initially generated by Compute Engine and changes after every
         | 
| 22770 | 
            +
                    # request to modify or update labels. You must always provide an up-to-date
         | 
| 22771 | 
            +
                    # fingerprint hash in order to update or change labels. To see the latest
         | 
| 22772 | 
            +
                    # fingerprint, make get() request to the machine image.
         | 
| 22773 | 
            +
                    # Corresponds to the JSON property `labelFingerprint`
         | 
| 22774 | 
            +
                    # NOTE: Values are automatically base64 encoded/decoded in the client library.
         | 
| 22775 | 
            +
                    # @return [String]
         | 
| 22776 | 
            +
                    attr_accessor :label_fingerprint
         | 
| 22777 | 
            +
                  
         | 
| 22778 | 
            +
                    # Labels to apply to this machine image. These can be later modified by the
         | 
| 22779 | 
            +
                    # setLabels method.
         | 
| 22780 | 
            +
                    # Corresponds to the JSON property `labels`
         | 
| 22781 | 
            +
                    # @return [Hash<String,String>]
         | 
| 22782 | 
            +
                    attr_accessor :labels
         | 
| 22783 | 
            +
                  
         | 
| 22582 22784 | 
             
                    # Encrypts the machine image using a customer-supplied encryption key. After you
         | 
| 22583 22785 | 
             
                    # encrypt a machine image using a customer-supplied key, you must provide the
         | 
| 22584 22786 | 
             
                    # same key if you use the machine image later. For example, you must provide the
         | 
| @@ -22675,6 +22877,8 @@ module Google | |
| 22675 22877 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 22676 22878 | 
             
                      @instance_properties = args[:instance_properties] if args.key?(:instance_properties)
         | 
| 22677 22879 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 22880 | 
            +
                      @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
         | 
| 22881 | 
            +
                      @labels = args[:labels] if args.key?(:labels)
         | 
| 22678 22882 | 
             
                      @machine_image_encryption_key = args[:machine_image_encryption_key] if args.key?(:machine_image_encryption_key)
         | 
| 22679 22883 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 22680 22884 | 
             
                      @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
         | 
| @@ -26231,7 +26435,7 @@ module Google | |
| 26231 26435 | 
             
                    # @return [String]
         | 
| 26232 26436 | 
             
                    attr_accessor :network
         | 
| 26233 26437 |  | 
| 26234 | 
            -
                    # Maximum Transmission Unit in bytes.
         | 
| 26438 | 
            +
                    # [Output Only] Maximum Transmission Unit in bytes of the peer network.
         | 
| 26235 26439 | 
             
                    # Corresponds to the JSON property `peerMtu`
         | 
| 26236 26440 | 
             
                    # @return [Fixnum]
         | 
| 26237 26441 | 
             
                    attr_accessor :peer_mtu
         | 
| @@ -26422,6 +26626,11 @@ module Google | |
| 26422 26626 | 
             
                    # @return [String]
         | 
| 26423 26627 | 
             
                    attr_accessor :allow_cloud_router
         | 
| 26424 26628 |  | 
| 26629 | 
            +
                    # Specifies whether default NIC attachment is allowed.
         | 
| 26630 | 
            +
                    # Corresponds to the JSON property `allowDefaultNicAttachment`
         | 
| 26631 | 
            +
                    # @return [String]
         | 
| 26632 | 
            +
                    attr_accessor :allow_default_nic_attachment
         | 
| 26633 | 
            +
                  
         | 
| 26425 26634 | 
             
                    # Specifies whether VMs are allowed to have external IP access on network
         | 
| 26426 26635 | 
             
                    # interfaces connected to this VPC.
         | 
| 26427 26636 | 
             
                    # Corresponds to the JSON property `allowExternalIpAccess`
         | 
| @@ -26433,6 +26642,11 @@ module Google | |
| 26433 26642 | 
             
                    # @return [String]
         | 
| 26434 26643 | 
             
                    attr_accessor :allow_interconnect
         | 
| 26435 26644 |  | 
| 26645 | 
            +
                    # Specifies whether IP forwarding is allowed.
         | 
| 26646 | 
            +
                    # Corresponds to the JSON property `allowIpForwarding`
         | 
| 26647 | 
            +
                    # @return [String]
         | 
| 26648 | 
            +
                    attr_accessor :allow_ip_forwarding
         | 
| 26649 | 
            +
                  
         | 
| 26436 26650 | 
             
                    # Specifies whether cloud load balancing is allowed.
         | 
| 26437 26651 | 
             
                    # Corresponds to the JSON property `allowLoadBalancing`
         | 
| 26438 26652 | 
             
                    # @return [String]
         | 
| @@ -26443,6 +26657,16 @@ module Google | |
| 26443 26657 | 
             
                    # @return [String]
         | 
| 26444 26658 | 
             
                    attr_accessor :allow_multi_nic_in_same_network
         | 
| 26445 26659 |  | 
| 26660 | 
            +
                    # Specifies whether NCC is allowed.
         | 
| 26661 | 
            +
                    # Corresponds to the JSON property `allowNcc`
         | 
| 26662 | 
            +
                    # @return [String]
         | 
| 26663 | 
            +
                    attr_accessor :allow_ncc
         | 
| 26664 | 
            +
                  
         | 
| 26665 | 
            +
                    # Specifies whether VM network migration is allowed.
         | 
| 26666 | 
            +
                    # Corresponds to the JSON property `allowNetworkMigration`
         | 
| 26667 | 
            +
                    # @return [String]
         | 
| 26668 | 
            +
                    attr_accessor :allow_network_migration
         | 
| 26669 | 
            +
                  
         | 
| 26446 26670 | 
             
                    # Specifies whether Packet Mirroring 1.0 is supported.
         | 
| 26447 26671 | 
             
                    # Corresponds to the JSON property `allowPacketMirroring`
         | 
| 26448 26672 | 
             
                    # @return [String]
         | 
| @@ -26499,6 +26723,16 @@ module Google | |
| 26499 26723 | 
             
                    # @return [Array<String>]
         | 
| 26500 26724 | 
             
                    attr_accessor :subnet_stack_types
         | 
| 26501 26725 |  | 
| 26726 | 
            +
                    # Specifies which subnetwork purposes are supported.
         | 
| 26727 | 
            +
                    # Corresponds to the JSON property `subnetworkPurposes`
         | 
| 26728 | 
            +
                    # @return [Array<String>]
         | 
| 26729 | 
            +
                    attr_accessor :subnetwork_purposes
         | 
| 26730 | 
            +
                  
         | 
| 26731 | 
            +
                    # Specifies which subnetwork stack types are supported.
         | 
| 26732 | 
            +
                    # Corresponds to the JSON property `subnetworkStackTypes`
         | 
| 26733 | 
            +
                    # @return [Array<String>]
         | 
| 26734 | 
            +
                    attr_accessor :subnetwork_stack_types
         | 
| 26735 | 
            +
                  
         | 
| 26502 26736 | 
             
                    # Specifies which type of unicast is supported.
         | 
| 26503 26737 | 
             
                    # Corresponds to the JSON property `unicast`
         | 
| 26504 26738 | 
             
                    # @return [String]
         | 
| @@ -26516,10 +26750,14 @@ module Google | |
| 26516 26750 | 
             
                      @allow_class_d_firewalls = args[:allow_class_d_firewalls] if args.key?(:allow_class_d_firewalls)
         | 
| 26517 26751 | 
             
                      @allow_cloud_nat = args[:allow_cloud_nat] if args.key?(:allow_cloud_nat)
         | 
| 26518 26752 | 
             
                      @allow_cloud_router = args[:allow_cloud_router] if args.key?(:allow_cloud_router)
         | 
| 26753 | 
            +
                      @allow_default_nic_attachment = args[:allow_default_nic_attachment] if args.key?(:allow_default_nic_attachment)
         | 
| 26519 26754 | 
             
                      @allow_external_ip_access = args[:allow_external_ip_access] if args.key?(:allow_external_ip_access)
         | 
| 26520 26755 | 
             
                      @allow_interconnect = args[:allow_interconnect] if args.key?(:allow_interconnect)
         | 
| 26756 | 
            +
                      @allow_ip_forwarding = args[:allow_ip_forwarding] if args.key?(:allow_ip_forwarding)
         | 
| 26521 26757 | 
             
                      @allow_load_balancing = args[:allow_load_balancing] if args.key?(:allow_load_balancing)
         | 
| 26522 26758 | 
             
                      @allow_multi_nic_in_same_network = args[:allow_multi_nic_in_same_network] if args.key?(:allow_multi_nic_in_same_network)
         | 
| 26759 | 
            +
                      @allow_ncc = args[:allow_ncc] if args.key?(:allow_ncc)
         | 
| 26760 | 
            +
                      @allow_network_migration = args[:allow_network_migration] if args.key?(:allow_network_migration)
         | 
| 26523 26761 | 
             
                      @allow_packet_mirroring = args[:allow_packet_mirroring] if args.key?(:allow_packet_mirroring)
         | 
| 26524 26762 | 
             
                      @allow_private_google_access = args[:allow_private_google_access] if args.key?(:allow_private_google_access)
         | 
| 26525 26763 | 
             
                      @allow_psc = args[:allow_psc] if args.key?(:allow_psc)
         | 
| @@ -26531,6 +26769,8 @@ module Google | |
| 26531 26769 | 
             
                      @interface_types = args[:interface_types] if args.key?(:interface_types)
         | 
| 26532 26770 | 
             
                      @subnet_purposes = args[:subnet_purposes] if args.key?(:subnet_purposes)
         | 
| 26533 26771 | 
             
                      @subnet_stack_types = args[:subnet_stack_types] if args.key?(:subnet_stack_types)
         | 
| 26772 | 
            +
                      @subnetwork_purposes = args[:subnetwork_purposes] if args.key?(:subnetwork_purposes)
         | 
| 26773 | 
            +
                      @subnetwork_stack_types = args[:subnetwork_stack_types] if args.key?(:subnetwork_stack_types)
         | 
| 26534 26774 | 
             
                      @unicast = args[:unicast] if args.key?(:unicast)
         | 
| 26535 26775 | 
             
                    end
         | 
| 26536 26776 | 
             
                  end
         | 
| @@ -33929,6 +34169,11 @@ module Google | |
| 33929 34169 | 
             
                    # @return [String]
         | 
| 33930 34170 | 
             
                    attr_accessor :creation_timestamp
         | 
| 33931 34171 |  | 
| 34172 | 
            +
                    # Specifies the deployment strategy for this reservation.
         | 
| 34173 | 
            +
                    # Corresponds to the JSON property `deploymentType`
         | 
| 34174 | 
            +
                    # @return [String]
         | 
| 34175 | 
            +
                    attr_accessor :deployment_type
         | 
| 34176 | 
            +
                  
         | 
| 33932 34177 | 
             
                    # An optional description of this resource. Provide this property when you
         | 
| 33933 34178 | 
             
                    # create the resource.
         | 
| 33934 34179 | 
             
                    # Corresponds to the JSON property `description`
         | 
| @@ -33947,6 +34192,12 @@ module Google | |
| 33947 34192 | 
             
                    # @return [String]
         | 
| 33948 34193 | 
             
                    attr_accessor :kind
         | 
| 33949 34194 |  | 
| 34195 | 
            +
                    # [Output Only] Full or partial URL to parent commitments. This field displays
         | 
| 34196 | 
            +
                    # for reservations that are tied to multiple commitments.
         | 
| 34197 | 
            +
                    # Corresponds to the JSON property `linkedCommitments`
         | 
| 34198 | 
            +
                    # @return [Array<String>]
         | 
| 34199 | 
            +
                    attr_accessor :linked_commitments
         | 
| 34200 | 
            +
                  
         | 
| 33950 34201 | 
             
                    # The name of the resource, provided by the client when initially creating the
         | 
| 33951 34202 | 
             
                    # resource. The resource name must be 1-63 characters long, and comply with
         | 
| 33952 34203 | 
             
                    # RFC1035. Specifically, the name must be 1-63 characters long and match the
         | 
| @@ -34028,9 +34279,11 @@ module Google | |
| 34028 34279 | 
             
                      @aggregate_reservation = args[:aggregate_reservation] if args.key?(:aggregate_reservation)
         | 
| 34029 34280 | 
             
                      @commitment = args[:commitment] if args.key?(:commitment)
         | 
| 34030 34281 | 
             
                      @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
         | 
| 34282 | 
            +
                      @deployment_type = args[:deployment_type] if args.key?(:deployment_type)
         | 
| 34031 34283 | 
             
                      @description = args[:description] if args.key?(:description)
         | 
| 34032 34284 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 34033 34285 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 34286 | 
            +
                      @linked_commitments = args[:linked_commitments] if args.key?(:linked_commitments)
         | 
| 34034 34287 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 34035 34288 | 
             
                      @reservation_sharing_policy = args[:reservation_sharing_policy] if args.key?(:reservation_sharing_policy)
         | 
| 34036 34289 | 
             
                      @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
         | 
| @@ -34206,6 +34459,259 @@ module Google | |
| 34206 34459 | 
             
                    end
         | 
| 34207 34460 | 
             
                  end
         | 
| 34208 34461 |  | 
| 34462 | 
            +
                  # Represents a reservation block resource.
         | 
| 34463 | 
            +
                  class ReservationBlock
         | 
| 34464 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 34465 | 
            +
                  
         | 
| 34466 | 
            +
                    # [Output Only] The number of resources that are allocated in this reservation
         | 
| 34467 | 
            +
                    # block.
         | 
| 34468 | 
            +
                    # Corresponds to the JSON property `count`
         | 
| 34469 | 
            +
                    # @return [Fixnum]
         | 
| 34470 | 
            +
                    attr_accessor :count
         | 
| 34471 | 
            +
                  
         | 
| 34472 | 
            +
                    # [Output Only] Creation timestamp in RFC3339 text format.
         | 
| 34473 | 
            +
                    # Corresponds to the JSON property `creationTimestamp`
         | 
| 34474 | 
            +
                    # @return [String]
         | 
| 34475 | 
            +
                    attr_accessor :creation_timestamp
         | 
| 34476 | 
            +
                  
         | 
| 34477 | 
            +
                    # [Output Only] The unique identifier for the resource. This identifier is
         | 
| 34478 | 
            +
                    # defined by the server.
         | 
| 34479 | 
            +
                    # Corresponds to the JSON property `id`
         | 
| 34480 | 
            +
                    # @return [Fixnum]
         | 
| 34481 | 
            +
                    attr_accessor :id
         | 
| 34482 | 
            +
                  
         | 
| 34483 | 
            +
                    # [Output Only] The number of instances that are currently in use on this
         | 
| 34484 | 
            +
                    # reservation block.
         | 
| 34485 | 
            +
                    # Corresponds to the JSON property `inUseCount`
         | 
| 34486 | 
            +
                    # @return [Fixnum]
         | 
| 34487 | 
            +
                    attr_accessor :in_use_count
         | 
| 34488 | 
            +
                  
         | 
| 34489 | 
            +
                    # [Output Only] Type of the resource. Always compute#reservationBlock for
         | 
| 34490 | 
            +
                    # reservation blocks.
         | 
| 34491 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 34492 | 
            +
                    # @return [String]
         | 
| 34493 | 
            +
                    attr_accessor :kind
         | 
| 34494 | 
            +
                  
         | 
| 34495 | 
            +
                    # [Output Only] The name of this reservation block generated by Google Compute
         | 
| 34496 | 
            +
                    # Engine. The name must be 1-63 characters long, and comply with RFC1035 @
         | 
| 34497 | 
            +
                    # pattern [a-z](?:[-a-z0-9]`0,61`[a-z0-9])?
         | 
| 34498 | 
            +
                    # Corresponds to the JSON property `name`
         | 
| 34499 | 
            +
                    # @return [String]
         | 
| 34500 | 
            +
                    attr_accessor :name
         | 
| 34501 | 
            +
                  
         | 
| 34502 | 
            +
                    # [Output Only] The physical topology of the reservation block.
         | 
| 34503 | 
            +
                    # Corresponds to the JSON property `physicalTopology`
         | 
| 34504 | 
            +
                    # @return [Google::Apis::ComputeV1::ReservationBlockPhysicalTopology]
         | 
| 34505 | 
            +
                    attr_accessor :physical_topology
         | 
| 34506 | 
            +
                  
         | 
| 34507 | 
            +
                    # Maintenance Info for ReservationBlocks.
         | 
| 34508 | 
            +
                    # Corresponds to the JSON property `reservationMaintenance`
         | 
| 34509 | 
            +
                    # @return [Google::Apis::ComputeV1::GroupMaintenanceInfo]
         | 
| 34510 | 
            +
                    attr_accessor :reservation_maintenance
         | 
| 34511 | 
            +
                  
         | 
| 34512 | 
            +
                    # [Output Only] Server-defined fully-qualified URL for this resource.
         | 
| 34513 | 
            +
                    # Corresponds to the JSON property `selfLink`
         | 
| 34514 | 
            +
                    # @return [String]
         | 
| 34515 | 
            +
                    attr_accessor :self_link
         | 
| 34516 | 
            +
                  
         | 
| 34517 | 
            +
                    # [Output Only] Server-defined URL for this resource with the resource id.
         | 
| 34518 | 
            +
                    # Corresponds to the JSON property `selfLinkWithId`
         | 
| 34519 | 
            +
                    # @return [String]
         | 
| 34520 | 
            +
                    attr_accessor :self_link_with_id
         | 
| 34521 | 
            +
                  
         | 
| 34522 | 
            +
                    # [Output Only] Status of the reservation block.
         | 
| 34523 | 
            +
                    # Corresponds to the JSON property `status`
         | 
| 34524 | 
            +
                    # @return [String]
         | 
| 34525 | 
            +
                    attr_accessor :status
         | 
| 34526 | 
            +
                  
         | 
| 34527 | 
            +
                    # [Output Only] Zone in which the reservation block resides.
         | 
| 34528 | 
            +
                    # Corresponds to the JSON property `zone`
         | 
| 34529 | 
            +
                    # @return [String]
         | 
| 34530 | 
            +
                    attr_accessor :zone
         | 
| 34531 | 
            +
                  
         | 
| 34532 | 
            +
                    def initialize(**args)
         | 
| 34533 | 
            +
                       update!(**args)
         | 
| 34534 | 
            +
                    end
         | 
| 34535 | 
            +
                  
         | 
| 34536 | 
            +
                    # Update properties of this object
         | 
| 34537 | 
            +
                    def update!(**args)
         | 
| 34538 | 
            +
                      @count = args[:count] if args.key?(:count)
         | 
| 34539 | 
            +
                      @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
         | 
| 34540 | 
            +
                      @id = args[:id] if args.key?(:id)
         | 
| 34541 | 
            +
                      @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
         | 
| 34542 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 34543 | 
            +
                      @name = args[:name] if args.key?(:name)
         | 
| 34544 | 
            +
                      @physical_topology = args[:physical_topology] if args.key?(:physical_topology)
         | 
| 34545 | 
            +
                      @reservation_maintenance = args[:reservation_maintenance] if args.key?(:reservation_maintenance)
         | 
| 34546 | 
            +
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 34547 | 
            +
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 34548 | 
            +
                      @status = args[:status] if args.key?(:status)
         | 
| 34549 | 
            +
                      @zone = args[:zone] if args.key?(:zone)
         | 
| 34550 | 
            +
                    end
         | 
| 34551 | 
            +
                  end
         | 
| 34552 | 
            +
                  
         | 
| 34553 | 
            +
                  # 
         | 
| 34554 | 
            +
                  class ReservationBlockPhysicalTopology
         | 
| 34555 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 34556 | 
            +
                  
         | 
| 34557 | 
            +
                    # The hash of the capacity block within the cluster.
         | 
| 34558 | 
            +
                    # Corresponds to the JSON property `block`
         | 
| 34559 | 
            +
                    # @return [String]
         | 
| 34560 | 
            +
                    attr_accessor :block
         | 
| 34561 | 
            +
                  
         | 
| 34562 | 
            +
                    # The cluster name of the reservation block.
         | 
| 34563 | 
            +
                    # Corresponds to the JSON property `cluster`
         | 
| 34564 | 
            +
                    # @return [String]
         | 
| 34565 | 
            +
                    attr_accessor :cluster
         | 
| 34566 | 
            +
                  
         | 
| 34567 | 
            +
                    def initialize(**args)
         | 
| 34568 | 
            +
                       update!(**args)
         | 
| 34569 | 
            +
                    end
         | 
| 34570 | 
            +
                  
         | 
| 34571 | 
            +
                    # Update properties of this object
         | 
| 34572 | 
            +
                    def update!(**args)
         | 
| 34573 | 
            +
                      @block = args[:block] if args.key?(:block)
         | 
| 34574 | 
            +
                      @cluster = args[:cluster] if args.key?(:cluster)
         | 
| 34575 | 
            +
                    end
         | 
| 34576 | 
            +
                  end
         | 
| 34577 | 
            +
                  
         | 
| 34578 | 
            +
                  # 
         | 
| 34579 | 
            +
                  class ReservationBlocksGetResponse
         | 
| 34580 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 34581 | 
            +
                  
         | 
| 34582 | 
            +
                    # Represents a reservation block resource.
         | 
| 34583 | 
            +
                    # Corresponds to the JSON property `resource`
         | 
| 34584 | 
            +
                    # @return [Google::Apis::ComputeV1::ReservationBlock]
         | 
| 34585 | 
            +
                    attr_accessor :resource
         | 
| 34586 | 
            +
                  
         | 
| 34587 | 
            +
                    def initialize(**args)
         | 
| 34588 | 
            +
                       update!(**args)
         | 
| 34589 | 
            +
                    end
         | 
| 34590 | 
            +
                  
         | 
| 34591 | 
            +
                    # Update properties of this object
         | 
| 34592 | 
            +
                    def update!(**args)
         | 
| 34593 | 
            +
                      @resource = args[:resource] if args.key?(:resource)
         | 
| 34594 | 
            +
                    end
         | 
| 34595 | 
            +
                  end
         | 
| 34596 | 
            +
                  
         | 
| 34597 | 
            +
                  # A list of reservation blocks under a single reservation.
         | 
| 34598 | 
            +
                  class ReservationBlocksListResponse
         | 
| 34599 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 34600 | 
            +
                  
         | 
| 34601 | 
            +
                    # Unique identifier for the resource; defined by the server.
         | 
| 34602 | 
            +
                    # Corresponds to the JSON property `id`
         | 
| 34603 | 
            +
                    # @return [String]
         | 
| 34604 | 
            +
                    attr_accessor :id
         | 
| 34605 | 
            +
                  
         | 
| 34606 | 
            +
                    # A list of reservation block resources.
         | 
| 34607 | 
            +
                    # Corresponds to the JSON property `items`
         | 
| 34608 | 
            +
                    # @return [Array<Google::Apis::ComputeV1::ReservationBlock>]
         | 
| 34609 | 
            +
                    attr_accessor :items
         | 
| 34610 | 
            +
                  
         | 
| 34611 | 
            +
                    # Type of the resource. Always compute#reservationBlock for a list of
         | 
| 34612 | 
            +
                    # reservation blocks.
         | 
| 34613 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 34614 | 
            +
                    # @return [String]
         | 
| 34615 | 
            +
                    attr_accessor :kind
         | 
| 34616 | 
            +
                  
         | 
| 34617 | 
            +
                    # This token allows you to get the next page of results for list requests. If
         | 
| 34618 | 
            +
                    # the number of results is larger than maxResults, use the nextPageToken as a
         | 
| 34619 | 
            +
                    # value for the query parameter pageToken in the next list request. Subsequent
         | 
| 34620 | 
            +
                    # list requests will have their own nextPageToken to continue paging through the
         | 
| 34621 | 
            +
                    # results.
         | 
| 34622 | 
            +
                    # Corresponds to the JSON property `nextPageToken`
         | 
| 34623 | 
            +
                    # @return [String]
         | 
| 34624 | 
            +
                    attr_accessor :next_page_token
         | 
| 34625 | 
            +
                  
         | 
| 34626 | 
            +
                    # Server-defined URL for this resource.
         | 
| 34627 | 
            +
                    # Corresponds to the JSON property `selfLink`
         | 
| 34628 | 
            +
                    # @return [String]
         | 
| 34629 | 
            +
                    attr_accessor :self_link
         | 
| 34630 | 
            +
                  
         | 
| 34631 | 
            +
                    # Informational warning message.
         | 
| 34632 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 34633 | 
            +
                    # @return [Google::Apis::ComputeV1::ReservationBlocksListResponse::Warning]
         | 
| 34634 | 
            +
                    attr_accessor :warning
         | 
| 34635 | 
            +
                  
         | 
| 34636 | 
            +
                    def initialize(**args)
         | 
| 34637 | 
            +
                       update!(**args)
         | 
| 34638 | 
            +
                    end
         | 
| 34639 | 
            +
                  
         | 
| 34640 | 
            +
                    # Update properties of this object
         | 
| 34641 | 
            +
                    def update!(**args)
         | 
| 34642 | 
            +
                      @id = args[:id] if args.key?(:id)
         | 
| 34643 | 
            +
                      @items = args[:items] if args.key?(:items)
         | 
| 34644 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 34645 | 
            +
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 34646 | 
            +
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 34647 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 34648 | 
            +
                    end
         | 
| 34649 | 
            +
                    
         | 
| 34650 | 
            +
                    # Informational warning message.
         | 
| 34651 | 
            +
                    class Warning
         | 
| 34652 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 34653 | 
            +
                    
         | 
| 34654 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 34655 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 34656 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 34657 | 
            +
                      # @return [String]
         | 
| 34658 | 
            +
                      attr_accessor :code
         | 
| 34659 | 
            +
                    
         | 
| 34660 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example: "
         | 
| 34661 | 
            +
                      # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 34662 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 34663 | 
            +
                      # @return [Array<Google::Apis::ComputeV1::ReservationBlocksListResponse::Warning::Datum>]
         | 
| 34664 | 
            +
                      attr_accessor :data
         | 
| 34665 | 
            +
                    
         | 
| 34666 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 34667 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 34668 | 
            +
                      # @return [String]
         | 
| 34669 | 
            +
                      attr_accessor :message
         | 
| 34670 | 
            +
                    
         | 
| 34671 | 
            +
                      def initialize(**args)
         | 
| 34672 | 
            +
                         update!(**args)
         | 
| 34673 | 
            +
                      end
         | 
| 34674 | 
            +
                    
         | 
| 34675 | 
            +
                      # Update properties of this object
         | 
| 34676 | 
            +
                      def update!(**args)
         | 
| 34677 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 34678 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 34679 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 34680 | 
            +
                      end
         | 
| 34681 | 
            +
                      
         | 
| 34682 | 
            +
                      # 
         | 
| 34683 | 
            +
                      class Datum
         | 
| 34684 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 34685 | 
            +
                      
         | 
| 34686 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 34687 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 34688 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 34689 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 34690 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 34691 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 34692 | 
            +
                        # for IP forwarding).
         | 
| 34693 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 34694 | 
            +
                        # @return [String]
         | 
| 34695 | 
            +
                        attr_accessor :key
         | 
| 34696 | 
            +
                      
         | 
| 34697 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 34698 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 34699 | 
            +
                        # @return [String]
         | 
| 34700 | 
            +
                        attr_accessor :value
         | 
| 34701 | 
            +
                      
         | 
| 34702 | 
            +
                        def initialize(**args)
         | 
| 34703 | 
            +
                           update!(**args)
         | 
| 34704 | 
            +
                        end
         | 
| 34705 | 
            +
                      
         | 
| 34706 | 
            +
                        # Update properties of this object
         | 
| 34707 | 
            +
                        def update!(**args)
         | 
| 34708 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 34709 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 34710 | 
            +
                        end
         | 
| 34711 | 
            +
                      end
         | 
| 34712 | 
            +
                    end
         | 
| 34713 | 
            +
                  end
         | 
| 34714 | 
            +
                  
         | 
| 34209 34715 | 
             
                  # 
         | 
| 34210 34716 | 
             
                  class ReservationList
         | 
| 34211 34717 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -34325,6 +34831,44 @@ module Google | |
| 34325 34831 | 
             
                    end
         | 
| 34326 34832 | 
             
                  end
         | 
| 34327 34833 |  | 
| 34834 | 
            +
                  # 
         | 
| 34835 | 
            +
                  class ReservationsBlocksPerformMaintenanceRequest
         | 
| 34836 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 34837 | 
            +
                  
         | 
| 34838 | 
            +
                    # Specifies if all, running or unused hosts are in scope for this request.
         | 
| 34839 | 
            +
                    # Corresponds to the JSON property `maintenanceScope`
         | 
| 34840 | 
            +
                    # @return [String]
         | 
| 34841 | 
            +
                    attr_accessor :maintenance_scope
         | 
| 34842 | 
            +
                  
         | 
| 34843 | 
            +
                    def initialize(**args)
         | 
| 34844 | 
            +
                       update!(**args)
         | 
| 34845 | 
            +
                    end
         | 
| 34846 | 
            +
                  
         | 
| 34847 | 
            +
                    # Update properties of this object
         | 
| 34848 | 
            +
                    def update!(**args)
         | 
| 34849 | 
            +
                      @maintenance_scope = args[:maintenance_scope] if args.key?(:maintenance_scope)
         | 
| 34850 | 
            +
                    end
         | 
| 34851 | 
            +
                  end
         | 
| 34852 | 
            +
                  
         | 
| 34853 | 
            +
                  # 
         | 
| 34854 | 
            +
                  class ReservationsPerformMaintenanceRequest
         | 
| 34855 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 34856 | 
            +
                  
         | 
| 34857 | 
            +
                    # Specifies if all, running or unused hosts are in scope for this request.
         | 
| 34858 | 
            +
                    # Corresponds to the JSON property `maintenanceScope`
         | 
| 34859 | 
            +
                    # @return [String]
         | 
| 34860 | 
            +
                    attr_accessor :maintenance_scope
         | 
| 34861 | 
            +
                  
         | 
| 34862 | 
            +
                    def initialize(**args)
         | 
| 34863 | 
            +
                       update!(**args)
         | 
| 34864 | 
            +
                    end
         | 
| 34865 | 
            +
                  
         | 
| 34866 | 
            +
                    # Update properties of this object
         | 
| 34867 | 
            +
                    def update!(**args)
         | 
| 34868 | 
            +
                      @maintenance_scope = args[:maintenance_scope] if args.key?(:maintenance_scope)
         | 
| 34869 | 
            +
                    end
         | 
| 34870 | 
            +
                  end
         | 
| 34871 | 
            +
                  
         | 
| 34328 34872 | 
             
                  # 
         | 
| 34329 34873 | 
             
                  class ReservationsResizeRequest
         | 
| 34330 34874 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -36918,6 +37462,13 @@ module Google | |
| 36918 37462 | 
             
                    # @return [String]
         | 
| 36919 37463 | 
             
                    attr_accessor :name
         | 
| 36920 37464 |  | 
| 37465 | 
            +
                    # List of Subnetwork resources whose traffic should be translated by NAT64
         | 
| 37466 | 
            +
                    # Gateway. It is used only when LIST_OF_IPV6_SUBNETWORKS is selected for the
         | 
| 37467 | 
            +
                    # SubnetworkIpRangeToNat64Option above.
         | 
| 37468 | 
            +
                    # Corresponds to the JSON property `nat64Subnetworks`
         | 
| 37469 | 
            +
                    # @return [Array<Google::Apis::ComputeV1::RouterNatSubnetworkToNat64>]
         | 
| 37470 | 
            +
                    attr_accessor :nat64_subnetworks
         | 
| 37471 | 
            +
                  
         | 
| 36921 37472 | 
             
                    # Specify the NatIpAllocateOption, which can take one of the following values: -
         | 
| 36922 37473 | 
             
                    # MANUAL_ONLY: Uses only Nat IP addresses provided by customers. When there are
         | 
| 36923 37474 | 
             
                    # not enough specified Nat IPs, the Nat service fails for new VMs. - AUTO_ONLY:
         | 
| @@ -36950,6 +37501,18 @@ module Google | |
| 36950 37501 | 
             
                    # @return [String]
         | 
| 36951 37502 | 
             
                    attr_accessor :source_subnetwork_ip_ranges_to_nat
         | 
| 36952 37503 |  | 
| 37504 | 
            +
                    # Specify the Nat option for NAT64, which can take one of the following values: -
         | 
| 37505 | 
            +
                    # ALL_IPV6_SUBNETWORKS: All of the IP ranges in every Subnetwork are allowed to
         | 
| 37506 | 
            +
                    # Nat. - LIST_OF_IPV6_SUBNETWORKS: A list of Subnetworks are allowed to Nat (
         | 
| 37507 | 
            +
                    # specified in the field nat64_subnetwork below) The default is
         | 
| 37508 | 
            +
                    # NAT64_OPTION_UNSPECIFIED. Note that if this field contains
         | 
| 37509 | 
            +
                    # NAT64_ALL_V6_SUBNETWORKS no other Router.Nat section in this region can also
         | 
| 37510 | 
            +
                    # enable NAT64 for any Subnetworks in this network. Other Router.Nat sections
         | 
| 37511 | 
            +
                    # can still be present to enable NAT44 only.
         | 
| 37512 | 
            +
                    # Corresponds to the JSON property `sourceSubnetworkIpRangesToNat64`
         | 
| 37513 | 
            +
                    # @return [String]
         | 
| 37514 | 
            +
                    attr_accessor :source_subnetwork_ip_ranges_to_nat64
         | 
| 37515 | 
            +
                  
         | 
| 36953 37516 | 
             
                    # A list of Subnetwork resources whose traffic should be translated by NAT
         | 
| 36954 37517 | 
             
                    # Gateway. It is used only when LIST_OF_SUBNETWORKS is selected for the
         | 
| 36955 37518 | 
             
                    # SubnetworkIpRangeToNatOption above.
         | 
| @@ -37002,10 +37565,12 @@ module Google | |
| 37002 37565 | 
             
                      @max_ports_per_vm = args[:max_ports_per_vm] if args.key?(:max_ports_per_vm)
         | 
| 37003 37566 | 
             
                      @min_ports_per_vm = args[:min_ports_per_vm] if args.key?(:min_ports_per_vm)
         | 
| 37004 37567 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 37568 | 
            +
                      @nat64_subnetworks = args[:nat64_subnetworks] if args.key?(:nat64_subnetworks)
         | 
| 37005 37569 | 
             
                      @nat_ip_allocate_option = args[:nat_ip_allocate_option] if args.key?(:nat_ip_allocate_option)
         | 
| 37006 37570 | 
             
                      @nat_ips = args[:nat_ips] if args.key?(:nat_ips)
         | 
| 37007 37571 | 
             
                      @rules = args[:rules] if args.key?(:rules)
         | 
| 37008 37572 | 
             
                      @source_subnetwork_ip_ranges_to_nat = args[:source_subnetwork_ip_ranges_to_nat] if args.key?(:source_subnetwork_ip_ranges_to_nat)
         | 
| 37573 | 
            +
                      @source_subnetwork_ip_ranges_to_nat64 = args[:source_subnetwork_ip_ranges_to_nat64] if args.key?(:source_subnetwork_ip_ranges_to_nat64)
         | 
| 37009 37574 | 
             
                      @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
         | 
| 37010 37575 | 
             
                      @tcp_established_idle_timeout_sec = args[:tcp_established_idle_timeout_sec] if args.key?(:tcp_established_idle_timeout_sec)
         | 
| 37011 37576 | 
             
                      @tcp_time_wait_timeout_sec = args[:tcp_time_wait_timeout_sec] if args.key?(:tcp_time_wait_timeout_sec)
         | 
| @@ -37173,6 +37738,25 @@ module Google | |
| 37173 37738 | 
             
                    end
         | 
| 37174 37739 | 
             
                  end
         | 
| 37175 37740 |  | 
| 37741 | 
            +
                  # Specifies a subnetwork to enable NAT64.
         | 
| 37742 | 
            +
                  class RouterNatSubnetworkToNat64
         | 
| 37743 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 37744 | 
            +
                  
         | 
| 37745 | 
            +
                    # URL for the subnetwork resource that will use NAT64.
         | 
| 37746 | 
            +
                    # Corresponds to the JSON property `name`
         | 
| 37747 | 
            +
                    # @return [String]
         | 
| 37748 | 
            +
                    attr_accessor :name
         | 
| 37749 | 
            +
                  
         | 
| 37750 | 
            +
                    def initialize(**args)
         | 
| 37751 | 
            +
                       update!(**args)
         | 
| 37752 | 
            +
                    end
         | 
| 37753 | 
            +
                  
         | 
| 37754 | 
            +
                    # Update properties of this object
         | 
| 37755 | 
            +
                    def update!(**args)
         | 
| 37756 | 
            +
                      @name = args[:name] if args.key?(:name)
         | 
| 37757 | 
            +
                    end
         | 
| 37758 | 
            +
                  end
         | 
| 37759 | 
            +
                  
         | 
| 37176 37760 | 
             
                  # 
         | 
| 37177 37761 | 
             
                  class RouterStatus
         | 
| 37178 37762 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -40936,7 +41520,7 @@ module Google | |
| 40936 41520 |  | 
| 40937 41521 | 
             
                  # Represents a Persistent Disk Snapshot resource. You can use snapshots to back
         | 
| 40938 41522 | 
             
                  # up data on a regular interval. For more information, read Creating persistent
         | 
| 40939 | 
            -
                  # disk snapshots.
         | 
| 41523 | 
            +
                  # disk snapshots. LINT.IfChange
         | 
| 40940 41524 | 
             
                  class Snapshot
         | 
| 40941 41525 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 40942 41526 |  | 
| @@ -40996,6 +41580,13 @@ module Google | |
| 40996 41580 | 
             
                    attr_accessor :enable_confidential_compute
         | 
| 40997 41581 | 
             
                    alias_method :enable_confidential_compute?, :enable_confidential_compute
         | 
| 40998 41582 |  | 
| 41583 | 
            +
                    # [Input Only] Whether to attempt an application consistent snapshot by
         | 
| 41584 | 
            +
                    # informing the OS to prepare for the snapshot process.
         | 
| 41585 | 
            +
                    # Corresponds to the JSON property `guestFlush`
         | 
| 41586 | 
            +
                    # @return [Boolean]
         | 
| 41587 | 
            +
                    attr_accessor :guest_flush
         | 
| 41588 | 
            +
                    alias_method :guest_flush?, :guest_flush
         | 
| 41589 | 
            +
                  
         | 
| 40999 41590 | 
             
                    # [Output Only] A list of features to enable on the guest operating system.
         | 
| 41000 41591 | 
             
                    # Applicable only for bootable images. Read Enabling guest operating system
         | 
| 41001 41592 | 
             
                    # features to see a list of available options.
         | 
| @@ -41193,6 +41784,7 @@ module Google | |
| 41193 41784 | 
             
                      @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
         | 
| 41194 41785 | 
             
                      @download_bytes = args[:download_bytes] if args.key?(:download_bytes)
         | 
| 41195 41786 | 
             
                      @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute)
         | 
| 41787 | 
            +
                      @guest_flush = args[:guest_flush] if args.key?(:guest_flush)
         | 
| 41196 41788 | 
             
                      @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
         | 
| 41197 41789 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 41198 41790 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| @@ -44182,20 +44774,7 @@ module Google | |
| 44182 44774 | 
             
                    # @return [String]
         | 
| 44183 44775 | 
             
                    attr_accessor :private_ipv6_google_access
         | 
| 44184 44776 |  | 
| 44185 | 
            -
                    #  | 
| 44186 | 
            -
                    # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PEER_MIGRATION,
         | 
| 44187 | 
            -
                    # PRIVATE_SERVICE_CONNECT or PRIVATE_NAT. PRIVATE is the default purpose for
         | 
| 44188 | 
            -
                    # user-created subnets or subnets that are automatically created in auto mode
         | 
| 44189 | 
            -
                    # networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY or
         | 
| 44190 | 
            -
                    # REGIONAL_MANAGED_PROXY are user-created subnetworks that are reserved for
         | 
| 44191 | 
            -
                    # Envoy-based load balancers. A subnet with purpose set to
         | 
| 44192 | 
            -
                    # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
         | 
| 44193 | 
            -
                    # Connect. A subnet with purpose set to PEER_MIGRATION is used for subnet
         | 
| 44194 | 
            -
                    # migration from one peered VPC to another. A subnet with purpose set to
         | 
| 44195 | 
            -
                    # PRIVATE_NAT is used for Private NAT IP address by Private NAT Gateway. If
         | 
| 44196 | 
            -
                    # unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field
         | 
| 44197 | 
            -
                    # isn't supported if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or
         | 
| 44198 | 
            -
                    # REGIONAL_MANAGED_PROXY.
         | 
| 44777 | 
            +
                    # 
         | 
| 44199 44778 | 
             
                    # Corresponds to the JSON property `purpose`
         | 
| 44200 44779 | 
             
                    # @return [String]
         | 
| 44201 44780 | 
             
                    attr_accessor :purpose
         | 
| @@ -49325,20 +49904,7 @@ module Google | |
| 49325 49904 | 
             
                    # @return [String]
         | 
| 49326 49905 | 
             
                    attr_accessor :network
         | 
| 49327 49906 |  | 
| 49328 | 
            -
                    #  | 
| 49329 | 
            -
                    # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PEER_MIGRATION,
         | 
| 49330 | 
            -
                    # PRIVATE_SERVICE_CONNECT or PRIVATE_NAT. PRIVATE is the default purpose for
         | 
| 49331 | 
            -
                    # user-created subnets or subnets that are automatically created in auto mode
         | 
| 49332 | 
            -
                    # networks. Subnets with purpose set to GLOBAL_MANAGED_PROXY or
         | 
| 49333 | 
            -
                    # REGIONAL_MANAGED_PROXY are user-created subnetworks that are reserved for
         | 
| 49334 | 
            -
                    # Envoy-based load balancers. A subnet with purpose set to
         | 
| 49335 | 
            -
                    # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
         | 
| 49336 | 
            -
                    # Connect. A subnet with purpose set to PEER_MIGRATION is used for subnet
         | 
| 49337 | 
            -
                    # migration from one peered VPC to another. A subnet with purpose set to
         | 
| 49338 | 
            -
                    # PRIVATE_NAT is used for Private NAT IP address by Private NAT Gateway. If
         | 
| 49339 | 
            -
                    # unspecified, the subnet purpose defaults to PRIVATE. The enableFlowLogs field
         | 
| 49340 | 
            -
                    # isn't supported if the subnet purpose field is set to GLOBAL_MANAGED_PROXY or
         | 
| 49341 | 
            -
                    # REGIONAL_MANAGED_PROXY.
         | 
| 49907 | 
            +
                    # 
         | 
| 49342 49908 | 
             
                    # Corresponds to the JSON property `purpose`
         | 
| 49343 49909 | 
             
                    # @return [String]
         | 
| 49344 49910 | 
             
                    attr_accessor :purpose
         |