google-apis-compute_alpha 0.1.0 → 0.6.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 +22 -0
- data/lib/google/apis/compute_alpha/classes.rb +1740 -229
- data/lib/google/apis/compute_alpha/gem_version.rb +3 -3
- data/lib/google/apis/compute_alpha/representations.rb +602 -0
- data/lib/google/apis/compute_alpha/service.rb +1621 -406
- metadata +5 -5
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 5cba72be75fcc1cd63075bd522aa078dd0b3c051835991fafd0abd4e5de76975
         | 
| 4 | 
            +
              data.tar.gz: bcaa61e645c77fff539298388395f387338cae82fbe44b6f0bf089a4a6f9f9c2
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 32563cc9e9f6e1b5b25e6f2a3a0f384fa80ac8f6f12f04a14341fe55dda4ff34be128aeb59f8146f5cfe9ded2a74a8d3164f15bc5499524f4be2e70a514a76f2
         | 
| 7 | 
            +
              data.tar.gz: 567d8a4f33837a8a75e8327365ab28396f390dd862d301a84b3daecf5e2261b9d3fedef754147383ffa458587daeafe4d53bdbcfae0b09899e4681de250e9527
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,5 +1,27 @@ | |
| 1 1 | 
             
            # Release history for google-apis-compute_alpha
         | 
| 2 2 |  | 
| 3 | 
            +
            ### v0.6.0 (2021-03-10)
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            * Regenerated from discovery document revision 20210301
         | 
| 6 | 
            +
            * Regenerated using generator version 0.2.0
         | 
| 7 | 
            +
             | 
| 8 | 
            +
            ### v0.5.0 (2021-03-04)
         | 
| 9 | 
            +
             | 
| 10 | 
            +
            * Unspecified changes
         | 
| 11 | 
            +
             | 
| 12 | 
            +
            ### v0.4.0 (2021-02-24)
         | 
| 13 | 
            +
             | 
| 14 | 
            +
            * Regenerated from discovery document revision 20210209
         | 
| 15 | 
            +
             | 
| 16 | 
            +
            ### v0.3.0 (2021-02-16)
         | 
| 17 | 
            +
             | 
| 18 | 
            +
            * Regenerated from discovery document revision 20210129
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            ### v0.2.0 (2021-01-30)
         | 
| 21 | 
            +
             | 
| 22 | 
            +
            * Regenerated from discovery document revision 20210111
         | 
| 23 | 
            +
            * Regenerated using generator version 0.1.2
         | 
| 24 | 
            +
             | 
| 3 25 | 
             
            ### v0.1.0 (2021-01-07)
         | 
| 4 26 |  | 
| 5 27 | 
             
            * Regenerated using generator version 0.1.1
         | 
| @@ -671,7 +671,7 @@ module Google | |
| 671 671 | 
             
                    # @return [String]
         | 
| 672 672 | 
             
                    attr_accessor :network_tier
         | 
| 673 673 |  | 
| 674 | 
            -
                    # The prefix length if the resource  | 
| 674 | 
            +
                    # The prefix length if the resource represents an IP range.
         | 
| 675 675 | 
             
                    # Corresponds to the JSON property `prefixLength`
         | 
| 676 676 | 
             
                    # @return [Fixnum]
         | 
| 677 677 | 
             
                    attr_accessor :prefix_length
         | 
| @@ -684,15 +684,15 @@ module Google | |
| 684 684 | 
             
                    # - `NAT_AUTO` for addresses that are external IP addresses automatically
         | 
| 685 685 | 
             
                    # reserved for Cloud NAT.
         | 
| 686 686 | 
             
                    # - `IPSEC_INTERCONNECT` for addresses created from a private IP range that are
         | 
| 687 | 
            -
                    # reserved for a VLAN attachment in an IPsec | 
| 687 | 
            +
                    # reserved for a VLAN attachment in an IPsec-encrypted Cloud Interconnect
         | 
| 688 688 | 
             
                    # configuration. These addresses are regional resources.
         | 
| 689 689 | 
             
                    # Corresponds to the JSON property `purpose`
         | 
| 690 690 | 
             
                    # @return [String]
         | 
| 691 691 | 
             
                    attr_accessor :purpose
         | 
| 692 692 |  | 
| 693 | 
            -
                    # [Output Only] The URL of the region where  | 
| 694 | 
            -
                    #  | 
| 695 | 
            -
                    #  | 
| 693 | 
            +
                    # [Output Only] The URL of the region where a regional address resides. For
         | 
| 694 | 
            +
                    # regional addresses, you must specify the region as a path parameter in the
         | 
| 695 | 
            +
                    # HTTP request URL. This field is not applicable to global addresses.
         | 
| 696 696 | 
             
                    # Corresponds to the JSON property `region`
         | 
| 697 697 | 
             
                    # @return [String]
         | 
| 698 698 | 
             
                    attr_accessor :region
         | 
| @@ -1156,6 +1156,12 @@ module Google | |
| 1156 1156 | 
             
                  class AllocationShareSettings
         | 
| 1157 1157 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 1158 1158 |  | 
| 1159 | 
            +
                    # A List of Project names to specify consumer projects for this shared-
         | 
| 1160 | 
            +
                    # reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
         | 
| 1161 | 
            +
                    # Corresponds to the JSON property `projects`
         | 
| 1162 | 
            +
                    # @return [Array<String>]
         | 
| 1163 | 
            +
                    attr_accessor :projects
         | 
| 1164 | 
            +
                  
         | 
| 1159 1165 | 
             
                    # Type of sharing for this shared-reservation
         | 
| 1160 1166 | 
             
                    # Corresponds to the JSON property `shareType`
         | 
| 1161 1167 | 
             
                    # @return [String]
         | 
| @@ -1167,6 +1173,7 @@ module Google | |
| 1167 1173 |  | 
| 1168 1174 | 
             
                    # Update properties of this object
         | 
| 1169 1175 | 
             
                    def update!(**args)
         | 
| 1176 | 
            +
                      @projects = args[:projects] if args.key?(:projects)
         | 
| 1170 1177 | 
             
                      @share_type = args[:share_type] if args.key?(:share_type)
         | 
| 1171 1178 | 
             
                    end
         | 
| 1172 1179 | 
             
                  end
         | 
| @@ -1291,6 +1298,80 @@ module Google | |
| 1291 1298 | 
             
                    end
         | 
| 1292 1299 | 
             
                  end
         | 
| 1293 1300 |  | 
| 1301 | 
            +
                  # `Any` contains an arbitrary serialized protocol buffer message along with a
         | 
| 1302 | 
            +
                  # URL that describes the type of the serialized message.
         | 
| 1303 | 
            +
                  # Protobuf library provides support to pack/unpack Any values in the form of
         | 
| 1304 | 
            +
                  # utility functions or additional generated methods of the Any type.
         | 
| 1305 | 
            +
                  # Example 1: Pack and unpack a message in C++.
         | 
| 1306 | 
            +
                  # Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) ` ... `
         | 
| 1307 | 
            +
                  # Example 2: Pack and unpack a message in Java.
         | 
| 1308 | 
            +
                  # Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) ` foo = any.
         | 
| 1309 | 
            +
                  # unpack(Foo.class); `
         | 
| 1310 | 
            +
                  # Example 3: Pack and unpack a message in Python.
         | 
| 1311 | 
            +
                  # foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.
         | 
| 1312 | 
            +
                  # Unpack(foo) ...
         | 
| 1313 | 
            +
                  # Example 4: Pack and unpack a message in Go
         | 
| 1314 | 
            +
                  # foo := &pb.Foo`...` any, err := anypb.New(foo) if err != nil ` ... ` ... foo :=
         | 
| 1315 | 
            +
                  # &pb.Foo`` if err := any.UnmarshalTo(foo); err != nil ` ... `
         | 
| 1316 | 
            +
                  # The pack methods provided by protobuf library will by default use 'type.
         | 
| 1317 | 
            +
                  # googleapis.com/full.type.name' as the type URL and the unpack methods only use
         | 
| 1318 | 
            +
                  # the fully qualified type name after the last '/' in the type URL, for example "
         | 
| 1319 | 
            +
                  # foo.bar.com/x/y.z" will yield type name "y.z".
         | 
| 1320 | 
            +
                  # JSON ==== The JSON representation of an `Any` value uses the regular
         | 
| 1321 | 
            +
                  # representation of the deserialized, embedded message, with an additional field
         | 
| 1322 | 
            +
                  # `@type` which contains the type URL. Example:
         | 
| 1323 | 
            +
                  # package google.profile; message Person ` string first_name = 1; string
         | 
| 1324 | 
            +
                  # last_name = 2; `
         | 
| 1325 | 
            +
                  # ` "@type": "type.googleapis.com/google.profile.Person", "firstName": , "
         | 
| 1326 | 
            +
                  # lastName":  `
         | 
| 1327 | 
            +
                  # If the embedded message type is well-known and has a custom JSON
         | 
| 1328 | 
            +
                  # representation, that representation will be embedded adding a field `value`
         | 
| 1329 | 
            +
                  # which holds the custom JSON in addition to the `@type` field. Example (for
         | 
| 1330 | 
            +
                  # message [google.protobuf.Duration][]):
         | 
| 1331 | 
            +
                  # ` "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" `
         | 
| 1332 | 
            +
                  class Any
         | 
| 1333 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 1334 | 
            +
                  
         | 
| 1335 | 
            +
                    # A URL/resource name that uniquely identifies the type of the serialized
         | 
| 1336 | 
            +
                    # protocol buffer message. This string must contain at least one "/" character.
         | 
| 1337 | 
            +
                    # The last segment of the URL's path must represent the fully qualified name of
         | 
| 1338 | 
            +
                    # the type (as in `path/google.protobuf.Duration`). The name should be in a
         | 
| 1339 | 
            +
                    # canonical form (e.g., leading "." is not accepted).
         | 
| 1340 | 
            +
                    # In practice, teams usually precompile into the binary all types that they
         | 
| 1341 | 
            +
                    # expect it to use in the context of Any. However, for URLs which use the scheme
         | 
| 1342 | 
            +
                    # `http`, `https`, or no scheme, one can optionally set up a type server that
         | 
| 1343 | 
            +
                    # maps type URLs to message definitions as follows:
         | 
| 1344 | 
            +
                    # * If no scheme is provided, `https` is assumed. * An HTTP GET on the URL must
         | 
| 1345 | 
            +
                    # yield a [google.protobuf.Type][] value in binary format, or produce an error. *
         | 
| 1346 | 
            +
                    # Applications are allowed to cache lookup results based on the URL, or have
         | 
| 1347 | 
            +
                    # them precompiled into a binary to avoid any lookup. Therefore, binary
         | 
| 1348 | 
            +
                    # compatibility needs to be preserved on changes to types. (Use versioned type
         | 
| 1349 | 
            +
                    # names to manage breaking changes.)
         | 
| 1350 | 
            +
                    # Note: this functionality is not currently available in the official protobuf
         | 
| 1351 | 
            +
                    # release, and it is not used for type URLs beginning with type.googleapis.com.
         | 
| 1352 | 
            +
                    # Schemes other than `http`, `https` (or the empty scheme) might be used with
         | 
| 1353 | 
            +
                    # implementation specific semantics.
         | 
| 1354 | 
            +
                    # Corresponds to the JSON property `typeUrl`
         | 
| 1355 | 
            +
                    # @return [String]
         | 
| 1356 | 
            +
                    attr_accessor :type_url
         | 
| 1357 | 
            +
                  
         | 
| 1358 | 
            +
                    # Must be a valid serialized protocol buffer of the above specified type.
         | 
| 1359 | 
            +
                    # Corresponds to the JSON property `value`
         | 
| 1360 | 
            +
                    # NOTE: Values are automatically base64 encoded/decoded in the client library.
         | 
| 1361 | 
            +
                    # @return [String]
         | 
| 1362 | 
            +
                    attr_accessor :value
         | 
| 1363 | 
            +
                  
         | 
| 1364 | 
            +
                    def initialize(**args)
         | 
| 1365 | 
            +
                       update!(**args)
         | 
| 1366 | 
            +
                    end
         | 
| 1367 | 
            +
                  
         | 
| 1368 | 
            +
                    # Update properties of this object
         | 
| 1369 | 
            +
                    def update!(**args)
         | 
| 1370 | 
            +
                      @type_url = args[:type_url] if args.key?(:type_url)
         | 
| 1371 | 
            +
                      @value = args[:value] if args.key?(:value)
         | 
| 1372 | 
            +
                    end
         | 
| 1373 | 
            +
                  end
         | 
| 1374 | 
            +
                  
         | 
| 1294 1375 | 
             
                  # An instance-attached disk resource.
         | 
| 1295 1376 | 
             
                  class AttachedDisk
         | 
| 1296 1377 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -2697,49 +2778,22 @@ module Google | |
| 2697 2778 | 
             
                  class Backend
         | 
| 2698 2779 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 2699 2780 |  | 
| 2700 | 
            -
                    # Specifies  | 
| 2701 | 
            -
                    #  | 
| 2702 | 
            -
                    #  | 
| 2703 | 
            -
                    # group or NEG).
         | 
| 2704 | 
            -
                    # 
         | 
| 2705 | 
            -
                    # - If the load balancing mode is CONNECTION, then the load is spread based on
         | 
| 2706 | 
            -
                    # how many concurrent connections the backend can handle.
         | 
| 2707 | 
            -
                    # You can use the CONNECTION balancing mode if the protocol for the backend
         | 
| 2708 | 
            -
                    # service is SSL, TCP, or UDP.
         | 
| 2709 | 
            -
                    # If the loadBalancingScheme for the backend service is EXTERNAL (SSL Proxy and
         | 
| 2710 | 
            -
                    # TCP Proxy load balancers), you must also specify exactly one of the following
         | 
| 2711 | 
            -
                    # parameters: maxConnections (except for regional managed instance groups),
         | 
| 2712 | 
            -
                    # maxConnectionsPerInstance, or maxConnectionsPerEndpoint.
         | 
| 2713 | 
            -
                    # If the loadBalancingScheme for the backend service is INTERNAL (internal TCP/
         | 
| 2714 | 
            -
                    # UDP Load Balancers) or EXTERNAL  (Network Load Balancing), you cannot specify
         | 
| 2715 | 
            -
                    # any additional parameters.
         | 
| 2716 | 
            -
                    # 
         | 
| 2717 | 
            -
                    # - If the load balancing mode is RATE, the load is spread based on the rate of
         | 
| 2718 | 
            -
                    # HTTP requests per second (RPS).
         | 
| 2719 | 
            -
                    # You can use the RATE balancing mode if the protocol for the backend service is
         | 
| 2720 | 
            -
                    # HTTP, HTTP2, or HTTPS. You must specify exactly one of the following
         | 
| 2721 | 
            -
                    # parameters: maxRate (except for regional managed instance groups),
         | 
| 2722 | 
            -
                    # maxRatePerInstance, or maxRatePerEndpoint.
         | 
| 2723 | 
            -
                    # 
         | 
| 2724 | 
            -
                    # - If the load balancing mode is UTILIZATION, the load is spread based on the
         | 
| 2725 | 
            -
                    # backend utilization of instances in an instance group.
         | 
| 2726 | 
            -
                    # You can use the UTILIZATION balancing mode if the loadBalancingScheme of the
         | 
| 2727 | 
            -
                    # backend service is EXTERNAL (except Network Load Balancing),
         | 
| 2728 | 
            -
                    # INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED and the backends are instance
         | 
| 2729 | 
            -
                    # groups. There are no restrictions on the backend service protocol.
         | 
| 2781 | 
            +
                    # Specifies how to determine whether the backend of a load balancer can handle
         | 
| 2782 | 
            +
                    # additional traffic or is fully loaded. For usage guidelines, see  Connection
         | 
| 2783 | 
            +
                    # balancing mode.
         | 
| 2730 2784 | 
             
                    # Corresponds to the JSON property `balancingMode`
         | 
| 2731 2785 | 
             
                    # @return [String]
         | 
| 2732 2786 | 
             
                    attr_accessor :balancing_mode
         | 
| 2733 2787 |  | 
| 2734 | 
            -
                    # A multiplier applied to the  | 
| 2735 | 
            -
                    #  | 
| 2736 | 
            -
                    #  | 
| 2737 | 
            -
                    #  | 
| 2738 | 
            -
                    #  | 
| 2739 | 
            -
                    #  | 
| 2740 | 
            -
                    #  | 
| 2741 | 
            -
                    #  | 
| 2742 | 
            -
                    # Balancing | 
| 2788 | 
            +
                    # A multiplier applied to the backend's target capacity of its balancing mode.
         | 
| 2789 | 
            +
                    # The default value is 1, which means the group serves up to 100% of its
         | 
| 2790 | 
            +
                    # configured capacity (depending on balancingMode). A setting of 0 means the
         | 
| 2791 | 
            +
                    # group is completely drained, offering 0% of its available capacity. The valid
         | 
| 2792 | 
            +
                    # ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and
         | 
| 2793 | 
            +
                    # smaller than 0.1. You cannot configure a setting of 0 when there is only one
         | 
| 2794 | 
            +
                    # backend attached to the backend service.
         | 
| 2795 | 
            +
                    # Not supported by:
         | 
| 2796 | 
            +
                    # - Internal TCP/UDP Load Balancing - Network Load Balancing
         | 
| 2743 2797 | 
             
                    # Corresponds to the JSON property `capacityScaler`
         | 
| 2744 2798 | 
             
                    # @return [Float]
         | 
| 2745 2799 | 
             
                    attr_accessor :capacity_scaler
         | 
| @@ -2777,91 +2831,52 @@ module Google | |
| 2777 2831 | 
             
                    # @return [String]
         | 
| 2778 2832 | 
             
                    attr_accessor :group
         | 
| 2779 2833 |  | 
| 2780 | 
            -
                    # Defines a target maximum number of simultaneous connections  | 
| 2781 | 
            -
                    #  | 
| 2782 | 
            -
                    #  | 
| 2783 | 
            -
                    #  | 
| 2784 | 
            -
                    # is CONNECTION, and backend is attached to a backend service whose
         | 
| 2785 | 
            -
                    # loadBalancingScheme is EXTERNAL (except Network Load Balancing), you must
         | 
| 2786 | 
            -
                    # specify either this parameter, maxConnectionsPerInstance, or
         | 
| 2787 | 
            -
                    # maxConnectionsPerEndpoint.
         | 
| 2788 | 
            -
                    # Not available if the backend's balancingMode is RATE. Cannot be specified for
         | 
| 2789 | 
            -
                    # Network Load Balancing or Internal TCP/UDP Load Balancing, even though those
         | 
| 2790 | 
            -
                    # load balancers require a balancing mode of CONNECTION.
         | 
| 2834 | 
            +
                    # Defines a target maximum number of simultaneous connections. For usage
         | 
| 2835 | 
            +
                    # guidelines, see Connection balancing mode and Utilization balancing mode. Not
         | 
| 2836 | 
            +
                    # available if the backend's balancingMode is RATE. Not supported by:
         | 
| 2837 | 
            +
                    # - Internal TCP/UDP Load Balancing - Network Load Balancing
         | 
| 2791 2838 | 
             
                    # Corresponds to the JSON property `maxConnections`
         | 
| 2792 2839 | 
             
                    # @return [Fixnum]
         | 
| 2793 2840 | 
             
                    attr_accessor :max_connections
         | 
| 2794 2841 |  | 
| 2795 | 
            -
                    # Defines a target maximum number of simultaneous connections  | 
| 2796 | 
            -
                    #  | 
| 2797 | 
            -
                    #  | 
| 2798 | 
            -
                    #  | 
| 2799 | 
            -
                    # a backend service whose loadBalancingScheme is EXTERNAL (except Network Load
         | 
| 2800 | 
            -
                    # Balancing), you must specify either this parameter, maxConnections, or
         | 
| 2801 | 
            -
                    # maxConnectionsPerInstance.
         | 
| 2802 | 
            -
                    # Not available if the backend's balancingMode is RATE. Cannot be specified for
         | 
| 2803 | 
            -
                    # Network Load Balancing or Internal TCP/UDP Load Balancing, even though those
         | 
| 2804 | 
            -
                    # load balancers require a balancing mode of CONNECTION.
         | 
| 2842 | 
            +
                    # Defines a target maximum number of simultaneous connections. For usage
         | 
| 2843 | 
            +
                    # guidelines, see Connection balancing mode and Utilization balancing mode.
         | 
| 2844 | 
            +
                    # Not available if the backend's balancingMode is RATE. Not supported by:
         | 
| 2845 | 
            +
                    # - Internal TCP/UDP Load Balancing - Network Load Balancing.
         | 
| 2805 2846 | 
             
                    # Corresponds to the JSON property `maxConnectionsPerEndpoint`
         | 
| 2806 2847 | 
             
                    # @return [Fixnum]
         | 
| 2807 2848 | 
             
                    attr_accessor :max_connections_per_endpoint
         | 
| 2808 2849 |  | 
| 2809 | 
            -
                    # Defines a target maximum number of simultaneous connections  | 
| 2810 | 
            -
                    #  | 
| 2811 | 
            -
                    #  | 
| 2812 | 
            -
                    #  | 
| 2813 | 
            -
                    # UTILIZATION, this is an optional parameter. If the backend's balancingMode is
         | 
| 2814 | 
            -
                    # CONNECTION, and backend is attached to a backend service whose
         | 
| 2815 | 
            -
                    # loadBalancingScheme is EXTERNAL (except Network Load Balancing), you must
         | 
| 2816 | 
            -
                    # specify either this parameter,  maxConnections, or maxConnectionsPerEndpoint.
         | 
| 2817 | 
            -
                    # Not available if the backend's balancingMode is RATE. Cannot be specified for
         | 
| 2818 | 
            -
                    # Network Load Balancing or Internal TCP/UDP Load Balancing, even though those
         | 
| 2819 | 
            -
                    # load balancers require a balancing mode of CONNECTION.
         | 
| 2850 | 
            +
                    # Defines a target maximum number of simultaneous connections. For usage
         | 
| 2851 | 
            +
                    # guidelines, see Connection balancing mode and Utilization balancing mode.
         | 
| 2852 | 
            +
                    # Not available if the backend's balancingMode is RATE. Not supported by:
         | 
| 2853 | 
            +
                    # - Internal TCP/UDP Load Balancing - Network Load Balancing.
         | 
| 2820 2854 | 
             
                    # Corresponds to the JSON property `maxConnectionsPerInstance`
         | 
| 2821 2855 | 
             
                    # @return [Fixnum]
         | 
| 2822 2856 | 
             
                    attr_accessor :max_connections_per_instance
         | 
| 2823 2857 |  | 
| 2824 | 
            -
                    # Defines a maximum number of HTTP requests per second (RPS)  | 
| 2825 | 
            -
                    #  | 
| 2826 | 
            -
                    # except for regional managed instance groups). Must not be defined if the
         | 
| 2827 | 
            -
                    # backend is a managed instance group that uses autoscaling based on load
         | 
| 2828 | 
            -
                    # balancing.
         | 
| 2829 | 
            -
                    # If the backend's balancingMode is UTILIZATION, this is an optional parameter.
         | 
| 2830 | 
            -
                    # If the backend's balancingMode is RATE, you must specify maxRate,
         | 
| 2831 | 
            -
                    # maxRatePerInstance, or maxRatePerEndpoint.
         | 
| 2858 | 
            +
                    # Defines a maximum number of HTTP requests per second (RPS). For usage
         | 
| 2859 | 
            +
                    # guidelines, see Rate balancing mode and Utilization balancing mode.
         | 
| 2832 2860 | 
             
                    # Not available if the backend's balancingMode is CONNECTION.
         | 
| 2833 2861 | 
             
                    # Corresponds to the JSON property `maxRate`
         | 
| 2834 2862 | 
             
                    # @return [Fixnum]
         | 
| 2835 2863 | 
             
                    attr_accessor :max_rate
         | 
| 2836 2864 |  | 
| 2837 | 
            -
                    # Defines a maximum target for requests per second (RPS)  | 
| 2838 | 
            -
                    #  | 
| 2839 | 
            -
                    # calculate a target maximum rate for the NEG.
         | 
| 2840 | 
            -
                    # If the backend's balancingMode is RATE, you must specify either this parameter,
         | 
| 2841 | 
            -
                    # maxRate (except for regional managed instance groups), or maxRatePerInstance.
         | 
| 2865 | 
            +
                    # Defines a maximum target for requests per second (RPS). For usage guidelines,
         | 
| 2866 | 
            +
                    # see Rate balancing mode and Utilization balancing mode.
         | 
| 2842 2867 | 
             
                    # Not available if the backend's balancingMode is CONNECTION.
         | 
| 2843 2868 | 
             
                    # Corresponds to the JSON property `maxRatePerEndpoint`
         | 
| 2844 2869 | 
             
                    # @return [Float]
         | 
| 2845 2870 | 
             
                    attr_accessor :max_rate_per_endpoint
         | 
| 2846 2871 |  | 
| 2847 | 
            -
                    # Defines a maximum target for requests per second (RPS)  | 
| 2848 | 
            -
                    #  | 
| 2849 | 
            -
                    # instance group to implicitly calculate a target maximum rate for the whole
         | 
| 2850 | 
            -
                    # instance group.
         | 
| 2851 | 
            -
                    # If the backend's balancingMode is UTILIZATION, this is an optional parameter.
         | 
| 2852 | 
            -
                    # If the backend's balancingMode is RATE, you must specify either this parameter,
         | 
| 2853 | 
            -
                    # maxRate (except for regional managed instance groups), or maxRatePerEndpoint.
         | 
| 2872 | 
            +
                    # Defines a maximum target for requests per second (RPS). For usage guidelines,
         | 
| 2873 | 
            +
                    # see Rate balancing mode and Utilization balancing mode.
         | 
| 2854 2874 | 
             
                    # Not available if the backend's balancingMode is CONNECTION.
         | 
| 2855 2875 | 
             
                    # Corresponds to the JSON property `maxRatePerInstance`
         | 
| 2856 2876 | 
             
                    # @return [Float]
         | 
| 2857 2877 | 
             
                    attr_accessor :max_rate_per_instance
         | 
| 2858 2878 |  | 
| 2859 | 
            -
                    #  | 
| 2860 | 
            -
                    # group. The valid range is [0.0, 1.0]. This is an optional parameter if the
         | 
| 2861 | 
            -
                    # backend's balancingMode is UTILIZATION.
         | 
| 2862 | 
            -
                    # This parameter can be used in conjunction with maxRate, maxRatePerInstance,
         | 
| 2863 | 
            -
                    # maxConnections (except for regional managed instance groups), or
         | 
| 2864 | 
            -
                    # maxConnectionsPerInstance.
         | 
| 2879 | 
            +
                    # 
         | 
| 2865 2880 | 
             
                    # Corresponds to the JSON property `maxUtilization`
         | 
| 2866 2881 | 
             
                    # @return [Float]
         | 
| 2867 2882 | 
             
                    attr_accessor :max_utilization
         | 
| @@ -3010,10 +3025,15 @@ module Google | |
| 3010 3025 | 
             
                    # @return [String]
         | 
| 3011 3026 | 
             
                    attr_accessor :cache_mode
         | 
| 3012 3027 |  | 
| 3013 | 
            -
                    # Specifies a separate client (e.g. browser client) TTL | 
| 3014 | 
            -
                    #  | 
| 3015 | 
            -
                    #  | 
| 3016 | 
            -
                    #  | 
| 3028 | 
            +
                    # Specifies a separate client (e.g. browser client) maximum TTL. This is used to
         | 
| 3029 | 
            +
                    # clamp the max-age (or Expires) value sent to the client. With FORCE_CACHE_ALL,
         | 
| 3030 | 
            +
                    # the lesser of client_ttl and default_ttl is used for the response max-age
         | 
| 3031 | 
            +
                    # directive, along with a "public" directive. For cacheable content in
         | 
| 3032 | 
            +
                    # CACHE_ALL_STATIC mode, client_ttl clamps the max-age from the origin (if
         | 
| 3033 | 
            +
                    # specified), or else sets the response max-age directive to the lesser of the
         | 
| 3034 | 
            +
                    # client_ttl and default_ttl, and also ensures a "public" cache-control
         | 
| 3035 | 
            +
                    # directive is present. If a client TTL is not specified, a default value (1
         | 
| 3036 | 
            +
                    # hour) will be used. The maximum allowed value is 86400s (1 day).
         | 
| 3017 3037 | 
             
                    # Corresponds to the JSON property `clientTtl`
         | 
| 3018 3038 | 
             
                    # @return [Fixnum]
         | 
| 3019 3039 | 
             
                    attr_accessor :client_ttl
         | 
| @@ -3485,6 +3505,14 @@ module Google | |
| 3485 3505 | 
             
                    # @return [Google::Apis::ComputeAlpha::BackendServiceLogConfig]
         | 
| 3486 3506 | 
             
                    attr_accessor :log_config
         | 
| 3487 3507 |  | 
| 3508 | 
            +
                    # A Duration represents a fixed-length span of time represented as a count of
         | 
| 3509 | 
            +
                    # seconds and fractions of seconds at nanosecond resolution. It is independent
         | 
| 3510 | 
            +
                    # of any calendar and concepts like "day" or "month". Range is approximately 10,
         | 
| 3511 | 
            +
                    # 000 years.
         | 
| 3512 | 
            +
                    # Corresponds to the JSON property `maxStreamDuration`
         | 
| 3513 | 
            +
                    # @return [Google::Apis::ComputeAlpha::Duration]
         | 
| 3514 | 
            +
                    attr_accessor :max_stream_duration
         | 
| 3515 | 
            +
                  
         | 
| 3488 3516 | 
             
                    # Name of the resource. Provided by the client when the resource is created. The
         | 
| 3489 3517 | 
             
                    # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
         | 
| 3490 3518 | 
             
                    # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
         | 
| @@ -3509,8 +3537,8 @@ module Google | |
| 3509 3537 |  | 
| 3510 3538 | 
             
                    # Deprecated in favor of portName. The TCP port to connect on the backend. The
         | 
| 3511 3539 | 
             
                    # default value is 80.
         | 
| 3512 | 
            -
                    #  | 
| 3513 | 
            -
                    #  | 
| 3540 | 
            +
                    # Backend services for Internal TCP/UDP Load Balancing and Network Load
         | 
| 3541 | 
            +
                    # Balancing require you omit port.
         | 
| 3514 3542 | 
             
                    # Corresponds to the JSON property `port`
         | 
| 3515 3543 | 
             
                    # @return [Fixnum]
         | 
| 3516 3544 | 
             
                    attr_accessor :port
         | 
| @@ -3591,7 +3619,8 @@ module Google | |
| 3591 3619 |  | 
| 3592 3620 | 
             
                    # The backend service timeout has a different meaning depending on the type of
         | 
| 3593 3621 | 
             
                    # load balancer. For more information see,  Backend service settings The default
         | 
| 3594 | 
            -
                    # is 30 seconds.
         | 
| 3622 | 
            +
                    # is 30 seconds. The full range of timeout values allowed is 1 - 2,147,483,647
         | 
| 3623 | 
            +
                    # seconds.
         | 
| 3595 3624 | 
             
                    # Corresponds to the JSON property `timeoutSec`
         | 
| 3596 3625 | 
             
                    # @return [Fixnum]
         | 
| 3597 3626 | 
             
                    attr_accessor :timeout_sec
         | 
| @@ -3624,6 +3653,7 @@ module Google | |
| 3624 3653 | 
             
                      @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme)
         | 
| 3625 3654 | 
             
                      @locality_lb_policy = args[:locality_lb_policy] if args.key?(:locality_lb_policy)
         | 
| 3626 3655 | 
             
                      @log_config = args[:log_config] if args.key?(:log_config)
         | 
| 3656 | 
            +
                      @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration)
         | 
| 3627 3657 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 3628 3658 | 
             
                      @network = args[:network] if args.key?(:network)
         | 
| 3629 3659 | 
             
                      @outlier_detection = args[:outlier_detection] if args.key?(:outlier_detection)
         | 
| @@ -3798,10 +3828,15 @@ module Google | |
| 3798 3828 | 
             
                    # @return [String]
         | 
| 3799 3829 | 
             
                    attr_accessor :cache_mode
         | 
| 3800 3830 |  | 
| 3801 | 
            -
                    # Specifies a separate client (e.g. browser client) TTL | 
| 3802 | 
            -
                    #  | 
| 3803 | 
            -
                    #  | 
| 3804 | 
            -
                    #  | 
| 3831 | 
            +
                    # Specifies a separate client (e.g. browser client) maximum TTL. This is used to
         | 
| 3832 | 
            +
                    # clamp the max-age (or Expires) value sent to the client. With FORCE_CACHE_ALL,
         | 
| 3833 | 
            +
                    # the lesser of client_ttl and default_ttl is used for the response max-age
         | 
| 3834 | 
            +
                    # directive, along with a "public" directive. For cacheable content in
         | 
| 3835 | 
            +
                    # CACHE_ALL_STATIC mode, client_ttl clamps the max-age from the origin (if
         | 
| 3836 | 
            +
                    # specified), or else sets the response max-age directive to the lesser of the
         | 
| 3837 | 
            +
                    # client_ttl and default_ttl, and also ensures a "public" cache-control
         | 
| 3838 | 
            +
                    # directive is present. If a client TTL is not specified, a default value (1
         | 
| 3839 | 
            +
                    # hour) will be used. The maximum allowed value is 86400s (1 day).
         | 
| 3805 3840 | 
             
                    # Corresponds to the JSON property `clientTtl`
         | 
| 3806 3841 | 
             
                    # @return [Fixnum]
         | 
| 3807 3842 | 
             
                    attr_accessor :client_ttl
         | 
| @@ -3987,6 +4022,25 @@ module Google | |
| 3987 4022 | 
             
                    # @return [String]
         | 
| 3988 4023 | 
             
                    attr_accessor :connection_persistence_on_unhealthy_backends
         | 
| 3989 4024 |  | 
| 4025 | 
            +
                    # Specifies how long to keep a Connection Tracking entry while there is no
         | 
| 4026 | 
            +
                    # matching traffic (in seconds).
         | 
| 4027 | 
            +
                    # For L4 ILB the minimum(default) is 10 minutes and maximum is 16 hours.
         | 
| 4028 | 
            +
                    # For NLB the minimum(default) is 60 seconds and the maximum is 16 hours.
         | 
| 4029 | 
            +
                    # This field will be supported only if the Connection Tracking key is less than
         | 
| 4030 | 
            +
                    # 5-tuple.
         | 
| 4031 | 
            +
                    # Corresponds to the JSON property `idleTimeoutSec`
         | 
| 4032 | 
            +
                    # @return [Fixnum]
         | 
| 4033 | 
            +
                    attr_accessor :idle_timeout_sec
         | 
| 4034 | 
            +
                  
         | 
| 4035 | 
            +
                    # Specifies the key used for connection tracking. There are two options:
         | 
| 4036 | 
            +
                    # PER_CONNECTION: This is the default mode. The Connection Tracking is performed
         | 
| 4037 | 
            +
                    # as per the Connection Key (default Hash Method) for the specific protocol.
         | 
| 4038 | 
            +
                    # PER_SESSION: The Connection Tracking is performed as per the configured
         | 
| 4039 | 
            +
                    # Session Affinity. It matches the configured Session Affinity.
         | 
| 4040 | 
            +
                    # Corresponds to the JSON property `trackingMode`
         | 
| 4041 | 
            +
                    # @return [String]
         | 
| 4042 | 
            +
                    attr_accessor :tracking_mode
         | 
| 4043 | 
            +
                  
         | 
| 3990 4044 | 
             
                    def initialize(**args)
         | 
| 3991 4045 | 
             
                       update!(**args)
         | 
| 3992 4046 | 
             
                    end
         | 
| @@ -3994,6 +4048,8 @@ module Google | |
| 3994 4048 | 
             
                    # Update properties of this object
         | 
| 3995 4049 | 
             
                    def update!(**args)
         | 
| 3996 4050 | 
             
                      @connection_persistence_on_unhealthy_backends = args[:connection_persistence_on_unhealthy_backends] if args.key?(:connection_persistence_on_unhealthy_backends)
         | 
| 4051 | 
            +
                      @idle_timeout_sec = args[:idle_timeout_sec] if args.key?(:idle_timeout_sec)
         | 
| 4052 | 
            +
                      @tracking_mode = args[:tracking_mode] if args.key?(:tracking_mode)
         | 
| 3997 4053 | 
             
                    end
         | 
| 3998 4054 | 
             
                  end
         | 
| 3999 4055 |  | 
| @@ -4830,6 +4886,12 @@ module Google | |
| 4830 4886 | 
             
                    # @return [String]
         | 
| 4831 4887 | 
             
                    attr_accessor :name_pattern
         | 
| 4832 4888 |  | 
| 4889 | 
            +
                    # Per-instance properties to be set on individual instances. Keys of this map
         | 
| 4890 | 
            +
                    # specify requested instance names. Can be empty if name_pattern is used.
         | 
| 4891 | 
            +
                    # Corresponds to the JSON property `perInstanceProperties`
         | 
| 4892 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::BulkInsertInstanceResourcePerInstanceProperties>]
         | 
| 4893 | 
            +
                    attr_accessor :per_instance_properties
         | 
| 4894 | 
            +
                  
         | 
| 4833 4895 | 
             
                    # List of predefined names. The number of names provided must be equal to count.
         | 
| 4834 4896 | 
             
                    # Corresponds to the JSON property `predefinedNames`
         | 
| 4835 4897 | 
             
                    # @return [Array<String>]
         | 
| @@ -4862,11 +4924,32 @@ module Google | |
| 4862 4924 | 
             
                      @location_policy = args[:location_policy] if args.key?(:location_policy)
         | 
| 4863 4925 | 
             
                      @min_count = args[:min_count] if args.key?(:min_count)
         | 
| 4864 4926 | 
             
                      @name_pattern = args[:name_pattern] if args.key?(:name_pattern)
         | 
| 4927 | 
            +
                      @per_instance_properties = args[:per_instance_properties] if args.key?(:per_instance_properties)
         | 
| 4865 4928 | 
             
                      @predefined_names = args[:predefined_names] if args.key?(:predefined_names)
         | 
| 4866 4929 | 
             
                      @source_instance_template = args[:source_instance_template] if args.key?(:source_instance_template)
         | 
| 4867 4930 | 
             
                    end
         | 
| 4868 4931 | 
             
                  end
         | 
| 4869 4932 |  | 
| 4933 | 
            +
                  # Per-instance properties to be set on individual instances. To be extended in
         | 
| 4934 | 
            +
                  # the future.
         | 
| 4935 | 
            +
                  class BulkInsertInstanceResourcePerInstanceProperties
         | 
| 4936 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 4937 | 
            +
                  
         | 
| 4938 | 
            +
                    # This field is only temporary. It will be removed. Do not use it.
         | 
| 4939 | 
            +
                    # Corresponds to the JSON property `name`
         | 
| 4940 | 
            +
                    # @return [String]
         | 
| 4941 | 
            +
                    attr_accessor :name
         | 
| 4942 | 
            +
                  
         | 
| 4943 | 
            +
                    def initialize(**args)
         | 
| 4944 | 
            +
                       update!(**args)
         | 
| 4945 | 
            +
                    end
         | 
| 4946 | 
            +
                  
         | 
| 4947 | 
            +
                    # Update properties of this object
         | 
| 4948 | 
            +
                    def update!(**args)
         | 
| 4949 | 
            +
                      @name = args[:name] if args.key?(:name)
         | 
| 4950 | 
            +
                    end
         | 
| 4951 | 
            +
                  end
         | 
| 4952 | 
            +
                  
         | 
| 4870 4953 | 
             
                  # 
         | 
| 4871 4954 | 
             
                  class CacheInvalidationRule
         | 
| 4872 4955 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -5663,9 +5746,9 @@ module Google | |
| 5663 5746 | 
             
                  class ConnectionDraining
         | 
| 5664 5747 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 5665 5748 |  | 
| 5666 | 
            -
                    #  | 
| 5667 | 
            -
                    #  | 
| 5668 | 
            -
                    #  | 
| 5749 | 
            +
                    # Configures a duration timeout for existing requests on a removed backend
         | 
| 5750 | 
            +
                    # instance. For supported load balancers and protocols, as described in Enabling
         | 
| 5751 | 
            +
                    # connection draining.
         | 
| 5669 5752 | 
             
                    # Corresponds to the JSON property `drainingTimeoutSec`
         | 
| 5670 5753 | 
             
                    # @return [Fixnum]
         | 
| 5671 5754 | 
             
                    attr_accessor :draining_timeout_sec
         | 
| @@ -5776,8 +5859,7 @@ module Google | |
| 5776 5859 | 
             
                    attr_accessor :allow_methods
         | 
| 5777 5860 |  | 
| 5778 5861 | 
             
                    # Specifies the regualar expression patterns that match allowed origins. For
         | 
| 5779 | 
            -
                    # regular expression grammar please see  | 
| 5780 | 
            -
                    # ecmascript
         | 
| 5862 | 
            +
                    # regular expression grammar please see github.com/google/re2/wiki/Syntax
         | 
| 5781 5863 | 
             
                    # An origin is allowed if it matches either an item in allowOrigins or an item
         | 
| 5782 5864 | 
             
                    # in allowOriginRegexes.
         | 
| 5783 5865 | 
             
                    # Corresponds to the JSON property `allowOriginRegexes`
         | 
| @@ -5947,6 +6029,11 @@ module Google | |
| 5947 6029 | 
             
                    # @return [String]
         | 
| 5948 6030 | 
             
                    attr_accessor :state
         | 
| 5949 6031 |  | 
| 6032 | 
            +
                    # A rollout policy configuration.
         | 
| 6033 | 
            +
                    # Corresponds to the JSON property `stateOverride`
         | 
| 6034 | 
            +
                    # @return [Google::Apis::ComputeAlpha::RolloutPolicy]
         | 
| 6035 | 
            +
                    attr_accessor :state_override
         | 
| 6036 | 
            +
                  
         | 
| 5950 6037 | 
             
                    def initialize(**args)
         | 
| 5951 6038 | 
             
                       update!(**args)
         | 
| 5952 6039 | 
             
                    end
         | 
| @@ -5958,6 +6045,7 @@ module Google | |
| 5958 6045 | 
             
                      @obsolete = args[:obsolete] if args.key?(:obsolete)
         | 
| 5959 6046 | 
             
                      @replacement = args[:replacement] if args.key?(:replacement)
         | 
| 5960 6047 | 
             
                      @state = args[:state] if args.key?(:state)
         | 
| 6048 | 
            +
                      @state_override = args[:state_override] if args.key?(:state_override)
         | 
| 5961 6049 | 
             
                    end
         | 
| 5962 6050 | 
             
                  end
         | 
| 5963 6051 |  | 
| @@ -6070,6 +6158,12 @@ module Google | |
| 6070 6158 | 
             
                    # @return [Array<String>]
         | 
| 6071 6159 | 
             
                    attr_accessor :licenses
         | 
| 6072 6160 |  | 
| 6161 | 
            +
                    # An opaque location hint used to place the disk close to other resources. This
         | 
| 6162 | 
            +
                    # field is for use by internal tools that use the public API.
         | 
| 6163 | 
            +
                    # Corresponds to the JSON property `locationHint`
         | 
| 6164 | 
            +
                    # @return [String]
         | 
| 6165 | 
            +
                    attr_accessor :location_hint
         | 
| 6166 | 
            +
                  
         | 
| 6073 6167 | 
             
                    # Indicates whether or not the disk can be read/write attached to more than one
         | 
| 6074 6168 | 
             
                    # instance.
         | 
| 6075 6169 | 
             
                    # Corresponds to the JSON property `multiWriter`
         | 
| @@ -6151,8 +6245,13 @@ module Google | |
| 6151 6245 | 
             
                    # The source disk used to create this disk. You can provide this as a partial or
         | 
| 6152 6246 | 
             
                    # full URL to the resource. For example, the following are valid values:
         | 
| 6153 6247 | 
             
                    # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
         | 
| 6248 | 
            +
                    # 
         | 
| 6249 | 
            +
                    # - https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/
         | 
| 6250 | 
            +
                    # disk
         | 
| 6154 6251 | 
             
                    # - projects/project/zones/zone/disks/disk
         | 
| 6252 | 
            +
                    # - projects/project/regions/region/disks/disk
         | 
| 6155 6253 | 
             
                    # - zones/zone/disks/disk
         | 
| 6254 | 
            +
                    # - regions/region/disks/disk
         | 
| 6156 6255 | 
             
                    # Corresponds to the JSON property `sourceDisk`
         | 
| 6157 6256 | 
             
                    # @return [String]
         | 
| 6158 6257 | 
             
                    attr_accessor :source_disk
         | 
| @@ -6271,14 +6370,19 @@ module Google | |
| 6271 6370 | 
             
                    # The full Google Cloud Storage URI where the disk image is stored. This file
         | 
| 6272 6371 | 
             
                    # must be a gzip-compressed tarball whose name ends in .tar.gz or virtual
         | 
| 6273 6372 | 
             
                    # machine disk whose name ends in vmdk. Valid URIs may start with gs:// or https:
         | 
| 6274 | 
            -
                    # //storage.googleapis.com/.
         | 
| 6373 | 
            +
                    # //storage.googleapis.com/. This flag is not optimized for creating multiple
         | 
| 6374 | 
            +
                    # disks from a source storage object. To create many disks from a source storage
         | 
| 6375 | 
            +
                    # object, use gcloud compute images import instead.
         | 
| 6275 6376 | 
             
                    # Corresponds to the JSON property `sourceStorageObject`
         | 
| 6276 6377 | 
             
                    # @return [String]
         | 
| 6277 6378 | 
             
                    attr_accessor :source_storage_object
         | 
| 6278 6379 |  | 
| 6279 | 
            -
                    # [Output Only] The status of disk creation. | 
| 6280 | 
            -
                    #  | 
| 6281 | 
            -
                    #  | 
| 6380 | 
            +
                    # [Output Only] The status of disk creation.
         | 
| 6381 | 
            +
                    # - CREATING: Disk is provisioning.
         | 
| 6382 | 
            +
                    # - RESTORING: Source data is being copied into the disk.
         | 
| 6383 | 
            +
                    # - FAILED: Disk creation failed.
         | 
| 6384 | 
            +
                    # - READY: Disk is ready for use.
         | 
| 6385 | 
            +
                    # - DELETING: Disk is deleting.
         | 
| 6282 6386 | 
             
                    # Corresponds to the JSON property `status`
         | 
| 6283 6387 | 
             
                    # @return [String]
         | 
| 6284 6388 | 
             
                    attr_accessor :status
         | 
| @@ -6337,6 +6441,7 @@ module Google | |
| 6337 6441 | 
             
                      @last_detach_timestamp = args[:last_detach_timestamp] if args.key?(:last_detach_timestamp)
         | 
| 6338 6442 | 
             
                      @license_codes = args[:license_codes] if args.key?(:license_codes)
         | 
| 6339 6443 | 
             
                      @licenses = args[:licenses] if args.key?(:licenses)
         | 
| 6444 | 
            +
                      @location_hint = args[:location_hint] if args.key?(:location_hint)
         | 
| 6340 6445 | 
             
                      @multi_writer = args[:multi_writer] if args.key?(:multi_writer)
         | 
| 6341 6446 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 6342 6447 | 
             
                      @options = args[:options] if args.key?(:options)
         | 
| @@ -8301,6 +8406,32 @@ module Google | |
| 8301 8406 | 
             
                    end
         | 
| 8302 8407 | 
             
                  end
         | 
| 8303 8408 |  | 
| 8409 | 
            +
                  # 
         | 
| 8410 | 
            +
                  class FirewallPoliciesListAssociationsResponse
         | 
| 8411 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 8412 | 
            +
                  
         | 
| 8413 | 
            +
                    # A list of associations.
         | 
| 8414 | 
            +
                    # Corresponds to the JSON property `associations`
         | 
| 8415 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyAssociation>]
         | 
| 8416 | 
            +
                    attr_accessor :associations
         | 
| 8417 | 
            +
                  
         | 
| 8418 | 
            +
                    # [Output Only] Type of firewallPolicy associations. Always compute#
         | 
| 8419 | 
            +
                    # FirewallPoliciesListAssociations for lists of firewallPolicy associations.
         | 
| 8420 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 8421 | 
            +
                    # @return [String]
         | 
| 8422 | 
            +
                    attr_accessor :kind
         | 
| 8423 | 
            +
                  
         | 
| 8424 | 
            +
                    def initialize(**args)
         | 
| 8425 | 
            +
                       update!(**args)
         | 
| 8426 | 
            +
                    end
         | 
| 8427 | 
            +
                  
         | 
| 8428 | 
            +
                    # Update properties of this object
         | 
| 8429 | 
            +
                    def update!(**args)
         | 
| 8430 | 
            +
                      @associations = args[:associations] if args.key?(:associations)
         | 
| 8431 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 8432 | 
            +
                    end
         | 
| 8433 | 
            +
                  end
         | 
| 8434 | 
            +
                  
         | 
| 8304 8435 | 
             
                  # Represents a Firewall Policy resource. (== resource_for `$api_version`.
         | 
| 8305 8436 | 
             
                  # firewallPolicies ==)
         | 
| 8306 8437 | 
             
                  class FirewallPolicy
         | 
| @@ -8575,8 +8706,7 @@ module Google | |
| 8575 8706 | 
             
                    # @return [String]
         | 
| 8576 8707 | 
             
                    attr_accessor :action
         | 
| 8577 8708 |  | 
| 8578 | 
            -
                    # An optional description  | 
| 8579 | 
            -
                    # create the resource.
         | 
| 8709 | 
            +
                    # An optional description for this resource.
         | 
| 8580 8710 | 
             
                    # Corresponds to the JSON property `description`
         | 
| 8581 8711 | 
             
                    # @return [String]
         | 
| 8582 8712 | 
             
                    attr_accessor :description
         | 
| @@ -8629,7 +8759,7 @@ module Google | |
| 8629 8759 | 
             
                    attr_accessor :rule_tuple_count
         | 
| 8630 8760 |  | 
| 8631 8761 | 
             
                    # A list of network resource URLs to which this rule applies. This field allows
         | 
| 8632 | 
            -
                    # you to control which network | 
| 8762 | 
            +
                    # you to control which network's VMs get this rule. If this field is left blank,
         | 
| 8633 8763 | 
             
                    # all VMs within the organization will receive the rule.
         | 
| 8634 8764 | 
             
                    # Corresponds to the JSON property `targetResources`
         | 
| 8635 8765 | 
             
                    # @return [Array<String>]
         | 
| @@ -8646,6 +8776,18 @@ module Google | |
| 8646 8776 | 
             
                    # @return [Array<String>]
         | 
| 8647 8777 | 
             
                    attr_accessor :target_secure_labels
         | 
| 8648 8778 |  | 
| 8779 | 
            +
                    # A list of secure tags that controls which instances the firewall rule applies
         | 
| 8780 | 
            +
                    # to. If targetSecureTag are specified, then the firewall rule applies only to
         | 
| 8781 | 
            +
                    # instances in the VPC network that have one of those EFFECTIVE secure tags, if
         | 
| 8782 | 
            +
                    # all the target_secure_tag are in INEFFECTIVE state, then this rule will be
         | 
| 8783 | 
            +
                    # ignored. targetSecureTag may not be set at the same time as
         | 
| 8784 | 
            +
                    # targetServiceAccounts. If neither targetServiceAccounts nor targetSecureTag
         | 
| 8785 | 
            +
                    # are specified, the firewall rule applies to all instances on the specified
         | 
| 8786 | 
            +
                    # network. Maximum number of target label tags allowed is 256.
         | 
| 8787 | 
            +
                    # Corresponds to the JSON property `targetSecureTags`
         | 
| 8788 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyRuleSecureTag>]
         | 
| 8789 | 
            +
                    attr_accessor :target_secure_tags
         | 
| 8790 | 
            +
                  
         | 
| 8649 8791 | 
             
                    # A list of service accounts indicating the sets of instances that are applied
         | 
| 8650 8792 | 
             
                    # with this rule.
         | 
| 8651 8793 | 
             
                    # Corresponds to the JSON property `targetServiceAccounts`
         | 
| @@ -8669,6 +8811,7 @@ module Google | |
| 8669 8811 | 
             
                      @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
         | 
| 8670 8812 | 
             
                      @target_resources = args[:target_resources] if args.key?(:target_resources)
         | 
| 8671 8813 | 
             
                      @target_secure_labels = args[:target_secure_labels] if args.key?(:target_secure_labels)
         | 
| 8814 | 
            +
                      @target_secure_tags = args[:target_secure_tags] if args.key?(:target_secure_tags)
         | 
| 8672 8815 | 
             
                      @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
         | 
| 8673 8816 | 
             
                    end
         | 
| 8674 8817 | 
             
                  end
         | 
| @@ -8700,6 +8843,14 @@ module Google | |
| 8700 8843 | 
             
                    # @return [Array<String>]
         | 
| 8701 8844 | 
             
                    attr_accessor :src_secure_labels
         | 
| 8702 8845 |  | 
| 8846 | 
            +
                    # List of secure tag values, which should be matched at the source of the
         | 
| 8847 | 
            +
                    # traffic. For INGRESS rule, if all the srcSecureTag are INEFFECTIVE, and there
         | 
| 8848 | 
            +
                    # is no srcIpRange, this rule will be ignored. Maximum number of source tag
         | 
| 8849 | 
            +
                    # values allowed is 256.
         | 
| 8850 | 
            +
                    # Corresponds to the JSON property `srcSecureTags`
         | 
| 8851 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::FirewallPolicyRuleSecureTag>]
         | 
| 8852 | 
            +
                    attr_accessor :src_secure_tags
         | 
| 8853 | 
            +
                  
         | 
| 8703 8854 | 
             
                    def initialize(**args)
         | 
| 8704 8855 | 
             
                       update!(**args)
         | 
| 8705 8856 | 
             
                    end
         | 
| @@ -8710,6 +8861,7 @@ module Google | |
| 8710 8861 | 
             
                      @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
         | 
| 8711 8862 | 
             
                      @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
         | 
| 8712 8863 | 
             
                      @src_secure_labels = args[:src_secure_labels] if args.key?(:src_secure_labels)
         | 
| 8864 | 
            +
                      @src_secure_tags = args[:src_secure_tags] if args.key?(:src_secure_tags)
         | 
| 8713 8865 | 
             
                    end
         | 
| 8714 8866 | 
             
                  end
         | 
| 8715 8867 |  | 
| @@ -8744,6 +8896,32 @@ module Google | |
| 8744 8896 | 
             
                    end
         | 
| 8745 8897 | 
             
                  end
         | 
| 8746 8898 |  | 
| 8899 | 
            +
                  # 
         | 
| 8900 | 
            +
                  class FirewallPolicyRuleSecureTag
         | 
| 8901 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 8902 | 
            +
                  
         | 
| 8903 | 
            +
                    # Name of the secure tag, created with TagManager's TagValue API.
         | 
| 8904 | 
            +
                    # Corresponds to the JSON property `name`
         | 
| 8905 | 
            +
                    # @return [String]
         | 
| 8906 | 
            +
                    attr_accessor :name
         | 
| 8907 | 
            +
                  
         | 
| 8908 | 
            +
                    # [Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A
         | 
| 8909 | 
            +
                    # secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
         | 
| 8910 | 
            +
                    # Corresponds to the JSON property `state`
         | 
| 8911 | 
            +
                    # @return [String]
         | 
| 8912 | 
            +
                    attr_accessor :state
         | 
| 8913 | 
            +
                  
         | 
| 8914 | 
            +
                    def initialize(**args)
         | 
| 8915 | 
            +
                       update!(**args)
         | 
| 8916 | 
            +
                    end
         | 
| 8917 | 
            +
                  
         | 
| 8918 | 
            +
                    # Update properties of this object
         | 
| 8919 | 
            +
                    def update!(**args)
         | 
| 8920 | 
            +
                      @name = args[:name] if args.key?(:name)
         | 
| 8921 | 
            +
                      @state = args[:state] if args.key?(:state)
         | 
| 8922 | 
            +
                    end
         | 
| 8923 | 
            +
                  end
         | 
| 8924 | 
            +
                  
         | 
| 8747 8925 | 
             
                  # Encapsulates numeric value that can be either absolute or relative.
         | 
| 8748 8926 | 
             
                  class FixedOrPercent
         | 
| 8749 8927 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -9043,6 +9221,11 @@ module Google | |
| 9043 9221 | 
             
                    # @return [Array<String>]
         | 
| 9044 9222 | 
             
                    attr_accessor :ports
         | 
| 9045 9223 |  | 
| 9224 | 
            +
                    # [Output Only] The PSC connection id of the PSC Forwarding Rule.
         | 
| 9225 | 
            +
                    # Corresponds to the JSON property `pscConnectionId`
         | 
| 9226 | 
            +
                    # @return [Fixnum]
         | 
| 9227 | 
            +
                    attr_accessor :psc_connection_id
         | 
| 9228 | 
            +
                  
         | 
| 9046 9229 | 
             
                    # [Output Only] URL of the region where the regional forwarding rule resides.
         | 
| 9047 9230 | 
             
                    # This field is not applicable to global forwarding rules. You must specify this
         | 
| 9048 9231 | 
             
                    # field as part of the HTTP request URL. It is not settable as a field in the
         | 
| @@ -9098,21 +9281,7 @@ module Google | |
| 9098 9281 | 
             
                    # @return [String]
         | 
| 9099 9282 | 
             
                    attr_accessor :subnetwork
         | 
| 9100 9283 |  | 
| 9101 | 
            -
                    # The URL of the target resource to receive the matched traffic. For regional
         | 
| 9102 | 
            -
                    # forwarding rules, this target must be in the same region as the forwarding
         | 
| 9103 | 
            -
                    # rule. For global forwarding rules, this target must be a global load balancing
         | 
| 9104 | 
            -
                    # resource. The forwarded traffic must be of a type appropriate to the target
         | 
| 9105 | 
            -
                    # object. For more information, see the "Target" column in [Port specifications](
         | 
| 9106 | 
            -
                    # /load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).
         | 
| 9107 | 
            -
                    # For Private Service Connect forwarding rules that forward traffic to Google
         | 
| 9108 | 
            -
                    # APIs, provide the name of a supported Google API bundle. Currently, the
         | 
| 9109 | 
            -
                    # supported Google API bundles include:
         | 
| 9110 9284 | 
             
                    # 
         | 
| 9111 | 
            -
                    # - vpc-sc - GCP APIs that support VPC Service Controls. For more information
         | 
| 9112 | 
            -
                    # about which APIs support VPC Service Controls, refer to VPC-SC supported
         | 
| 9113 | 
            -
                    # products and limitations.
         | 
| 9114 | 
            -
                    # - all-apis - All GCP APIs. For more information about which APIs are supported
         | 
| 9115 | 
            -
                    # with this bundle, refer to Private Google Access-specific domains and VIPs.
         | 
| 9116 9285 | 
             
                    # Corresponds to the JSON property `target`
         | 
| 9117 9286 | 
             
                    # @return [String]
         | 
| 9118 9287 | 
             
                    attr_accessor :target
         | 
| @@ -9144,6 +9313,7 @@ module Google | |
| 9144 9313 | 
             
                      @network_tier = args[:network_tier] if args.key?(:network_tier)
         | 
| 9145 9314 | 
             
                      @port_range = args[:port_range] if args.key?(:port_range)
         | 
| 9146 9315 | 
             
                      @ports = args[:ports] if args.key?(:ports)
         | 
| 9316 | 
            +
                      @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
         | 
| 9147 9317 | 
             
                      @region = args[:region] if args.key?(:region)
         | 
| 9148 9318 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 9149 9319 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| @@ -9431,6 +9601,14 @@ module Google | |
| 9431 9601 | 
             
                    # @return [String]
         | 
| 9432 9602 | 
             
                    attr_accessor :service
         | 
| 9433 9603 |  | 
| 9604 | 
            +
                    # [Optional] Service Directory region to register this global forwarding rule
         | 
| 9605 | 
            +
                    # under. Default to "us-central1". Only used for PSC for Google APIs. All PSC
         | 
| 9606 | 
            +
                    # for Google APIs Forwarding Rules on the same network should use the same
         | 
| 9607 | 
            +
                    # Service Directory region.
         | 
| 9608 | 
            +
                    # Corresponds to the JSON property `serviceDirectoryRegion`
         | 
| 9609 | 
            +
                    # @return [String]
         | 
| 9610 | 
            +
                    attr_accessor :service_directory_region
         | 
| 9611 | 
            +
                  
         | 
| 9434 9612 | 
             
                    def initialize(**args)
         | 
| 9435 9613 | 
             
                       update!(**args)
         | 
| 9436 9614 | 
             
                    end
         | 
| @@ -9439,6 +9617,7 @@ module Google | |
| 9439 9617 | 
             
                    def update!(**args)
         | 
| 9440 9618 | 
             
                      @namespace = args[:namespace] if args.key?(:namespace)
         | 
| 9441 9619 | 
             
                      @service = args[:service] if args.key?(:service)
         | 
| 9620 | 
            +
                      @service_directory_region = args[:service_directory_region] if args.key?(:service_directory_region)
         | 
| 9442 9621 | 
             
                    end
         | 
| 9443 9622 | 
             
                  end
         | 
| 9444 9623 |  | 
| @@ -9644,6 +9823,69 @@ module Google | |
| 9644 9823 | 
             
                    end
         | 
| 9645 9824 | 
             
                  end
         | 
| 9646 9825 |  | 
| 9826 | 
            +
                  # 
         | 
| 9827 | 
            +
                  class GlobalOrganizationSetPolicyRequest
         | 
| 9828 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 9829 | 
            +
                  
         | 
| 9830 | 
            +
                    # Flatten Policy to create a backward compatible wire-format. Deprecated. Use '
         | 
| 9831 | 
            +
                    # policy' to specify bindings.
         | 
| 9832 | 
            +
                    # Corresponds to the JSON property `bindings`
         | 
| 9833 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::Binding>]
         | 
| 9834 | 
            +
                    attr_accessor :bindings
         | 
| 9835 | 
            +
                  
         | 
| 9836 | 
            +
                    # Flatten Policy to create a backward compatible wire-format. Deprecated. Use '
         | 
| 9837 | 
            +
                    # policy' to specify the etag.
         | 
| 9838 | 
            +
                    # Corresponds to the JSON property `etag`
         | 
| 9839 | 
            +
                    # NOTE: Values are automatically base64 encoded/decoded in the client library.
         | 
| 9840 | 
            +
                    # @return [String]
         | 
| 9841 | 
            +
                    attr_accessor :etag
         | 
| 9842 | 
            +
                  
         | 
| 9843 | 
            +
                    # An Identity and Access Management (IAM) policy, which specifies access
         | 
| 9844 | 
            +
                    # controls for Google Cloud resources.
         | 
| 9845 | 
            +
                    # A `Policy` is a collection of `bindings`. A `binding` binds one or more `
         | 
| 9846 | 
            +
                    # members` to a single `role`. Members can be user accounts, service accounts,
         | 
| 9847 | 
            +
                    # Google groups, and domains (such as G Suite). A `role` is a named list of
         | 
| 9848 | 
            +
                    # permissions; each `role` can be an IAM predefined role or a user-created
         | 
| 9849 | 
            +
                    # custom role.
         | 
| 9850 | 
            +
                    # For some types of Google Cloud resources, a `binding` can also specify a `
         | 
| 9851 | 
            +
                    # condition`, which is a logical expression that allows access to a resource
         | 
| 9852 | 
            +
                    # only if the expression evaluates to `true`. A condition can add constraints
         | 
| 9853 | 
            +
                    # based on attributes of the request, the resource, or both. To learn which
         | 
| 9854 | 
            +
                    # resources support conditions in their IAM policies, see the [IAM documentation]
         | 
| 9855 | 
            +
                    # (https://cloud.google.com/iam/help/conditions/resource-policies).
         | 
| 9856 | 
            +
                    # **JSON example:**
         | 
| 9857 | 
            +
                    # ` "bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members":
         | 
| 9858 | 
            +
                    # [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
         | 
| 9859 | 
            +
                    # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
         | 
| 9860 | 
            +
                    # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
         | 
| 9861 | 
            +
                    # ], "condition": ` "title": "expirable access", "description": "Does not grant
         | 
| 9862 | 
            +
                    # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
         | 
| 9863 | 
            +
                    # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 `
         | 
| 9864 | 
            +
                    # **YAML example:**
         | 
| 9865 | 
            +
                    # bindings: - members: - user:mike@example.com - group:admins@example.com -
         | 
| 9866 | 
            +
                    # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
         | 
| 9867 | 
            +
                    # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
         | 
| 9868 | 
            +
                    # com role: roles/resourcemanager.organizationViewer condition: title: expirable
         | 
| 9869 | 
            +
                    # access description: Does not grant access after Sep 2020 expression: request.
         | 
| 9870 | 
            +
                    # time < timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3
         | 
| 9871 | 
            +
                    # For a description of IAM and its features, see the [IAM documentation](https://
         | 
| 9872 | 
            +
                    # cloud.google.com/iam/docs/).
         | 
| 9873 | 
            +
                    # Corresponds to the JSON property `policy`
         | 
| 9874 | 
            +
                    # @return [Google::Apis::ComputeAlpha::Policy]
         | 
| 9875 | 
            +
                    attr_accessor :policy
         | 
| 9876 | 
            +
                  
         | 
| 9877 | 
            +
                    def initialize(**args)
         | 
| 9878 | 
            +
                       update!(**args)
         | 
| 9879 | 
            +
                    end
         | 
| 9880 | 
            +
                  
         | 
| 9881 | 
            +
                    # Update properties of this object
         | 
| 9882 | 
            +
                    def update!(**args)
         | 
| 9883 | 
            +
                      @bindings = args[:bindings] if args.key?(:bindings)
         | 
| 9884 | 
            +
                      @etag = args[:etag] if args.key?(:etag)
         | 
| 9885 | 
            +
                      @policy = args[:policy] if args.key?(:policy)
         | 
| 9886 | 
            +
                    end
         | 
| 9887 | 
            +
                  end
         | 
| 9888 | 
            +
                  
         | 
| 9647 9889 | 
             
                  # 
         | 
| 9648 9890 | 
             
                  class GlobalSetLabelsRequest
         | 
| 9649 9891 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -10186,11 +10428,12 @@ module Google | |
| 10186 10428 | 
             
                    attr_accessor :log_config
         | 
| 10187 10429 |  | 
| 10188 10430 | 
             
                    # Name of the resource. Provided by the client when the resource is created. The
         | 
| 10189 | 
            -
                    # name must be 1-63 characters long, and comply with RFC1035.  | 
| 10190 | 
            -
                    # name  | 
| 10191 | 
            -
                    # z0-9]*[a-z0-9]) | 
| 10192 | 
            -
                    #  | 
| 10193 | 
            -
                    #  | 
| 10431 | 
            +
                    # name must be 1-63 characters long, and comply with RFC1035. For example, a
         | 
| 10432 | 
            +
                    # name that is 1-63 characters long, matches the regular expression `[a-z]([-a-
         | 
| 10433 | 
            +
                    # z0-9]*[a-z0-9])?`, and otherwise complies with RFC1035. This regular
         | 
| 10434 | 
            +
                    # expression describes a name where the first character is a lowercase letter,
         | 
| 10435 | 
            +
                    # and all following characters are a dash, lowercase letter, or digit, except
         | 
| 10436 | 
            +
                    # the last character, which isn't a dash.
         | 
| 10194 10437 | 
             
                    # Corresponds to the JSON property `name`
         | 
| 10195 10438 | 
             
                    # @return [String]
         | 
| 10196 10439 | 
             
                    attr_accessor :name
         | 
| @@ -10579,33 +10822,8 @@ module Google | |
| 10579 10822 | 
             
                    end
         | 
| 10580 10823 | 
             
                  end
         | 
| 10581 10824 |  | 
| 10582 | 
            -
                  #  | 
| 10583 | 
            -
                   | 
| 10584 | 
            -
                  # - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/
         | 
| 10585 | 
            -
                  # healthCheckServices/health-check-service
         | 
| 10586 | 
            -
                  # - projects/project-id/regions/us-west1/healthCheckServices/health-check-
         | 
| 10587 | 
            -
                  # service
         | 
| 10588 | 
            -
                  # - regions/us-west1/healthCheckServices/health-check-service
         | 
| 10589 | 
            -
                  class HealthCheckServiceReference
         | 
| 10590 | 
            -
                    include Google::Apis::Core::Hashable
         | 
| 10591 | 
            -
                  
         | 
| 10592 | 
            -
                    # 
         | 
| 10593 | 
            -
                    # Corresponds to the JSON property `healthCheckService`
         | 
| 10594 | 
            -
                    # @return [String]
         | 
| 10595 | 
            -
                    attr_accessor :health_check_service
         | 
| 10596 | 
            -
                  
         | 
| 10597 | 
            -
                    def initialize(**args)
         | 
| 10598 | 
            -
                       update!(**args)
         | 
| 10599 | 
            -
                    end
         | 
| 10600 | 
            -
                  
         | 
| 10601 | 
            -
                    # Update properties of this object
         | 
| 10602 | 
            -
                    def update!(**args)
         | 
| 10603 | 
            -
                      @health_check_service = args[:health_check_service] if args.key?(:health_check_service)
         | 
| 10604 | 
            -
                    end
         | 
| 10605 | 
            -
                  end
         | 
| 10606 | 
            -
                  
         | 
| 10607 | 
            -
                  # 
         | 
| 10608 | 
            -
                  class HealthCheckServicesList
         | 
| 10825 | 
            +
                  # Contains a list of HealthCheckServicesScopedList.
         | 
| 10826 | 
            +
                  class HealthCheckServiceAggregatedList
         | 
| 10609 10827 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 10610 10828 |  | 
| 10611 10829 | 
             
                    # [Output Only] Unique identifier for the resource; defined by the server.
         | 
| @@ -10613,13 +10831,12 @@ module Google | |
| 10613 10831 | 
             
                    # @return [String]
         | 
| 10614 10832 | 
             
                    attr_accessor :id
         | 
| 10615 10833 |  | 
| 10616 | 
            -
                    # A list of  | 
| 10834 | 
            +
                    # A list of HealthCheckServicesScopedList resources.
         | 
| 10617 10835 | 
             
                    # Corresponds to the JSON property `items`
         | 
| 10618 | 
            -
                    # @return [ | 
| 10836 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::HealthCheckServicesScopedList>]
         | 
| 10619 10837 | 
             
                    attr_accessor :items
         | 
| 10620 10838 |  | 
| 10621 | 
            -
                    #  | 
| 10622 | 
            -
                    # lists of HealthCheckServices.
         | 
| 10839 | 
            +
                    # Type of resource.
         | 
| 10623 10840 | 
             
                    # Corresponds to the JSON property `kind`
         | 
| 10624 10841 | 
             
                    # @return [String]
         | 
| 10625 10842 | 
             
                    attr_accessor :kind
         | 
| @@ -10638,9 +10855,14 @@ module Google | |
| 10638 10855 | 
             
                    # @return [String]
         | 
| 10639 10856 | 
             
                    attr_accessor :self_link
         | 
| 10640 10857 |  | 
| 10858 | 
            +
                    # [Output Only] Unreachable resources.
         | 
| 10859 | 
            +
                    # Corresponds to the JSON property `unreachables`
         | 
| 10860 | 
            +
                    # @return [Array<String>]
         | 
| 10861 | 
            +
                    attr_accessor :unreachables
         | 
| 10862 | 
            +
                  
         | 
| 10641 10863 | 
             
                    # [Output Only] Informational warning message.
         | 
| 10642 10864 | 
             
                    # Corresponds to the JSON property `warning`
         | 
| 10643 | 
            -
                    # @return [Google::Apis::ComputeAlpha:: | 
| 10865 | 
            +
                    # @return [Google::Apis::ComputeAlpha::HealthCheckServiceAggregatedList::Warning]
         | 
| 10644 10866 | 
             
                    attr_accessor :warning
         | 
| 10645 10867 |  | 
| 10646 10868 | 
             
                    def initialize(**args)
         | 
| @@ -10654,6 +10876,7 @@ module Google | |
| 10654 10876 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 10655 10877 | 
             
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 10656 10878 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 10879 | 
            +
                      @unreachables = args[:unreachables] if args.key?(:unreachables)
         | 
| 10657 10880 | 
             
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 10658 10881 | 
             
                    end
         | 
| 10659 10882 |  | 
| @@ -10670,7 +10893,7 @@ module Google | |
| 10670 10893 | 
             
                      # [Output Only] Metadata about this warning in key: value format. For example:
         | 
| 10671 10894 | 
             
                      # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 10672 10895 | 
             
                      # Corresponds to the JSON property `data`
         | 
| 10673 | 
            -
                      # @return [Array<Google::Apis::ComputeAlpha:: | 
| 10896 | 
            +
                      # @return [Array<Google::Apis::ComputeAlpha::HealthCheckServiceAggregatedList::Warning::Datum>]
         | 
| 10674 10897 | 
             
                      attr_accessor :data
         | 
| 10675 10898 |  | 
| 10676 10899 | 
             
                      # [Output Only] A human-readable description of the warning code.
         | 
| @@ -10722,8 +10945,33 @@ module Google | |
| 10722 10945 | 
             
                    end
         | 
| 10723 10946 | 
             
                  end
         | 
| 10724 10947 |  | 
| 10948 | 
            +
                  # A full or valid partial URL to a health check service. For example, the
         | 
| 10949 | 
            +
                  # following are valid URLs:
         | 
| 10950 | 
            +
                  # - https://www.googleapis.com/compute/beta/projects/project-id/regions/us-west1/
         | 
| 10951 | 
            +
                  # healthCheckServices/health-check-service
         | 
| 10952 | 
            +
                  # - projects/project-id/regions/us-west1/healthCheckServices/health-check-
         | 
| 10953 | 
            +
                  # service
         | 
| 10954 | 
            +
                  # - regions/us-west1/healthCheckServices/health-check-service
         | 
| 10955 | 
            +
                  class HealthCheckServiceReference
         | 
| 10956 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 10957 | 
            +
                  
         | 
| 10958 | 
            +
                    # 
         | 
| 10959 | 
            +
                    # Corresponds to the JSON property `healthCheckService`
         | 
| 10960 | 
            +
                    # @return [String]
         | 
| 10961 | 
            +
                    attr_accessor :health_check_service
         | 
| 10962 | 
            +
                  
         | 
| 10963 | 
            +
                    def initialize(**args)
         | 
| 10964 | 
            +
                       update!(**args)
         | 
| 10965 | 
            +
                    end
         | 
| 10966 | 
            +
                  
         | 
| 10967 | 
            +
                    # Update properties of this object
         | 
| 10968 | 
            +
                    def update!(**args)
         | 
| 10969 | 
            +
                      @health_check_service = args[:health_check_service] if args.key?(:health_check_service)
         | 
| 10970 | 
            +
                    end
         | 
| 10971 | 
            +
                  end
         | 
| 10972 | 
            +
                  
         | 
| 10725 10973 | 
             
                  # 
         | 
| 10726 | 
            -
                  class  | 
| 10974 | 
            +
                  class HealthCheckServicesList
         | 
| 10727 10975 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 10728 10976 |  | 
| 10729 10977 | 
             
                    # [Output Only] Unique identifier for the resource; defined by the server.
         | 
| @@ -10731,12 +10979,13 @@ module Google | |
| 10731 10979 | 
             
                    # @return [String]
         | 
| 10732 10980 | 
             
                    attr_accessor :id
         | 
| 10733 10981 |  | 
| 10734 | 
            -
                    # A list of  | 
| 10982 | 
            +
                    # A list of HealthCheckService resources.
         | 
| 10735 10983 | 
             
                    # Corresponds to the JSON property `items`
         | 
| 10736 | 
            -
                    # @return [ | 
| 10984 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::HealthCheckService>]
         | 
| 10737 10985 | 
             
                    attr_accessor :items
         | 
| 10738 10986 |  | 
| 10739 | 
            -
                    # Type of resource.
         | 
| 10987 | 
            +
                    # [Output Only] Type of the resource. Always compute#healthCheckServicesList for
         | 
| 10988 | 
            +
                    # lists of HealthCheckServices.
         | 
| 10740 10989 | 
             
                    # Corresponds to the JSON property `kind`
         | 
| 10741 10990 | 
             
                    # @return [String]
         | 
| 10742 10991 | 
             
                    attr_accessor :kind
         | 
| @@ -10755,14 +11004,9 @@ module Google | |
| 10755 11004 | 
             
                    # @return [String]
         | 
| 10756 11005 | 
             
                    attr_accessor :self_link
         | 
| 10757 11006 |  | 
| 10758 | 
            -
                    # [Output Only] Unreachable resources.
         | 
| 10759 | 
            -
                    # Corresponds to the JSON property `unreachables`
         | 
| 10760 | 
            -
                    # @return [Array<String>]
         | 
| 10761 | 
            -
                    attr_accessor :unreachables
         | 
| 10762 | 
            -
                  
         | 
| 10763 11007 | 
             
                    # [Output Only] Informational warning message.
         | 
| 10764 11008 | 
             
                    # Corresponds to the JSON property `warning`
         | 
| 10765 | 
            -
                    # @return [Google::Apis::ComputeAlpha:: | 
| 11009 | 
            +
                    # @return [Google::Apis::ComputeAlpha::HealthCheckServicesList::Warning]
         | 
| 10766 11010 | 
             
                    attr_accessor :warning
         | 
| 10767 11011 |  | 
| 10768 11012 | 
             
                    def initialize(**args)
         | 
| @@ -10776,7 +11020,6 @@ module Google | |
| 10776 11020 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 10777 11021 | 
             
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 10778 11022 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 10779 | 
            -
                      @unreachables = args[:unreachables] if args.key?(:unreachables)
         | 
| 10780 11023 | 
             
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 10781 11024 | 
             
                    end
         | 
| 10782 11025 |  | 
| @@ -10793,7 +11036,221 @@ module Google | |
| 10793 11036 | 
             
                      # [Output Only] Metadata about this warning in key: value format. For example:
         | 
| 10794 11037 | 
             
                      # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 10795 11038 | 
             
                      # Corresponds to the JSON property `data`
         | 
| 10796 | 
            -
                      # @return [Array<Google::Apis::ComputeAlpha:: | 
| 11039 | 
            +
                      # @return [Array<Google::Apis::ComputeAlpha::HealthCheckServicesList::Warning::Datum>]
         | 
| 11040 | 
            +
                      attr_accessor :data
         | 
| 11041 | 
            +
                    
         | 
| 11042 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 11043 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 11044 | 
            +
                      # @return [String]
         | 
| 11045 | 
            +
                      attr_accessor :message
         | 
| 11046 | 
            +
                    
         | 
| 11047 | 
            +
                      def initialize(**args)
         | 
| 11048 | 
            +
                         update!(**args)
         | 
| 11049 | 
            +
                      end
         | 
| 11050 | 
            +
                    
         | 
| 11051 | 
            +
                      # Update properties of this object
         | 
| 11052 | 
            +
                      def update!(**args)
         | 
| 11053 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 11054 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 11055 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 11056 | 
            +
                      end
         | 
| 11057 | 
            +
                      
         | 
| 11058 | 
            +
                      # 
         | 
| 11059 | 
            +
                      class Datum
         | 
| 11060 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 11061 | 
            +
                      
         | 
| 11062 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 11063 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 11064 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 11065 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 11066 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 11067 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 11068 | 
            +
                        # for IP forwarding).
         | 
| 11069 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 11070 | 
            +
                        # @return [String]
         | 
| 11071 | 
            +
                        attr_accessor :key
         | 
| 11072 | 
            +
                      
         | 
| 11073 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 11074 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 11075 | 
            +
                        # @return [String]
         | 
| 11076 | 
            +
                        attr_accessor :value
         | 
| 11077 | 
            +
                      
         | 
| 11078 | 
            +
                        def initialize(**args)
         | 
| 11079 | 
            +
                           update!(**args)
         | 
| 11080 | 
            +
                        end
         | 
| 11081 | 
            +
                      
         | 
| 11082 | 
            +
                        # Update properties of this object
         | 
| 11083 | 
            +
                        def update!(**args)
         | 
| 11084 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 11085 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 11086 | 
            +
                        end
         | 
| 11087 | 
            +
                      end
         | 
| 11088 | 
            +
                    end
         | 
| 11089 | 
            +
                  end
         | 
| 11090 | 
            +
                  
         | 
| 11091 | 
            +
                  # 
         | 
| 11092 | 
            +
                  class HealthCheckServicesScopedList
         | 
| 11093 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 11094 | 
            +
                  
         | 
| 11095 | 
            +
                    # A list of HealthCheckServices contained in this scope.
         | 
| 11096 | 
            +
                    # Corresponds to the JSON property `resources`
         | 
| 11097 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::HealthCheckService>]
         | 
| 11098 | 
            +
                    attr_accessor :resources
         | 
| 11099 | 
            +
                  
         | 
| 11100 | 
            +
                    # Informational warning which replaces the list of backend services when the
         | 
| 11101 | 
            +
                    # list is empty.
         | 
| 11102 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 11103 | 
            +
                    # @return [Google::Apis::ComputeAlpha::HealthCheckServicesScopedList::Warning]
         | 
| 11104 | 
            +
                    attr_accessor :warning
         | 
| 11105 | 
            +
                  
         | 
| 11106 | 
            +
                    def initialize(**args)
         | 
| 11107 | 
            +
                       update!(**args)
         | 
| 11108 | 
            +
                    end
         | 
| 11109 | 
            +
                  
         | 
| 11110 | 
            +
                    # Update properties of this object
         | 
| 11111 | 
            +
                    def update!(**args)
         | 
| 11112 | 
            +
                      @resources = args[:resources] if args.key?(:resources)
         | 
| 11113 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 11114 | 
            +
                    end
         | 
| 11115 | 
            +
                    
         | 
| 11116 | 
            +
                    # Informational warning which replaces the list of backend services when the
         | 
| 11117 | 
            +
                    # list is empty.
         | 
| 11118 | 
            +
                    class Warning
         | 
| 11119 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 11120 | 
            +
                    
         | 
| 11121 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 11122 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 11123 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 11124 | 
            +
                      # @return [String]
         | 
| 11125 | 
            +
                      attr_accessor :code
         | 
| 11126 | 
            +
                    
         | 
| 11127 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example:
         | 
| 11128 | 
            +
                      # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 11129 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 11130 | 
            +
                      # @return [Array<Google::Apis::ComputeAlpha::HealthCheckServicesScopedList::Warning::Datum>]
         | 
| 11131 | 
            +
                      attr_accessor :data
         | 
| 11132 | 
            +
                    
         | 
| 11133 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 11134 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 11135 | 
            +
                      # @return [String]
         | 
| 11136 | 
            +
                      attr_accessor :message
         | 
| 11137 | 
            +
                    
         | 
| 11138 | 
            +
                      def initialize(**args)
         | 
| 11139 | 
            +
                         update!(**args)
         | 
| 11140 | 
            +
                      end
         | 
| 11141 | 
            +
                    
         | 
| 11142 | 
            +
                      # Update properties of this object
         | 
| 11143 | 
            +
                      def update!(**args)
         | 
| 11144 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 11145 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 11146 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 11147 | 
            +
                      end
         | 
| 11148 | 
            +
                      
         | 
| 11149 | 
            +
                      # 
         | 
| 11150 | 
            +
                      class Datum
         | 
| 11151 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 11152 | 
            +
                      
         | 
| 11153 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 11154 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 11155 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 11156 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 11157 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 11158 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 11159 | 
            +
                        # for IP forwarding).
         | 
| 11160 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 11161 | 
            +
                        # @return [String]
         | 
| 11162 | 
            +
                        attr_accessor :key
         | 
| 11163 | 
            +
                      
         | 
| 11164 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 11165 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 11166 | 
            +
                        # @return [String]
         | 
| 11167 | 
            +
                        attr_accessor :value
         | 
| 11168 | 
            +
                      
         | 
| 11169 | 
            +
                        def initialize(**args)
         | 
| 11170 | 
            +
                           update!(**args)
         | 
| 11171 | 
            +
                        end
         | 
| 11172 | 
            +
                      
         | 
| 11173 | 
            +
                        # Update properties of this object
         | 
| 11174 | 
            +
                        def update!(**args)
         | 
| 11175 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 11176 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 11177 | 
            +
                        end
         | 
| 11178 | 
            +
                      end
         | 
| 11179 | 
            +
                    end
         | 
| 11180 | 
            +
                  end
         | 
| 11181 | 
            +
                  
         | 
| 11182 | 
            +
                  # 
         | 
| 11183 | 
            +
                  class HealthChecksAggregatedList
         | 
| 11184 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 11185 | 
            +
                  
         | 
| 11186 | 
            +
                    # [Output Only] Unique identifier for the resource; defined by the server.
         | 
| 11187 | 
            +
                    # Corresponds to the JSON property `id`
         | 
| 11188 | 
            +
                    # @return [String]
         | 
| 11189 | 
            +
                    attr_accessor :id
         | 
| 11190 | 
            +
                  
         | 
| 11191 | 
            +
                    # A list of HealthChecksScopedList resources.
         | 
| 11192 | 
            +
                    # Corresponds to the JSON property `items`
         | 
| 11193 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::HealthChecksScopedList>]
         | 
| 11194 | 
            +
                    attr_accessor :items
         | 
| 11195 | 
            +
                  
         | 
| 11196 | 
            +
                    # Type of resource.
         | 
| 11197 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 11198 | 
            +
                    # @return [String]
         | 
| 11199 | 
            +
                    attr_accessor :kind
         | 
| 11200 | 
            +
                  
         | 
| 11201 | 
            +
                    # [Output Only] This token allows you to get the next page of results for list
         | 
| 11202 | 
            +
                    # requests. If the number of results is larger than maxResults, use the
         | 
| 11203 | 
            +
                    # nextPageToken as a value for the query parameter pageToken in the next list
         | 
| 11204 | 
            +
                    # request. Subsequent list requests will have their own nextPageToken to
         | 
| 11205 | 
            +
                    # continue paging through the results.
         | 
| 11206 | 
            +
                    # Corresponds to the JSON property `nextPageToken`
         | 
| 11207 | 
            +
                    # @return [String]
         | 
| 11208 | 
            +
                    attr_accessor :next_page_token
         | 
| 11209 | 
            +
                  
         | 
| 11210 | 
            +
                    # [Output Only] Server-defined URL for this resource.
         | 
| 11211 | 
            +
                    # Corresponds to the JSON property `selfLink`
         | 
| 11212 | 
            +
                    # @return [String]
         | 
| 11213 | 
            +
                    attr_accessor :self_link
         | 
| 11214 | 
            +
                  
         | 
| 11215 | 
            +
                    # [Output Only] Unreachable resources.
         | 
| 11216 | 
            +
                    # Corresponds to the JSON property `unreachables`
         | 
| 11217 | 
            +
                    # @return [Array<String>]
         | 
| 11218 | 
            +
                    attr_accessor :unreachables
         | 
| 11219 | 
            +
                  
         | 
| 11220 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 11221 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 11222 | 
            +
                    # @return [Google::Apis::ComputeAlpha::HealthChecksAggregatedList::Warning]
         | 
| 11223 | 
            +
                    attr_accessor :warning
         | 
| 11224 | 
            +
                  
         | 
| 11225 | 
            +
                    def initialize(**args)
         | 
| 11226 | 
            +
                       update!(**args)
         | 
| 11227 | 
            +
                    end
         | 
| 11228 | 
            +
                  
         | 
| 11229 | 
            +
                    # Update properties of this object
         | 
| 11230 | 
            +
                    def update!(**args)
         | 
| 11231 | 
            +
                      @id = args[:id] if args.key?(:id)
         | 
| 11232 | 
            +
                      @items = args[:items] if args.key?(:items)
         | 
| 11233 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 11234 | 
            +
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 11235 | 
            +
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 11236 | 
            +
                      @unreachables = args[:unreachables] if args.key?(:unreachables)
         | 
| 11237 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 11238 | 
            +
                    end
         | 
| 11239 | 
            +
                    
         | 
| 11240 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 11241 | 
            +
                    class Warning
         | 
| 11242 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 11243 | 
            +
                    
         | 
| 11244 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 11245 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 11246 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 11247 | 
            +
                      # @return [String]
         | 
| 11248 | 
            +
                      attr_accessor :code
         | 
| 11249 | 
            +
                    
         | 
| 11250 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example:
         | 
| 11251 | 
            +
                      # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 11252 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 11253 | 
            +
                      # @return [Array<Google::Apis::ComputeAlpha::HealthChecksAggregatedList::Warning::Datum>]
         | 
| 10797 11254 | 
             
                      attr_accessor :data
         | 
| 10798 11255 |  | 
| 10799 11256 | 
             
                      # [Output Only] A human-readable description of the warning code.
         | 
| @@ -10955,7 +11412,9 @@ module Google | |
| 10955 11412 | 
             
                    # @return [String]
         | 
| 10956 11413 | 
             
                    attr_accessor :instance
         | 
| 10957 11414 |  | 
| 10958 | 
            -
                    #  | 
| 11415 | 
            +
                    # For target pool based Network Load Balancing, it indicates the forwarding rule'
         | 
| 11416 | 
            +
                    # s IP address assigned to this instance. For other types of load balancing, the
         | 
| 11417 | 
            +
                    # field indicates VM internal ip.
         | 
| 10959 11418 | 
             
                    # Corresponds to the JSON property `ipAddress`
         | 
| 10960 11419 | 
             
                    # @return [String]
         | 
| 10961 11420 | 
             
                    attr_accessor :ip_address
         | 
| @@ -11314,8 +11773,8 @@ module Google | |
| 11314 11773 | 
             
                    attr_accessor :range_match
         | 
| 11315 11774 |  | 
| 11316 11775 | 
             
                    # The value of the header must match the regular expression specified in
         | 
| 11317 | 
            -
                    # regexMatch. For regular expression grammar, please see:   | 
| 11318 | 
            -
                    #  | 
| 11776 | 
            +
                    # regexMatch. For regular expression grammar, please see:  github.com/google/re2/
         | 
| 11777 | 
            +
                    # wiki/Syntax
         | 
| 11319 11778 | 
             
                    # For matching against a port specified in the HTTP request, use a headerMatch
         | 
| 11320 11779 | 
             
                    # with headerName set to PORT and a regular expression that satisfies the
         | 
| 11321 11780 | 
             
                    # RFC2616 Host header's port specifier.
         | 
| @@ -11644,7 +12103,7 @@ module Google | |
| 11644 12103 |  | 
| 11645 12104 | 
             
                    # The queryParameterMatch matches if the value of the parameter matches the
         | 
| 11646 12105 | 
             
                    # regular expression specified by regexMatch. For the regular expression grammar,
         | 
| 11647 | 
            -
                    # please see  | 
| 12106 | 
            +
                    # please see github.com/google/re2/wiki/Syntax
         | 
| 11648 12107 | 
             
                    # Only one of presentMatch, exactMatch or regexMatch must be set.
         | 
| 11649 12108 | 
             
                    # Note that regexMatch only applies when the loadBalancingScheme is set to
         | 
| 11650 12109 | 
             
                    # INTERNAL_SELF_MANAGED.
         | 
| @@ -11823,6 +12282,14 @@ module Google | |
| 11823 12282 | 
             
                    # @return [Google::Apis::ComputeAlpha::HttpFaultInjection]
         | 
| 11824 12283 | 
             
                    attr_accessor :fault_injection_policy
         | 
| 11825 12284 |  | 
| 12285 | 
            +
                    # A Duration represents a fixed-length span of time represented as a count of
         | 
| 12286 | 
            +
                    # seconds and fractions of seconds at nanosecond resolution. It is independent
         | 
| 12287 | 
            +
                    # of any calendar and concepts like "day" or "month". Range is approximately 10,
         | 
| 12288 | 
            +
                    # 000 years.
         | 
| 12289 | 
            +
                    # Corresponds to the JSON property `maxStreamDuration`
         | 
| 12290 | 
            +
                    # @return [Google::Apis::ComputeAlpha::Duration]
         | 
| 12291 | 
            +
                    attr_accessor :max_stream_duration
         | 
| 12292 | 
            +
                  
         | 
| 11826 12293 | 
             
                    # A policy that specifies how requests intended for the route's backends are
         | 
| 11827 12294 | 
             
                    # shadowed to a separate mirrored backend service. Loadbalancer does not wait
         | 
| 11828 12295 | 
             
                    # for responses from the shadow service. Prior to sending traffic to the shadow
         | 
| @@ -11871,6 +12338,7 @@ module Google | |
| 11871 12338 | 
             
                    def update!(**args)
         | 
| 11872 12339 | 
             
                      @cors_policy = args[:cors_policy] if args.key?(:cors_policy)
         | 
| 11873 12340 | 
             
                      @fault_injection_policy = args[:fault_injection_policy] if args.key?(:fault_injection_policy)
         | 
| 12341 | 
            +
                      @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration)
         | 
| 11874 12342 | 
             
                      @request_mirror_policy = args[:request_mirror_policy] if args.key?(:request_mirror_policy)
         | 
| 11875 12343 | 
             
                      @retry_policy = args[:retry_policy] if args.key?(:retry_policy)
         | 
| 11876 12344 | 
             
                      @timeout = args[:timeout] if args.key?(:timeout)
         | 
| @@ -12057,7 +12525,7 @@ module Google | |
| 12057 12525 | 
             
                    # For satisfying the matchRule condition, the path of the request must satisfy
         | 
| 12058 12526 | 
             
                    # the regular expression specified in regexMatch after removing any query
         | 
| 12059 12527 | 
             
                    # parameters and anchor supplied with the original URL. For regular expression
         | 
| 12060 | 
            -
                    # grammar please see  | 
| 12528 | 
            +
                    # grammar please see github.com/google/re2/wiki/Syntax
         | 
| 12061 12529 | 
             
                    # Only one of prefixMatch, fullPathMatch or regexMatch must be specified.
         | 
| 12062 12530 | 
             
                    # Note that regexMatch only applies to Loadbalancers that have their
         | 
| 12063 12531 | 
             
                    # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
         | 
| @@ -12424,6 +12892,17 @@ module Google | |
| 12424 12892 | 
             
                    # @return [Google::Apis::ComputeAlpha::Image::RawDisk]
         | 
| 12425 12893 | 
             
                    attr_accessor :raw_disk
         | 
| 12426 12894 |  | 
| 12895 | 
            +
                    # A rollout policy configuration.
         | 
| 12896 | 
            +
                    # Corresponds to the JSON property `rolloutOverride`
         | 
| 12897 | 
            +
                    # @return [Google::Apis::ComputeAlpha::RolloutPolicy]
         | 
| 12898 | 
            +
                    attr_accessor :rollout_override
         | 
| 12899 | 
            +
                  
         | 
| 12900 | 
            +
                    # [Output Only] Reserved for future use.
         | 
| 12901 | 
            +
                    # Corresponds to the JSON property `satisfiesPzs`
         | 
| 12902 | 
            +
                    # @return [Boolean]
         | 
| 12903 | 
            +
                    attr_accessor :satisfies_pzs
         | 
| 12904 | 
            +
                    alias_method :satisfies_pzs?, :satisfies_pzs
         | 
| 12905 | 
            +
                  
         | 
| 12427 12906 | 
             
                    # [Output Only] Server-defined URL for the resource.
         | 
| 12428 12907 | 
             
                    # Corresponds to the JSON property `selfLink`
         | 
| 12429 12908 | 
             
                    # @return [String]
         | 
| @@ -12555,6 +13034,8 @@ module Google | |
| 12555 13034 | 
             
                      @licenses = args[:licenses] if args.key?(:licenses)
         | 
| 12556 13035 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 12557 13036 | 
             
                      @raw_disk = args[:raw_disk] if args.key?(:raw_disk)
         | 
| 13037 | 
            +
                      @rollout_override = args[:rollout_override] if args.key?(:rollout_override)
         | 
| 13038 | 
            +
                      @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
         | 
| 12558 13039 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 12559 13040 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 12560 13041 | 
             
                      @shielded_instance_initial_state = args[:shielded_instance_initial_state] if args.key?(:shielded_instance_initial_state)
         | 
| @@ -12608,6 +13089,27 @@ module Google | |
| 12608 13089 | 
             
                    end
         | 
| 12609 13090 | 
             
                  end
         | 
| 12610 13091 |  | 
| 13092 | 
            +
                  # 
         | 
| 13093 | 
            +
                  class ImageFamilyView
         | 
| 13094 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 13095 | 
            +
                  
         | 
| 13096 | 
            +
                    # Represents an Image resource.
         | 
| 13097 | 
            +
                    # You can use images to create boot disks for your VM instances. For more
         | 
| 13098 | 
            +
                    # information, read Images. (== resource_for `$api_version`.images ==)
         | 
| 13099 | 
            +
                    # Corresponds to the JSON property `image`
         | 
| 13100 | 
            +
                    # @return [Google::Apis::ComputeAlpha::Image]
         | 
| 13101 | 
            +
                    attr_accessor :image
         | 
| 13102 | 
            +
                  
         | 
| 13103 | 
            +
                    def initialize(**args)
         | 
| 13104 | 
            +
                       update!(**args)
         | 
| 13105 | 
            +
                    end
         | 
| 13106 | 
            +
                  
         | 
| 13107 | 
            +
                    # Update properties of this object
         | 
| 13108 | 
            +
                    def update!(**args)
         | 
| 13109 | 
            +
                      @image = args[:image] if args.key?(:image)
         | 
| 13110 | 
            +
                    end
         | 
| 13111 | 
            +
                  end
         | 
| 13112 | 
            +
                  
         | 
| 12611 13113 | 
             
                  # Contains a list of images.
         | 
| 12612 13114 | 
             
                  class ImageList
         | 
| 12613 13115 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -13255,13 +13757,20 @@ module Google | |
| 13255 13757 | 
             
                    # @return [Array<String>]
         | 
| 13256 13758 | 
             
                    attr_accessor :resource_policies
         | 
| 13257 13759 |  | 
| 13760 | 
            +
                    # Contains output only fields. Use this sub-message for actual values set on
         | 
| 13761 | 
            +
                    # Instance attributes as compared to the value requested by the user (intent) in
         | 
| 13762 | 
            +
                    # their instance CRUD calls.
         | 
| 13763 | 
            +
                    # Corresponds to the JSON property `resourceStatus`
         | 
| 13764 | 
            +
                    # @return [Google::Apis::ComputeAlpha::ResourceStatus]
         | 
| 13765 | 
            +
                    attr_accessor :resource_status
         | 
| 13766 | 
            +
                  
         | 
| 13258 13767 | 
             
                    # [Output Only] Reserved for future use.
         | 
| 13259 13768 | 
             
                    # Corresponds to the JSON property `satisfiesPzs`
         | 
| 13260 13769 | 
             
                    # @return [Boolean]
         | 
| 13261 13770 | 
             
                    attr_accessor :satisfies_pzs
         | 
| 13262 13771 | 
             
                    alias_method :satisfies_pzs?, :satisfies_pzs
         | 
| 13263 13772 |  | 
| 13264 | 
            -
                    # Sets the scheduling options for an Instance. NextID:  | 
| 13773 | 
            +
                    # Sets the scheduling options for an Instance. NextID: 17
         | 
| 13265 13774 | 
             
                    # Corresponds to the JSON property `scheduling`
         | 
| 13266 13775 | 
             
                    # @return [Google::Apis::ComputeAlpha::Scheduling]
         | 
| 13267 13776 | 
             
                    attr_accessor :scheduling
         | 
| @@ -13324,7 +13833,8 @@ module Google | |
| 13324 13833 | 
             
                    # @return [String]
         | 
| 13325 13834 | 
             
                    attr_accessor :source_machine_image
         | 
| 13326 13835 |  | 
| 13327 | 
            -
                    # Source  | 
| 13836 | 
            +
                    # Source machine image encryption key when creating an instance from a machine
         | 
| 13837 | 
            +
                    # image.
         | 
| 13328 13838 | 
             
                    # Corresponds to the JSON property `sourceMachineImageEncryptionKey`
         | 
| 13329 13839 | 
             
                    # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
         | 
| 13330 13840 | 
             
                    attr_accessor :source_machine_image_encryption_key
         | 
| @@ -13404,6 +13914,7 @@ module Google | |
| 13404 13914 | 
             
                      @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
         | 
| 13405 13915 | 
             
                      @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
         | 
| 13406 13916 | 
             
                      @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
         | 
| 13917 | 
            +
                      @resource_status = args[:resource_status] if args.key?(:resource_status)
         | 
| 13407 13918 | 
             
                      @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
         | 
| 13408 13919 | 
             
                      @scheduling = args[:scheduling] if args.key?(:scheduling)
         | 
| 13409 13920 | 
             
                      @secure_labels = args[:secure_labels] if args.key?(:secure_labels)
         | 
| @@ -16094,7 +16605,7 @@ module Google | |
| 16094 16605 | 
             
                    # @return [Array<String>]
         | 
| 16095 16606 | 
             
                    attr_accessor :resource_policies
         | 
| 16096 16607 |  | 
| 16097 | 
            -
                    # Sets the scheduling options for an Instance. NextID:  | 
| 16608 | 
            +
                    # Sets the scheduling options for an Instance. NextID: 17
         | 
| 16098 16609 | 
             
                    # Corresponds to the JSON property `scheduling`
         | 
| 16099 16610 | 
             
                    # @return [Google::Apis::ComputeAlpha::Scheduling]
         | 
| 16100 16611 | 
             
                    attr_accessor :scheduling
         | 
| @@ -16919,6 +17430,12 @@ module Google | |
| 16919 17430 | 
             
                    # @return [String]
         | 
| 16920 17431 | 
             
                    attr_accessor :region
         | 
| 16921 17432 |  | 
| 17433 | 
            +
                    # [Output Only] Reserved for future use.
         | 
| 17434 | 
            +
                    # Corresponds to the JSON property `satisfiesPzs`
         | 
| 17435 | 
            +
                    # @return [Boolean]
         | 
| 17436 | 
            +
                    attr_accessor :satisfies_pzs
         | 
| 17437 | 
            +
                    alias_method :satisfies_pzs?, :satisfies_pzs
         | 
| 17438 | 
            +
                  
         | 
| 16922 17439 | 
             
                    # [Output Only] Server-defined URL for the resource.
         | 
| 16923 17440 | 
             
                    # Corresponds to the JSON property `selfLink`
         | 
| 16924 17441 | 
             
                    # @return [String]
         | 
| @@ -16934,8 +17451,13 @@ module Google | |
| 16934 17451 | 
             
                    # created. This can be a full or valid partial URL. For example, the following
         | 
| 16935 17452 | 
             
                    # are valid values:
         | 
| 16936 17453 | 
             
                    # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
         | 
| 17454 | 
            +
                    # 
         | 
| 17455 | 
            +
                    # - https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/
         | 
| 17456 | 
            +
                    # disk
         | 
| 16937 17457 | 
             
                    # - projects/project/zones/zone/disks/disk
         | 
| 17458 | 
            +
                    # - projects/project/regions/region/disks/disk
         | 
| 16938 17459 | 
             
                    # - zones/zone/disks/disk
         | 
| 17460 | 
            +
                    # - regions/region/disks/disk
         | 
| 16939 17461 | 
             
                    # Corresponds to the JSON property `sourceDisk`
         | 
| 16940 17462 | 
             
                    # @return [String]
         | 
| 16941 17463 | 
             
                    attr_accessor :source_disk
         | 
| @@ -16976,6 +17498,7 @@ module Google | |
| 16976 17498 | 
             
                      @labels = args[:labels] if args.key?(:labels)
         | 
| 16977 17499 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 16978 17500 | 
             
                      @region = args[:region] if args.key?(:region)
         | 
| 17501 | 
            +
                      @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
         | 
| 16979 17502 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 16980 17503 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 16981 17504 | 
             
                      @source_disk = args[:source_disk] if args.key?(:source_disk)
         | 
| @@ -17492,8 +18015,8 @@ module Google | |
| 17492 18015 | 
             
                    # type of attachment.
         | 
| 17493 18016 | 
             
                    # - IPSEC indicates that the attachment carries only traffic encrypted by an
         | 
| 17494 18017 | 
             
                    # IPsec device such as an HA VPN gateway. VMs cannot directly send traffic to,
         | 
| 17495 | 
            -
                    # or receive traffic from, such an attachment. To use IPsec  | 
| 17496 | 
            -
                    # create the attachment using this option.
         | 
| 18018 | 
            +
                    # or receive traffic from, such an attachment. To use IPsec-encrypted Cloud
         | 
| 18019 | 
            +
                    # Interconnect, create the attachment using this option.
         | 
| 17497 18020 | 
             
                    # Corresponds to the JSON property `encryption`
         | 
| 17498 18021 | 
             
                    # @return [String]
         | 
| 17499 18022 | 
             
                    attr_accessor :encryption
         | 
| @@ -19878,6 +20401,12 @@ module Google | |
| 19878 20401 | 
             
                    # @return [String]
         | 
| 19879 20402 | 
             
                    attr_accessor :name
         | 
| 19880 20403 |  | 
| 20404 | 
            +
                    # [Output Only] Reserved for future use.
         | 
| 20405 | 
            +
                    # Corresponds to the JSON property `satisfiesPzs`
         | 
| 20406 | 
            +
                    # @return [Boolean]
         | 
| 20407 | 
            +
                    attr_accessor :satisfies_pzs
         | 
| 20408 | 
            +
                    alias_method :satisfies_pzs?, :satisfies_pzs
         | 
| 20409 | 
            +
                  
         | 
| 19881 20410 | 
             
                    # [Output Only] The URL for this machine image. The server defines this URL.
         | 
| 19882 20411 | 
             
                    # Corresponds to the JSON property `selfLink`
         | 
| 19883 20412 | 
             
                    # @return [String]
         | 
| @@ -19940,6 +20469,7 @@ module Google | |
| 19940 20469 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 19941 20470 | 
             
                      @machine_image_encryption_key = args[:machine_image_encryption_key] if args.key?(:machine_image_encryption_key)
         | 
| 19942 20471 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 20472 | 
            +
                      @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
         | 
| 19943 20473 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 19944 20474 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 19945 20475 | 
             
                      @source_disk_encryption_keys = args[:source_disk_encryption_keys] if args.key?(:source_disk_encryption_keys)
         | 
| @@ -21156,9 +21686,8 @@ module Google | |
| 21156 21686 | 
             
                    # @return [String]
         | 
| 21157 21687 | 
             
                    attr_accessor :ip_address
         | 
| 21158 21688 |  | 
| 21159 | 
            -
                    # Optional port number of network endpoint. If not specified  | 
| 21160 | 
            -
                    #  | 
| 21161 | 
            -
                    # the network endpoint group will be used.
         | 
| 21689 | 
            +
                    # Optional port number of network endpoint. If not specified, the defaultPort
         | 
| 21690 | 
            +
                    # for the network endpoint group will be used.
         | 
| 21162 21691 | 
             
                    # Corresponds to the JSON property `port`
         | 
| 21163 21692 | 
             
                    # @return [Fixnum]
         | 
| 21164 21693 | 
             
                    attr_accessor :port
         | 
| @@ -21294,6 +21823,14 @@ module Google | |
| 21294 21823 | 
             
                    # @return [String]
         | 
| 21295 21824 | 
             
                    attr_accessor :self_link_with_id
         | 
| 21296 21825 |  | 
| 21826 | 
            +
                    # Configuration for a Serverless Deployment network endpoint group (NEG). The
         | 
| 21827 | 
            +
                    # platform must be provided.
         | 
| 21828 | 
            +
                    # Note: The target backend service must be in the same project and located in
         | 
| 21829 | 
            +
                    # the same region as the Serverless NEG.
         | 
| 21830 | 
            +
                    # Corresponds to the JSON property `serverlessDeployment`
         | 
| 21831 | 
            +
                    # @return [Google::Apis::ComputeAlpha::NetworkEndpointGroupServerlessDeployment]
         | 
| 21832 | 
            +
                    attr_accessor :serverless_deployment
         | 
| 21833 | 
            +
                  
         | 
| 21297 21834 | 
             
                    # [Output only] Number of network endpoints in the network endpoint group.
         | 
| 21298 21835 | 
             
                    # Corresponds to the JSON property `size`
         | 
| 21299 21836 | 
             
                    # @return [Fixnum]
         | 
| @@ -21338,6 +21875,7 @@ module Google | |
| 21338 21875 | 
             
                      @region = args[:region] if args.key?(:region)
         | 
| 21339 21876 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 21340 21877 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 21878 | 
            +
                      @serverless_deployment = args[:serverless_deployment] if args.key?(:serverless_deployment)
         | 
| 21341 21879 | 
             
                      @size = args[:size] if args.key?(:size)
         | 
| 21342 21880 | 
             
                      @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
         | 
| 21343 21881 | 
             
                      @type = args[:type] if args.key?(:type)
         | 
| @@ -21757,6 +22295,72 @@ module Google | |
| 21757 22295 | 
             
                    end
         | 
| 21758 22296 | 
             
                  end
         | 
| 21759 22297 |  | 
| 22298 | 
            +
                  # Configuration for a Serverless Deployment network endpoint group (NEG). The
         | 
| 22299 | 
            +
                  # platform must be provided.
         | 
| 22300 | 
            +
                  # Note: The target backend service must be in the same project and located in
         | 
| 22301 | 
            +
                  # the same region as the Serverless NEG.
         | 
| 22302 | 
            +
                  class NetworkEndpointGroupServerlessDeployment
         | 
| 22303 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 22304 | 
            +
                  
         | 
| 22305 | 
            +
                    # The platform of the backend target(s) of this NEG. Possible values include:
         | 
| 22306 | 
            +
                    # 
         | 
| 22307 | 
            +
                    # - apigateway.googleapis.com
         | 
| 22308 | 
            +
                    # - appengine.googleapies.com
         | 
| 22309 | 
            +
                    # - cloudfunctions.googleapis.com
         | 
| 22310 | 
            +
                    # - run.googleapis.com
         | 
| 22311 | 
            +
                    # Corresponds to the JSON property `platform`
         | 
| 22312 | 
            +
                    # @return [String]
         | 
| 22313 | 
            +
                    attr_accessor :platform
         | 
| 22314 | 
            +
                  
         | 
| 22315 | 
            +
                    # The user-defined name of the workload/instance. This value must be provided
         | 
| 22316 | 
            +
                    # explicitly or in the urlMask. The resource identified by this value is
         | 
| 22317 | 
            +
                    # platform-specific and is as follows:
         | 
| 22318 | 
            +
                    # 
         | 
| 22319 | 
            +
                    # - API Gateway: The gateway id
         | 
| 22320 | 
            +
                    # - AppEngine: The service name
         | 
| 22321 | 
            +
                    # - Cloud Functions: The function name
         | 
| 22322 | 
            +
                    # - Cloud Run: The service name
         | 
| 22323 | 
            +
                    # Corresponds to the JSON property `resource`
         | 
| 22324 | 
            +
                    # @return [String]
         | 
| 22325 | 
            +
                    attr_accessor :resource
         | 
| 22326 | 
            +
                  
         | 
| 22327 | 
            +
                    # A template to parse platform-specific fields from a request URL. URL mask
         | 
| 22328 | 
            +
                    # allows for routing to multiple services on the same serverless platform
         | 
| 22329 | 
            +
                    # without having to create multiple Network Endpoint Groups and backend services.
         | 
| 22330 | 
            +
                    # The fields parsed by this template is platform-specific and are as follows:
         | 
| 22331 | 
            +
                    # 
         | 
| 22332 | 
            +
                    # - API Gateway: The gateway id
         | 
| 22333 | 
            +
                    # - AppEngine: The service and version
         | 
| 22334 | 
            +
                    # - Cloud Functions: The function
         | 
| 22335 | 
            +
                    # - Cloud Run: The service and tag
         | 
| 22336 | 
            +
                    # Corresponds to the JSON property `urlMask`
         | 
| 22337 | 
            +
                    # @return [String]
         | 
| 22338 | 
            +
                    attr_accessor :url_mask
         | 
| 22339 | 
            +
                  
         | 
| 22340 | 
            +
                    # The optional resource version. The version identified by this value is as
         | 
| 22341 | 
            +
                    # platform-specific and is follows:
         | 
| 22342 | 
            +
                    # 
         | 
| 22343 | 
            +
                    # - API Gateway: Unused
         | 
| 22344 | 
            +
                    # - AppEngine: The service version
         | 
| 22345 | 
            +
                    # - Cloud Functions: Unused
         | 
| 22346 | 
            +
                    # - Cloud Run: The service tag
         | 
| 22347 | 
            +
                    # Corresponds to the JSON property `version`
         | 
| 22348 | 
            +
                    # @return [String]
         | 
| 22349 | 
            +
                    attr_accessor :version
         | 
| 22350 | 
            +
                  
         | 
| 22351 | 
            +
                    def initialize(**args)
         | 
| 22352 | 
            +
                       update!(**args)
         | 
| 22353 | 
            +
                    end
         | 
| 22354 | 
            +
                  
         | 
| 22355 | 
            +
                    # Update properties of this object
         | 
| 22356 | 
            +
                    def update!(**args)
         | 
| 22357 | 
            +
                      @platform = args[:platform] if args.key?(:platform)
         | 
| 22358 | 
            +
                      @resource = args[:resource] if args.key?(:resource)
         | 
| 22359 | 
            +
                      @url_mask = args[:url_mask] if args.key?(:url_mask)
         | 
| 22360 | 
            +
                      @version = args[:version] if args.key?(:version)
         | 
| 22361 | 
            +
                    end
         | 
| 22362 | 
            +
                  end
         | 
| 22363 | 
            +
                  
         | 
| 21760 22364 | 
             
                  # 
         | 
| 21761 22365 | 
             
                  class NetworkEndpointGroupsAttachEndpointsRequest
         | 
| 21762 22366 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -22092,8 +22696,9 @@ module Google | |
| 22092 22696 |  | 
| 22093 22697 | 
             
                    # Fingerprint hash of contents stored in this network interface. This field will
         | 
| 22094 22698 | 
             
                    # be ignored when inserting an Instance or adding a NetworkInterface. An up-to-
         | 
| 22095 | 
            -
                    # date fingerprint must be provided in order to update the NetworkInterface | 
| 22096 | 
            -
                    #  | 
| 22699 | 
            +
                    # date fingerprint must be provided in order to update the NetworkInterface. The
         | 
| 22700 | 
            +
                    # request will fail with error 400 Bad Request if the fingerprint is not
         | 
| 22701 | 
            +
                    # provided, or 412 Precondition Failed if the fingerprint is out of date.
         | 
| 22097 22702 | 
             
                    # Corresponds to the JSON property `fingerprint`
         | 
| 22098 22703 | 
             
                    # NOTE: Values are automatically base64 encoded/decoded in the client library.
         | 
| 22099 22704 | 
             
                    # @return [String]
         | 
| @@ -22176,6 +22781,14 @@ module Google | |
| 22176 22781 | 
             
                    # @return [String]
         | 
| 22177 22782 | 
             
                    attr_accessor :stack_type
         | 
| 22178 22783 |  | 
| 22784 | 
            +
                    # SubInterfaces help enable L2 communication for the instance over subnetworks
         | 
| 22785 | 
            +
                    # that support L2. Every network interface will get a default untagged (vlan not
         | 
| 22786 | 
            +
                    # specified) subinterface. Users can specify additional tagged subinterfaces
         | 
| 22787 | 
            +
                    # which are sub-fields to the Network Interface.
         | 
| 22788 | 
            +
                    # Corresponds to the JSON property `subinterfaces`
         | 
| 22789 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::NetworkInterfaceSubInterface>]
         | 
| 22790 | 
            +
                    attr_accessor :subinterfaces
         | 
| 22791 | 
            +
                  
         | 
| 22179 22792 | 
             
                    # The URL of the Subnetwork resource for this instance. If the network resource
         | 
| 22180 22793 | 
             
                    # is in legacy mode, do not specify this field. If the network is in auto subnet
         | 
| 22181 22794 | 
             
                    # mode, specifying the subnetwork is optional. If the network is in custom
         | 
| @@ -22209,7 +22822,46 @@ module Google | |
| 22209 22822 | 
             
                      @nic_type = args[:nic_type] if args.key?(:nic_type)
         | 
| 22210 22823 | 
             
                      @queue_count = args[:queue_count] if args.key?(:queue_count)
         | 
| 22211 22824 | 
             
                      @stack_type = args[:stack_type] if args.key?(:stack_type)
         | 
| 22825 | 
            +
                      @subinterfaces = args[:subinterfaces] if args.key?(:subinterfaces)
         | 
| 22826 | 
            +
                      @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
         | 
| 22827 | 
            +
                    end
         | 
| 22828 | 
            +
                  end
         | 
| 22829 | 
            +
                  
         | 
| 22830 | 
            +
                  # 
         | 
| 22831 | 
            +
                  class NetworkInterfaceSubInterface
         | 
| 22832 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 22833 | 
            +
                  
         | 
| 22834 | 
            +
                    # An IPv4 internal IP address to assign to the instance for this subinterface.
         | 
| 22835 | 
            +
                    # Corresponds to the JSON property `ipAddress`
         | 
| 22836 | 
            +
                    # @return [String]
         | 
| 22837 | 
            +
                    attr_accessor :ip_address
         | 
| 22838 | 
            +
                  
         | 
| 22839 | 
            +
                    # If specified, this subnetwork must belong to the same network as that of the
         | 
| 22840 | 
            +
                    # network interface. If not specified the subnet of network interface will be
         | 
| 22841 | 
            +
                    # used. If you specify this property, you can specify the subnetwork as a full
         | 
| 22842 | 
            +
                    # or partial URL. For example, the following are all valid URLs:
         | 
| 22843 | 
            +
                    # - https://www.googleapis.com/compute/v1/projects/project/regions/region/
         | 
| 22844 | 
            +
                    # subnetworks/subnetwork
         | 
| 22845 | 
            +
                    # - regions/region/subnetworks/subnetwork
         | 
| 22846 | 
            +
                    # Corresponds to the JSON property `subnetwork`
         | 
| 22847 | 
            +
                    # @return [String]
         | 
| 22848 | 
            +
                    attr_accessor :subnetwork
         | 
| 22849 | 
            +
                  
         | 
| 22850 | 
            +
                    # VLAN tag. Should match the VLAN(s) supported by the subnetwork to which this
         | 
| 22851 | 
            +
                    # subinterface is connecting.
         | 
| 22852 | 
            +
                    # Corresponds to the JSON property `vlan`
         | 
| 22853 | 
            +
                    # @return [Fixnum]
         | 
| 22854 | 
            +
                    attr_accessor :vlan
         | 
| 22855 | 
            +
                  
         | 
| 22856 | 
            +
                    def initialize(**args)
         | 
| 22857 | 
            +
                       update!(**args)
         | 
| 22858 | 
            +
                    end
         | 
| 22859 | 
            +
                  
         | 
| 22860 | 
            +
                    # Update properties of this object
         | 
| 22861 | 
            +
                    def update!(**args)
         | 
| 22862 | 
            +
                      @ip_address = args[:ip_address] if args.key?(:ip_address)
         | 
| 22212 22863 | 
             
                      @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
         | 
| 22864 | 
            +
                      @vlan = args[:vlan] if args.key?(:vlan)
         | 
| 22213 22865 | 
             
                    end
         | 
| 22214 22866 | 
             
                  end
         | 
| 22215 22867 |  | 
| @@ -24490,6 +25142,129 @@ module Google | |
| 24490 25142 | 
             
                    end
         | 
| 24491 25143 | 
             
                  end
         | 
| 24492 25144 |  | 
| 25145 | 
            +
                  # Contains a list of NotificationEndpointsScopedList.
         | 
| 25146 | 
            +
                  class NotificationEndpointAggregatedList
         | 
| 25147 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 25148 | 
            +
                  
         | 
| 25149 | 
            +
                    # [Output Only] Unique identifier for the resource; defined by the server.
         | 
| 25150 | 
            +
                    # Corresponds to the JSON property `id`
         | 
| 25151 | 
            +
                    # @return [String]
         | 
| 25152 | 
            +
                    attr_accessor :id
         | 
| 25153 | 
            +
                  
         | 
| 25154 | 
            +
                    # A list of NotificationEndpointsScopedList resources.
         | 
| 25155 | 
            +
                    # Corresponds to the JSON property `items`
         | 
| 25156 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::NotificationEndpointsScopedList>]
         | 
| 25157 | 
            +
                    attr_accessor :items
         | 
| 25158 | 
            +
                  
         | 
| 25159 | 
            +
                    # Type of resource.
         | 
| 25160 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 25161 | 
            +
                    # @return [String]
         | 
| 25162 | 
            +
                    attr_accessor :kind
         | 
| 25163 | 
            +
                  
         | 
| 25164 | 
            +
                    # [Output Only] This token allows you to get the next page of results for list
         | 
| 25165 | 
            +
                    # requests. If the number of results is larger than maxResults, use the
         | 
| 25166 | 
            +
                    # nextPageToken as a value for the query parameter pageToken in the next list
         | 
| 25167 | 
            +
                    # request. Subsequent list requests will have their own nextPageToken to
         | 
| 25168 | 
            +
                    # continue paging through the results.
         | 
| 25169 | 
            +
                    # Corresponds to the JSON property `nextPageToken`
         | 
| 25170 | 
            +
                    # @return [String]
         | 
| 25171 | 
            +
                    attr_accessor :next_page_token
         | 
| 25172 | 
            +
                  
         | 
| 25173 | 
            +
                    # [Output Only] Server-defined URL for this resource.
         | 
| 25174 | 
            +
                    # Corresponds to the JSON property `selfLink`
         | 
| 25175 | 
            +
                    # @return [String]
         | 
| 25176 | 
            +
                    attr_accessor :self_link
         | 
| 25177 | 
            +
                  
         | 
| 25178 | 
            +
                    # [Output Only] Unreachable resources.
         | 
| 25179 | 
            +
                    # Corresponds to the JSON property `unreachables`
         | 
| 25180 | 
            +
                    # @return [Array<String>]
         | 
| 25181 | 
            +
                    attr_accessor :unreachables
         | 
| 25182 | 
            +
                  
         | 
| 25183 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 25184 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 25185 | 
            +
                    # @return [Google::Apis::ComputeAlpha::NotificationEndpointAggregatedList::Warning]
         | 
| 25186 | 
            +
                    attr_accessor :warning
         | 
| 25187 | 
            +
                  
         | 
| 25188 | 
            +
                    def initialize(**args)
         | 
| 25189 | 
            +
                       update!(**args)
         | 
| 25190 | 
            +
                    end
         | 
| 25191 | 
            +
                  
         | 
| 25192 | 
            +
                    # Update properties of this object
         | 
| 25193 | 
            +
                    def update!(**args)
         | 
| 25194 | 
            +
                      @id = args[:id] if args.key?(:id)
         | 
| 25195 | 
            +
                      @items = args[:items] if args.key?(:items)
         | 
| 25196 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 25197 | 
            +
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 25198 | 
            +
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 25199 | 
            +
                      @unreachables = args[:unreachables] if args.key?(:unreachables)
         | 
| 25200 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 25201 | 
            +
                    end
         | 
| 25202 | 
            +
                    
         | 
| 25203 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 25204 | 
            +
                    class Warning
         | 
| 25205 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 25206 | 
            +
                    
         | 
| 25207 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 25208 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 25209 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 25210 | 
            +
                      # @return [String]
         | 
| 25211 | 
            +
                      attr_accessor :code
         | 
| 25212 | 
            +
                    
         | 
| 25213 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example:
         | 
| 25214 | 
            +
                      # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 25215 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 25216 | 
            +
                      # @return [Array<Google::Apis::ComputeAlpha::NotificationEndpointAggregatedList::Warning::Datum>]
         | 
| 25217 | 
            +
                      attr_accessor :data
         | 
| 25218 | 
            +
                    
         | 
| 25219 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 25220 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 25221 | 
            +
                      # @return [String]
         | 
| 25222 | 
            +
                      attr_accessor :message
         | 
| 25223 | 
            +
                    
         | 
| 25224 | 
            +
                      def initialize(**args)
         | 
| 25225 | 
            +
                         update!(**args)
         | 
| 25226 | 
            +
                      end
         | 
| 25227 | 
            +
                    
         | 
| 25228 | 
            +
                      # Update properties of this object
         | 
| 25229 | 
            +
                      def update!(**args)
         | 
| 25230 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 25231 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 25232 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 25233 | 
            +
                      end
         | 
| 25234 | 
            +
                      
         | 
| 25235 | 
            +
                      # 
         | 
| 25236 | 
            +
                      class Datum
         | 
| 25237 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 25238 | 
            +
                      
         | 
| 25239 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 25240 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 25241 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 25242 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 25243 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 25244 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 25245 | 
            +
                        # for IP forwarding).
         | 
| 25246 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 25247 | 
            +
                        # @return [String]
         | 
| 25248 | 
            +
                        attr_accessor :key
         | 
| 25249 | 
            +
                      
         | 
| 25250 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 25251 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 25252 | 
            +
                        # @return [String]
         | 
| 25253 | 
            +
                        attr_accessor :value
         | 
| 25254 | 
            +
                      
         | 
| 25255 | 
            +
                        def initialize(**args)
         | 
| 25256 | 
            +
                           update!(**args)
         | 
| 25257 | 
            +
                        end
         | 
| 25258 | 
            +
                      
         | 
| 25259 | 
            +
                        # Update properties of this object
         | 
| 25260 | 
            +
                        def update!(**args)
         | 
| 25261 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 25262 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 25263 | 
            +
                        end
         | 
| 25264 | 
            +
                      end
         | 
| 25265 | 
            +
                    end
         | 
| 25266 | 
            +
                  end
         | 
| 25267 | 
            +
                  
         | 
| 24493 25268 | 
             
                  # Represents a gRPC setting that describes one gRPC notification endpoint and
         | 
| 24494 25269 | 
             
                  # the retry duration attempting to send notification to this endpoint.
         | 
| 24495 25270 | 
             
                  class NotificationEndpointGrpcSettings
         | 
| @@ -24661,6 +25436,97 @@ module Google | |
| 24661 25436 | 
             
                    end
         | 
| 24662 25437 | 
             
                  end
         | 
| 24663 25438 |  | 
| 25439 | 
            +
                  # 
         | 
| 25440 | 
            +
                  class NotificationEndpointsScopedList
         | 
| 25441 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 25442 | 
            +
                  
         | 
| 25443 | 
            +
                    # A list of NotificationEndpoints contained in this scope.
         | 
| 25444 | 
            +
                    # Corresponds to the JSON property `resources`
         | 
| 25445 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::NotificationEndpoint>]
         | 
| 25446 | 
            +
                    attr_accessor :resources
         | 
| 25447 | 
            +
                  
         | 
| 25448 | 
            +
                    # Informational warning which replaces the list of notification endpoints when
         | 
| 25449 | 
            +
                    # the list is empty.
         | 
| 25450 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 25451 | 
            +
                    # @return [Google::Apis::ComputeAlpha::NotificationEndpointsScopedList::Warning]
         | 
| 25452 | 
            +
                    attr_accessor :warning
         | 
| 25453 | 
            +
                  
         | 
| 25454 | 
            +
                    def initialize(**args)
         | 
| 25455 | 
            +
                       update!(**args)
         | 
| 25456 | 
            +
                    end
         | 
| 25457 | 
            +
                  
         | 
| 25458 | 
            +
                    # Update properties of this object
         | 
| 25459 | 
            +
                    def update!(**args)
         | 
| 25460 | 
            +
                      @resources = args[:resources] if args.key?(:resources)
         | 
| 25461 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 25462 | 
            +
                    end
         | 
| 25463 | 
            +
                    
         | 
| 25464 | 
            +
                    # Informational warning which replaces the list of notification endpoints when
         | 
| 25465 | 
            +
                    # the list is empty.
         | 
| 25466 | 
            +
                    class Warning
         | 
| 25467 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 25468 | 
            +
                    
         | 
| 25469 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 25470 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 25471 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 25472 | 
            +
                      # @return [String]
         | 
| 25473 | 
            +
                      attr_accessor :code
         | 
| 25474 | 
            +
                    
         | 
| 25475 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example:
         | 
| 25476 | 
            +
                      # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 25477 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 25478 | 
            +
                      # @return [Array<Google::Apis::ComputeAlpha::NotificationEndpointsScopedList::Warning::Datum>]
         | 
| 25479 | 
            +
                      attr_accessor :data
         | 
| 25480 | 
            +
                    
         | 
| 25481 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 25482 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 25483 | 
            +
                      # @return [String]
         | 
| 25484 | 
            +
                      attr_accessor :message
         | 
| 25485 | 
            +
                    
         | 
| 25486 | 
            +
                      def initialize(**args)
         | 
| 25487 | 
            +
                         update!(**args)
         | 
| 25488 | 
            +
                      end
         | 
| 25489 | 
            +
                    
         | 
| 25490 | 
            +
                      # Update properties of this object
         | 
| 25491 | 
            +
                      def update!(**args)
         | 
| 25492 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 25493 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 25494 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 25495 | 
            +
                      end
         | 
| 25496 | 
            +
                      
         | 
| 25497 | 
            +
                      # 
         | 
| 25498 | 
            +
                      class Datum
         | 
| 25499 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 25500 | 
            +
                      
         | 
| 25501 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 25502 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 25503 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 25504 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 25505 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 25506 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 25507 | 
            +
                        # for IP forwarding).
         | 
| 25508 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 25509 | 
            +
                        # @return [String]
         | 
| 25510 | 
            +
                        attr_accessor :key
         | 
| 25511 | 
            +
                      
         | 
| 25512 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 25513 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 25514 | 
            +
                        # @return [String]
         | 
| 25515 | 
            +
                        attr_accessor :value
         | 
| 25516 | 
            +
                      
         | 
| 25517 | 
            +
                        def initialize(**args)
         | 
| 25518 | 
            +
                           update!(**args)
         | 
| 25519 | 
            +
                        end
         | 
| 25520 | 
            +
                      
         | 
| 25521 | 
            +
                        # Update properties of this object
         | 
| 25522 | 
            +
                        def update!(**args)
         | 
| 25523 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 25524 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 25525 | 
            +
                        end
         | 
| 25526 | 
            +
                      end
         | 
| 25527 | 
            +
                    end
         | 
| 25528 | 
            +
                  end
         | 
| 25529 | 
            +
                  
         | 
| 24664 25530 | 
             
                  # Represents an Operation resource.
         | 
| 24665 25531 | 
             
                  # Google Compute Engine has three Operation resources:
         | 
| 24666 25532 | 
             
                  # * [Global](/compute/docs/reference/rest/`$api_version`/globalOperations) * [
         | 
| @@ -24739,11 +25605,52 @@ module Google | |
| 24739 25605 | 
             
                    # @return [String]
         | 
| 24740 25606 | 
             
                    attr_accessor :kind
         | 
| 24741 25607 |  | 
| 25608 | 
            +
                    # `Any` contains an arbitrary serialized protocol buffer message along with a
         | 
| 25609 | 
            +
                    # URL that describes the type of the serialized message.
         | 
| 25610 | 
            +
                    # Protobuf library provides support to pack/unpack Any values in the form of
         | 
| 25611 | 
            +
                    # utility functions or additional generated methods of the Any type.
         | 
| 25612 | 
            +
                    # Example 1: Pack and unpack a message in C++.
         | 
| 25613 | 
            +
                    # Foo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) ` ... `
         | 
| 25614 | 
            +
                    # Example 2: Pack and unpack a message in Java.
         | 
| 25615 | 
            +
                    # Foo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) ` foo = any.
         | 
| 25616 | 
            +
                    # unpack(Foo.class); `
         | 
| 25617 | 
            +
                    # Example 3: Pack and unpack a message in Python.
         | 
| 25618 | 
            +
                    # foo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.
         | 
| 25619 | 
            +
                    # Unpack(foo) ...
         | 
| 25620 | 
            +
                    # Example 4: Pack and unpack a message in Go
         | 
| 25621 | 
            +
                    # foo := &pb.Foo`...` any, err := anypb.New(foo) if err != nil ` ... ` ... foo :=
         | 
| 25622 | 
            +
                    # &pb.Foo`` if err := any.UnmarshalTo(foo); err != nil ` ... `
         | 
| 25623 | 
            +
                    # The pack methods provided by protobuf library will by default use 'type.
         | 
| 25624 | 
            +
                    # googleapis.com/full.type.name' as the type URL and the unpack methods only use
         | 
| 25625 | 
            +
                    # the fully qualified type name after the last '/' in the type URL, for example "
         | 
| 25626 | 
            +
                    # foo.bar.com/x/y.z" will yield type name "y.z".
         | 
| 25627 | 
            +
                    # JSON ==== The JSON representation of an `Any` value uses the regular
         | 
| 25628 | 
            +
                    # representation of the deserialized, embedded message, with an additional field
         | 
| 25629 | 
            +
                    # `@type` which contains the type URL. Example:
         | 
| 25630 | 
            +
                    # package google.profile; message Person ` string first_name = 1; string
         | 
| 25631 | 
            +
                    # last_name = 2; `
         | 
| 25632 | 
            +
                    # ` "@type": "type.googleapis.com/google.profile.Person", "firstName": , "
         | 
| 25633 | 
            +
                    # lastName":  `
         | 
| 25634 | 
            +
                    # If the embedded message type is well-known and has a custom JSON
         | 
| 25635 | 
            +
                    # representation, that representation will be embedded adding a field `value`
         | 
| 25636 | 
            +
                    # which holds the custom JSON in addition to the `@type` field. Example (for
         | 
| 25637 | 
            +
                    # message [google.protobuf.Duration][]):
         | 
| 25638 | 
            +
                    # ` "@type": "type.googleapis.com/google.protobuf.Duration", "value": "1.212s" `
         | 
| 25639 | 
            +
                    # Corresponds to the JSON property `metadata`
         | 
| 25640 | 
            +
                    # @return [Google::Apis::ComputeAlpha::Any]
         | 
| 25641 | 
            +
                    attr_accessor :metadata
         | 
| 25642 | 
            +
                  
         | 
| 24742 25643 | 
             
                    # [Output Only] Name of the operation.
         | 
| 24743 25644 | 
             
                    # Corresponds to the JSON property `name`
         | 
| 24744 25645 | 
             
                    # @return [String]
         | 
| 24745 25646 | 
             
                    attr_accessor :name
         | 
| 24746 25647 |  | 
| 25648 | 
            +
                    # [Output Only] An ID that represents a group of operations, such as when a
         | 
| 25649 | 
            +
                    # group of operations results from a `bulkInsert` API request.
         | 
| 25650 | 
            +
                    # Corresponds to the JSON property `operationGroupId`
         | 
| 25651 | 
            +
                    # @return [String]
         | 
| 25652 | 
            +
                    attr_accessor :operation_group_id
         | 
| 25653 | 
            +
                  
         | 
| 24747 25654 | 
             
                    # [Output Only] The type of operation, such as `insert`, `update`, or `delete`,
         | 
| 24748 25655 | 
             
                    # and so on.
         | 
| 24749 25656 | 
             
                    # Corresponds to the JSON property `operationType`
         | 
| @@ -24839,7 +25746,9 @@ module Google | |
| 24839 25746 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 24840 25747 | 
             
                      @insert_time = args[:insert_time] if args.key?(:insert_time)
         | 
| 24841 25748 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 25749 | 
            +
                      @metadata = args[:metadata] if args.key?(:metadata)
         | 
| 24842 25750 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 25751 | 
            +
                      @operation_group_id = args[:operation_group_id] if args.key?(:operation_group_id)
         | 
| 24843 25752 | 
             
                      @operation_type = args[:operation_type] if args.key?(:operation_type)
         | 
| 24844 25753 | 
             
                      @progress = args[:progress] if args.key?(:progress)
         | 
| 24845 25754 | 
             
                      @region = args[:region] if args.key?(:region)
         | 
| @@ -26605,6 +27514,18 @@ module Google | |
| 26605 27514 | 
             
                    # @return [Hash<String,Google::Apis::ComputeAlpha::PreservedStatePreservedDisk>]
         | 
| 26606 27515 | 
             
                    attr_accessor :disks
         | 
| 26607 27516 |  | 
| 27517 | 
            +
                    # Preserved external IPs defined for this instance. This map is keyed with the
         | 
| 27518 | 
            +
                    # name of the network interface.
         | 
| 27519 | 
            +
                    # Corresponds to the JSON property `externalIPs`
         | 
| 27520 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::PreservedStatePreservedNetworkIp>]
         | 
| 27521 | 
            +
                    attr_accessor :external_i_ps
         | 
| 27522 | 
            +
                  
         | 
| 27523 | 
            +
                    # Preserved internal IPs defined for this instance. This map is keyed with the
         | 
| 27524 | 
            +
                    # name of the network interface.
         | 
| 27525 | 
            +
                    # Corresponds to the JSON property `internalIPs`
         | 
| 27526 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::PreservedStatePreservedNetworkIp>]
         | 
| 27527 | 
            +
                    attr_accessor :internal_i_ps
         | 
| 27528 | 
            +
                  
         | 
| 26608 27529 | 
             
                    # Preserved metadata defined for this instance.
         | 
| 26609 27530 | 
             
                    # Corresponds to the JSON property `metadata`
         | 
| 26610 27531 | 
             
                    # @return [Hash<String,String>]
         | 
| @@ -26617,6 +27538,8 @@ module Google | |
| 26617 27538 | 
             
                    # Update properties of this object
         | 
| 26618 27539 | 
             
                    def update!(**args)
         | 
| 26619 27540 | 
             
                      @disks = args[:disks] if args.key?(:disks)
         | 
| 27541 | 
            +
                      @external_i_ps = args[:external_i_ps] if args.key?(:external_i_ps)
         | 
| 27542 | 
            +
                      @internal_i_ps = args[:internal_i_ps] if args.key?(:internal_i_ps)
         | 
| 26620 27543 | 
             
                      @metadata = args[:metadata] if args.key?(:metadata)
         | 
| 26621 27544 | 
             
                    end
         | 
| 26622 27545 | 
             
                  end
         | 
| @@ -26658,6 +27581,60 @@ module Google | |
| 26658 27581 | 
             
                    end
         | 
| 26659 27582 | 
             
                  end
         | 
| 26660 27583 |  | 
| 27584 | 
            +
                  # 
         | 
| 27585 | 
            +
                  class PreservedStatePreservedNetworkIp
         | 
| 27586 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 27587 | 
            +
                  
         | 
| 27588 | 
            +
                    # These stateful IPs will never be released during autohealing, update or VM
         | 
| 27589 | 
            +
                    # instance recreate operations. This flag is used to configure if the IP
         | 
| 27590 | 
            +
                    # reservation should be deleted after it is no longer used by the group, e.g.
         | 
| 27591 | 
            +
                    # when the given instance or the whole group is deleted.
         | 
| 27592 | 
            +
                    # Corresponds to the JSON property `autoDelete`
         | 
| 27593 | 
            +
                    # @return [String]
         | 
| 27594 | 
            +
                    attr_accessor :auto_delete
         | 
| 27595 | 
            +
                  
         | 
| 27596 | 
            +
                    # Ip address representation
         | 
| 27597 | 
            +
                    # Corresponds to the JSON property `ipAddress`
         | 
| 27598 | 
            +
                    # @return [Google::Apis::ComputeAlpha::PreservedStatePreservedNetworkIpIpAddress]
         | 
| 27599 | 
            +
                    attr_accessor :ip_address
         | 
| 27600 | 
            +
                  
         | 
| 27601 | 
            +
                    def initialize(**args)
         | 
| 27602 | 
            +
                       update!(**args)
         | 
| 27603 | 
            +
                    end
         | 
| 27604 | 
            +
                  
         | 
| 27605 | 
            +
                    # Update properties of this object
         | 
| 27606 | 
            +
                    def update!(**args)
         | 
| 27607 | 
            +
                      @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
         | 
| 27608 | 
            +
                      @ip_address = args[:ip_address] if args.key?(:ip_address)
         | 
| 27609 | 
            +
                    end
         | 
| 27610 | 
            +
                  end
         | 
| 27611 | 
            +
                  
         | 
| 27612 | 
            +
                  # 
         | 
| 27613 | 
            +
                  class PreservedStatePreservedNetworkIpIpAddress
         | 
| 27614 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 27615 | 
            +
                  
         | 
| 27616 | 
            +
                    # The URL of the reservation for this IP address.
         | 
| 27617 | 
            +
                    # Corresponds to the JSON property `address`
         | 
| 27618 | 
            +
                    # @return [String]
         | 
| 27619 | 
            +
                    attr_accessor :address
         | 
| 27620 | 
            +
                  
         | 
| 27621 | 
            +
                    # An IPv4 internal network address to assign to the instance for this network
         | 
| 27622 | 
            +
                    # interface.
         | 
| 27623 | 
            +
                    # Corresponds to the JSON property `literal`
         | 
| 27624 | 
            +
                    # @return [String]
         | 
| 27625 | 
            +
                    attr_accessor :literal
         | 
| 27626 | 
            +
                  
         | 
| 27627 | 
            +
                    def initialize(**args)
         | 
| 27628 | 
            +
                       update!(**args)
         | 
| 27629 | 
            +
                    end
         | 
| 27630 | 
            +
                  
         | 
| 27631 | 
            +
                    # Update properties of this object
         | 
| 27632 | 
            +
                    def update!(**args)
         | 
| 27633 | 
            +
                      @address = args[:address] if args.key?(:address)
         | 
| 27634 | 
            +
                      @literal = args[:literal] if args.key?(:literal)
         | 
| 27635 | 
            +
                    end
         | 
| 27636 | 
            +
                  end
         | 
| 27637 | 
            +
                  
         | 
| 26661 27638 | 
             
                  # [Deprecated] All fields defined in a principal are ANDed.
         | 
| 26662 27639 | 
             
                  class Principal
         | 
| 26663 27640 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -28679,9 +29656,9 @@ module Google | |
| 28679 29656 | 
             
                    # @return [Array<String>]
         | 
| 28680 29657 | 
             
                    attr_accessor :instances
         | 
| 28681 29658 |  | 
| 28682 | 
            -
                    #  | 
| 28683 | 
            -
                    #  | 
| 28684 | 
            -
                    #  | 
| 29659 | 
            +
                    # Skip instances which cannot be deleted (instances not belonging to this
         | 
| 29660 | 
            +
                    # managed group, already being deleted or being abandoned). If `false`, fail
         | 
| 29661 | 
            +
                    # whole flow, if such instance is passed.
         | 
| 28685 29662 | 
             
                    # Corresponds to the JSON property `skipInapplicableInstances`
         | 
| 28686 29663 | 
             
                    # @return [Boolean]
         | 
| 28687 29664 | 
             
                    attr_accessor :skip_inapplicable_instances
         | 
| @@ -28875,6 +29852,49 @@ module Google | |
| 28875 29852 | 
             
                    end
         | 
| 28876 29853 | 
             
                  end
         | 
| 28877 29854 |  | 
| 29855 | 
            +
                  # 
         | 
| 29856 | 
            +
                  class RegionInstanceGroupManagersResizeAdvancedRequest
         | 
| 29857 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 29858 | 
            +
                  
         | 
| 29859 | 
            +
                    # If this flag is true, the managed instance group attempts to create all
         | 
| 29860 | 
            +
                    # instances initiated by this resize request only once. If there is an error
         | 
| 29861 | 
            +
                    # during creation, the managed instance group does not retry create this
         | 
| 29862 | 
            +
                    # instance, and we will decrease the targetSize of the request instead. If the
         | 
| 29863 | 
            +
                    # flag is false, the group attempts to recreate each instance continuously until
         | 
| 29864 | 
            +
                    # it succeeds.
         | 
| 29865 | 
            +
                    # This flag matters only in the first attempt of creation of an instance. After
         | 
| 29866 | 
            +
                    # an instance is successfully created while this flag is enabled, the instance
         | 
| 29867 | 
            +
                    # behaves the same way as all the other instances created with a regular resize
         | 
| 29868 | 
            +
                    # request. In particular, if a running instance dies unexpectedly at a later
         | 
| 29869 | 
            +
                    # time and needs to be recreated, this mode does not affect the recreation
         | 
| 29870 | 
            +
                    # behavior in that scenario.
         | 
| 29871 | 
            +
                    # This flag is applicable only to the current resize request. It does not
         | 
| 29872 | 
            +
                    # influence other resize requests in any way.
         | 
| 29873 | 
            +
                    # You can see which instances ar being created in which mode by calling the get
         | 
| 29874 | 
            +
                    # or listManagedInstances API.
         | 
| 29875 | 
            +
                    # Corresponds to the JSON property `noCreationRetries`
         | 
| 29876 | 
            +
                    # @return [Boolean]
         | 
| 29877 | 
            +
                    attr_accessor :no_creation_retries
         | 
| 29878 | 
            +
                    alias_method :no_creation_retries?, :no_creation_retries
         | 
| 29879 | 
            +
                  
         | 
| 29880 | 
            +
                    # The number of running instances that the managed instance group should
         | 
| 29881 | 
            +
                    # maintain at any given time. The group automatically adds or removes instances
         | 
| 29882 | 
            +
                    # to maintain the number of instances specified by this parameter.
         | 
| 29883 | 
            +
                    # Corresponds to the JSON property `targetSize`
         | 
| 29884 | 
            +
                    # @return [Fixnum]
         | 
| 29885 | 
            +
                    attr_accessor :target_size
         | 
| 29886 | 
            +
                  
         | 
| 29887 | 
            +
                    def initialize(**args)
         | 
| 29888 | 
            +
                       update!(**args)
         | 
| 29889 | 
            +
                    end
         | 
| 29890 | 
            +
                  
         | 
| 29891 | 
            +
                    # Update properties of this object
         | 
| 29892 | 
            +
                    def update!(**args)
         | 
| 29893 | 
            +
                      @no_creation_retries = args[:no_creation_retries] if args.key?(:no_creation_retries)
         | 
| 29894 | 
            +
                      @target_size = args[:target_size] if args.key?(:target_size)
         | 
| 29895 | 
            +
                    end
         | 
| 29896 | 
            +
                  end
         | 
| 29897 | 
            +
                  
         | 
| 28878 29898 | 
             
                  # 
         | 
| 28879 29899 | 
             
                  class RegionInstanceGroupManagersSetAutoHealingRequest
         | 
| 28880 29900 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -29474,6 +30494,12 @@ module Google | |
| 29474 30494 | 
             
                    # @return [String]
         | 
| 29475 30495 | 
             
                    attr_accessor :name
         | 
| 29476 30496 |  | 
| 30497 | 
            +
                    # [Output Only] Reserved for future use.
         | 
| 30498 | 
            +
                    # Corresponds to the JSON property `satisfiesPzs`
         | 
| 30499 | 
            +
                    # @return [Boolean]
         | 
| 30500 | 
            +
                    attr_accessor :satisfies_pzs
         | 
| 30501 | 
            +
                    alias_method :satisfies_pzs?, :satisfies_pzs
         | 
| 30502 | 
            +
                  
         | 
| 29477 30503 | 
             
                    # [Output Only] Server-defined fully-qualified URL for this resource.
         | 
| 29478 30504 | 
             
                    # Corresponds to the JSON property `selfLink`
         | 
| 29479 30505 | 
             
                    # @return [String]
         | 
| @@ -29525,6 +30551,7 @@ module Google | |
| 29525 30551 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 29526 30552 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 29527 30553 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 30554 | 
            +
                      @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
         | 
| 29528 30555 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 29529 30556 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 29530 30557 | 
             
                      @share_settings = args[:share_settings] if args.key?(:share_settings)
         | 
| @@ -30128,6 +31155,13 @@ module Google | |
| 30128 31155 | 
             
                    # @return [String]
         | 
| 30129 31156 | 
             
                    attr_accessor :region
         | 
| 30130 31157 |  | 
| 31158 | 
            +
                    # Contains output only fields. Use this sub-message for all output fields set on
         | 
| 31159 | 
            +
                    # ResourcePolicy. The internal structure of this "status" field should mimic the
         | 
| 31160 | 
            +
                    # structure of ResourcePolicy proto specification.
         | 
| 31161 | 
            +
                    # Corresponds to the JSON property `resourceStatus`
         | 
| 31162 | 
            +
                    # @return [Google::Apis::ComputeAlpha::ResourcePolicyResourceStatus]
         | 
| 31163 | 
            +
                    attr_accessor :resource_status
         | 
| 31164 | 
            +
                  
         | 
| 30131 31165 | 
             
                    # [Output Only] Server-defined fully-qualified URL for this resource.
         | 
| 30132 31166 | 
             
                    # Corresponds to the JSON property `selfLink`
         | 
| 30133 31167 | 
             
                    # @return [String]
         | 
| @@ -30169,6 +31203,7 @@ module Google | |
| 30169 31203 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 30170 31204 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 30171 31205 | 
             
                      @region = args[:region] if args.key?(:region)
         | 
| 31206 | 
            +
                      @resource_status = args[:resource_status] if args.key?(:resource_status)
         | 
| 30172 31207 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 30173 31208 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 30174 31209 | 
             
                      @snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
         | 
| @@ -30432,6 +31467,16 @@ module Google | |
| 30432 31467 | 
             
                  class ResourcePolicyInstanceSchedulePolicy
         | 
| 30433 31468 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 30434 31469 |  | 
| 31470 | 
            +
                    # The expiration time of the schedule. The timestamp is an RFC3339 string.
         | 
| 31471 | 
            +
                    # Corresponds to the JSON property `expirationTime`
         | 
| 31472 | 
            +
                    # @return [String]
         | 
| 31473 | 
            +
                    attr_accessor :expiration_time
         | 
| 31474 | 
            +
                  
         | 
| 31475 | 
            +
                    # The start time of the schedule. The timestamp is an RFC3339 string.
         | 
| 31476 | 
            +
                    # Corresponds to the JSON property `startTime`
         | 
| 31477 | 
            +
                    # @return [String]
         | 
| 31478 | 
            +
                    attr_accessor :start_time
         | 
| 31479 | 
            +
                  
         | 
| 30435 31480 | 
             
                    # Specifies the time zone to be used in interpreting Schedule.schedule. The
         | 
| 30436 31481 | 
             
                    # value of this field must be a time zone name from the tz database: http://en.
         | 
| 30437 31482 | 
             
                    # wikipedia.org/wiki/Tz_database.
         | 
| @@ -30455,6 +31500,8 @@ module Google | |
| 30455 31500 |  | 
| 30456 31501 | 
             
                    # Update properties of this object
         | 
| 30457 31502 | 
             
                    def update!(**args)
         | 
| 31503 | 
            +
                      @expiration_time = args[:expiration_time] if args.key?(:expiration_time)
         | 
| 31504 | 
            +
                      @start_time = args[:start_time] if args.key?(:start_time)
         | 
| 30458 31505 | 
             
                      @time_zone = args[:time_zone] if args.key?(:time_zone)
         | 
| 30459 31506 | 
             
                      @vm_start_schedule = args[:vm_start_schedule] if args.key?(:vm_start_schedule)
         | 
| 30460 31507 | 
             
                      @vm_stop_schedule = args[:vm_stop_schedule] if args.key?(:vm_stop_schedule)
         | 
| @@ -30605,6 +31652,56 @@ module Google | |
| 30605 31652 | 
             
                    end
         | 
| 30606 31653 | 
             
                  end
         | 
| 30607 31654 |  | 
| 31655 | 
            +
                  # Contains output only fields. Use this sub-message for all output fields set on
         | 
| 31656 | 
            +
                  # ResourcePolicy. The internal structure of this "status" field should mimic the
         | 
| 31657 | 
            +
                  # structure of ResourcePolicy proto specification.
         | 
| 31658 | 
            +
                  class ResourcePolicyResourceStatus
         | 
| 31659 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 31660 | 
            +
                  
         | 
| 31661 | 
            +
                    # [Output Only] Specifies a set of output values reffering to the
         | 
| 31662 | 
            +
                    # instance_schedule_policy system status. This field should have the same name
         | 
| 31663 | 
            +
                    # as corresponding policy field.
         | 
| 31664 | 
            +
                    # Corresponds to the JSON property `instanceSchedulePolicy`
         | 
| 31665 | 
            +
                    # @return [Google::Apis::ComputeAlpha::ResourcePolicyResourceStatusInstanceSchedulePolicyStatus]
         | 
| 31666 | 
            +
                    attr_accessor :instance_schedule_policy
         | 
| 31667 | 
            +
                  
         | 
| 31668 | 
            +
                    def initialize(**args)
         | 
| 31669 | 
            +
                       update!(**args)
         | 
| 31670 | 
            +
                    end
         | 
| 31671 | 
            +
                  
         | 
| 31672 | 
            +
                    # Update properties of this object
         | 
| 31673 | 
            +
                    def update!(**args)
         | 
| 31674 | 
            +
                      @instance_schedule_policy = args[:instance_schedule_policy] if args.key?(:instance_schedule_policy)
         | 
| 31675 | 
            +
                    end
         | 
| 31676 | 
            +
                  end
         | 
| 31677 | 
            +
                  
         | 
| 31678 | 
            +
                  # 
         | 
| 31679 | 
            +
                  class ResourcePolicyResourceStatusInstanceSchedulePolicyStatus
         | 
| 31680 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 31681 | 
            +
                  
         | 
| 31682 | 
            +
                    # [Output Only] The last time the schedule successfully ran. The timestamp is an
         | 
| 31683 | 
            +
                    # RFC3339 string.
         | 
| 31684 | 
            +
                    # Corresponds to the JSON property `lastRunStartTime`
         | 
| 31685 | 
            +
                    # @return [String]
         | 
| 31686 | 
            +
                    attr_accessor :last_run_start_time
         | 
| 31687 | 
            +
                  
         | 
| 31688 | 
            +
                    # [Output Only] The next time the schedule is planned to run. The actual time
         | 
| 31689 | 
            +
                    # might be slightly different. The timestamp is an RFC3339 string.
         | 
| 31690 | 
            +
                    # Corresponds to the JSON property `nextRunStartTime`
         | 
| 31691 | 
            +
                    # @return [String]
         | 
| 31692 | 
            +
                    attr_accessor :next_run_start_time
         | 
| 31693 | 
            +
                  
         | 
| 31694 | 
            +
                    def initialize(**args)
         | 
| 31695 | 
            +
                       update!(**args)
         | 
| 31696 | 
            +
                    end
         | 
| 31697 | 
            +
                  
         | 
| 31698 | 
            +
                    # Update properties of this object
         | 
| 31699 | 
            +
                    def update!(**args)
         | 
| 31700 | 
            +
                      @last_run_start_time = args[:last_run_start_time] if args.key?(:last_run_start_time)
         | 
| 31701 | 
            +
                      @next_run_start_time = args[:next_run_start_time] if args.key?(:next_run_start_time)
         | 
| 31702 | 
            +
                    end
         | 
| 31703 | 
            +
                  end
         | 
| 31704 | 
            +
                  
         | 
| 30608 31705 | 
             
                  # A snapshot schedule policy specifies when and how frequently snapshots are to
         | 
| 30609 31706 | 
             
                  # be created for the target disk. Also specifies how many and how long these
         | 
| 30610 31707 | 
             
                  # scheduled snapshots should be retained.
         | 
| @@ -30869,6 +31966,80 @@ module Google | |
| 30869 31966 | 
             
                    end
         | 
| 30870 31967 | 
             
                  end
         | 
| 30871 31968 |  | 
| 31969 | 
            +
                  # Contains output only fields. Use this sub-message for actual values set on
         | 
| 31970 | 
            +
                  # Instance attributes as compared to the value requested by the user (intent) in
         | 
| 31971 | 
            +
                  # their instance CRUD calls.
         | 
| 31972 | 
            +
                  class ResourceStatus
         | 
| 31973 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 31974 | 
            +
                  
         | 
| 31975 | 
            +
                    # 
         | 
| 31976 | 
            +
                    # Corresponds to the JSON property `scheduling`
         | 
| 31977 | 
            +
                    # @return [Google::Apis::ComputeAlpha::ResourceStatusScheduling]
         | 
| 31978 | 
            +
                    attr_accessor :scheduling
         | 
| 31979 | 
            +
                  
         | 
| 31980 | 
            +
                    def initialize(**args)
         | 
| 31981 | 
            +
                       update!(**args)
         | 
| 31982 | 
            +
                    end
         | 
| 31983 | 
            +
                  
         | 
| 31984 | 
            +
                    # Update properties of this object
         | 
| 31985 | 
            +
                    def update!(**args)
         | 
| 31986 | 
            +
                      @scheduling = args[:scheduling] if args.key?(:scheduling)
         | 
| 31987 | 
            +
                    end
         | 
| 31988 | 
            +
                  end
         | 
| 31989 | 
            +
                  
         | 
| 31990 | 
            +
                  # 
         | 
| 31991 | 
            +
                  class ResourceStatusScheduling
         | 
| 31992 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 31993 | 
            +
                  
         | 
| 31994 | 
            +
                    # Specifies the availability domain (AD), which this instance should be
         | 
| 31995 | 
            +
                    # scheduled on. The AD belongs to the spread GroupPlacementPolicy resource
         | 
| 31996 | 
            +
                    # policy that has been assigned to the instance. Specify a value between 1-max
         | 
| 31997 | 
            +
                    # count of availability domains in your GroupPlacementPolicy. See go/placement-
         | 
| 31998 | 
            +
                    # policy-extension for more details.
         | 
| 31999 | 
            +
                    # Corresponds to the JSON property `availabilityDomain`
         | 
| 32000 | 
            +
                    # @return [Fixnum]
         | 
| 32001 | 
            +
                    attr_accessor :availability_domain
         | 
| 32002 | 
            +
                  
         | 
| 32003 | 
            +
                    def initialize(**args)
         | 
| 32004 | 
            +
                       update!(**args)
         | 
| 32005 | 
            +
                    end
         | 
| 32006 | 
            +
                  
         | 
| 32007 | 
            +
                    # Update properties of this object
         | 
| 32008 | 
            +
                    def update!(**args)
         | 
| 32009 | 
            +
                      @availability_domain = args[:availability_domain] if args.key?(:availability_domain)
         | 
| 32010 | 
            +
                    end
         | 
| 32011 | 
            +
                  end
         | 
| 32012 | 
            +
                  
         | 
| 32013 | 
            +
                  # A rollout policy configuration.
         | 
| 32014 | 
            +
                  class RolloutPolicy
         | 
| 32015 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 32016 | 
            +
                  
         | 
| 32017 | 
            +
                    # An optional RFC3339 timestamp on or after which the update is considered
         | 
| 32018 | 
            +
                    # rolled out to any zone that is not explicitly stated.
         | 
| 32019 | 
            +
                    # Corresponds to the JSON property `defaultRolloutTime`
         | 
| 32020 | 
            +
                    # @return [String]
         | 
| 32021 | 
            +
                    attr_accessor :default_rollout_time
         | 
| 32022 | 
            +
                  
         | 
| 32023 | 
            +
                    # Location based rollout policies to apply to the resource.
         | 
| 32024 | 
            +
                    # Currently only zone names are supported and must be represented as valid URLs,
         | 
| 32025 | 
            +
                    # like: zones/us-central1-a.
         | 
| 32026 | 
            +
                    # The value expects an RFC3339 timestamp on or after which the update is
         | 
| 32027 | 
            +
                    # considered rolled out to the specified location.
         | 
| 32028 | 
            +
                    # Corresponds to the JSON property `locationRolloutPolicies`
         | 
| 32029 | 
            +
                    # @return [Hash<String,String>]
         | 
| 32030 | 
            +
                    attr_accessor :location_rollout_policies
         | 
| 32031 | 
            +
                  
         | 
| 32032 | 
            +
                    def initialize(**args)
         | 
| 32033 | 
            +
                       update!(**args)
         | 
| 32034 | 
            +
                    end
         | 
| 32035 | 
            +
                  
         | 
| 32036 | 
            +
                    # Update properties of this object
         | 
| 32037 | 
            +
                    def update!(**args)
         | 
| 32038 | 
            +
                      @default_rollout_time = args[:default_rollout_time] if args.key?(:default_rollout_time)
         | 
| 32039 | 
            +
                      @location_rollout_policies = args[:location_rollout_policies] if args.key?(:location_rollout_policies)
         | 
| 32040 | 
            +
                    end
         | 
| 32041 | 
            +
                  end
         | 
| 32042 | 
            +
                  
         | 
| 30872 32043 | 
             
                  # Represents a Route resource.
         | 
| 30873 32044 | 
             
                  # A route defines a path from VM instances in the VPC network to a specific
         | 
| 30874 32045 | 
             
                  # destination. This destination can be inside or outside the VPC network. For
         | 
| @@ -31243,7 +32414,7 @@ module Google | |
| 31243 32414 | 
             
                    attr_accessor :description
         | 
| 31244 32415 |  | 
| 31245 32416 | 
             
                    # Field to indicate if a router is dedicated to use with encrypted Interconnect
         | 
| 31246 | 
            -
                    # Attachment ( | 
| 32417 | 
            +
                    # Attachment (IPsec-encrypted Cloud Interconnect feature).
         | 
| 31247 32418 | 
             
                    # Corresponds to the JSON property `encryptedInterconnectRouter`
         | 
| 31248 32419 | 
             
                    # @return [Boolean]
         | 
| 31249 32420 | 
             
                    attr_accessor :encrypted_interconnect_router
         | 
| @@ -32898,7 +34069,7 @@ module Google | |
| 32898 34069 | 
             
                    end
         | 
| 32899 34070 | 
             
                  end
         | 
| 32900 34071 |  | 
| 32901 | 
            -
                  # Sets the scheduling options for an Instance. NextID:  | 
| 34072 | 
            +
                  # Sets the scheduling options for an Instance. NextID: 17
         | 
| 32902 34073 | 
             
                  class Scheduling
         | 
| 32903 34074 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 32904 34075 |  | 
| @@ -32913,6 +34084,15 @@ module Google | |
| 32913 34084 | 
             
                    attr_accessor :automatic_restart
         | 
| 32914 34085 | 
             
                    alias_method :automatic_restart?, :automatic_restart
         | 
| 32915 34086 |  | 
| 34087 | 
            +
                    # Specifies the availability domain (AD), which this instance should be
         | 
| 34088 | 
            +
                    # scheduled on. The AD belongs to the spread GroupPlacementPolicy resource
         | 
| 34089 | 
            +
                    # policy that has been assigned to the instance. Specify a value between 1-max
         | 
| 34090 | 
            +
                    # count of availability domains in your GroupPlacementPolicy. See go/placement-
         | 
| 34091 | 
            +
                    # policy-extension for more details.
         | 
| 34092 | 
            +
                    # Corresponds to the JSON property `availabilityDomain`
         | 
| 34093 | 
            +
                    # @return [Fixnum]
         | 
| 34094 | 
            +
                    attr_accessor :availability_domain
         | 
| 34095 | 
            +
                  
         | 
| 32916 34096 | 
             
                    # Defines whether the instance is tolerant of higher cpu latency. This can only
         | 
| 32917 34097 | 
             
                    # be set during instance creation, or when the instance is not currently running.
         | 
| 32918 34098 | 
             
                    # It must not be set if the preemptible option is also set.
         | 
| @@ -32976,6 +34156,7 @@ module Google | |
| 32976 34156 | 
             
                    # Update properties of this object
         | 
| 32977 34157 | 
             
                    def update!(**args)
         | 
| 32978 34158 | 
             
                      @automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
         | 
| 34159 | 
            +
                      @availability_domain = args[:availability_domain] if args.key?(:availability_domain)
         | 
| 32979 34160 | 
             
                      @latency_tolerant = args[:latency_tolerant] if args.key?(:latency_tolerant)
         | 
| 32980 34161 | 
             
                      @location_hint = args[:location_hint] if args.key?(:location_hint)
         | 
| 32981 34162 | 
             
                      @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
         | 
| @@ -33558,12 +34739,18 @@ module Google | |
| 33558 34739 | 
             
                    # @return [Fixnum]
         | 
| 33559 34740 | 
             
                    attr_accessor :priority
         | 
| 33560 34741 |  | 
| 33561 | 
            -
                    # Must be specified if the action is " | 
| 33562 | 
            -
                    #  | 
| 34742 | 
            +
                    # Must be specified if the action is "rate_based_ban" or "throttle". Cannot be
         | 
| 34743 | 
            +
                    # specified for any other actions.
         | 
| 33563 34744 | 
             
                    # Corresponds to the JSON property `rateLimitOptions`
         | 
| 33564 34745 | 
             
                    # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleRateLimitOptions]
         | 
| 33565 34746 | 
             
                    attr_accessor :rate_limit_options
         | 
| 33566 34747 |  | 
| 34748 | 
            +
                    # This must be specified for redirect actions. Cannot be specified for any other
         | 
| 34749 | 
            +
                    # actions.
         | 
| 34750 | 
            +
                    # Corresponds to the JSON property `redirectTarget`
         | 
| 34751 | 
            +
                    # @return [String]
         | 
| 34752 | 
            +
                    attr_accessor :redirect_target
         | 
| 34753 | 
            +
                  
         | 
| 33567 34754 | 
             
                    # Identifier for the rule. This is only unique within the given security policy.
         | 
| 33568 34755 | 
             
                    # This can only be set during rule creation, if rule number is not specified it
         | 
| 33569 34756 | 
             
                    # will be generated by the server.
         | 
| @@ -33606,6 +34793,7 @@ module Google | |
| 33606 34793 | 
             
                      @preview = args[:preview] if args.key?(:preview)
         | 
| 33607 34794 | 
             
                      @priority = args[:priority] if args.key?(:priority)
         | 
| 33608 34795 | 
             
                      @rate_limit_options = args[:rate_limit_options] if args.key?(:rate_limit_options)
         | 
| 34796 | 
            +
                      @redirect_target = args[:redirect_target] if args.key?(:redirect_target)
         | 
| 33609 34797 | 
             
                      @rule_number = args[:rule_number] if args.key?(:rule_number)
         | 
| 33610 34798 | 
             
                      @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
         | 
| 33611 34799 | 
             
                      @target_resources = args[:target_resources] if args.key?(:target_resources)
         | 
| @@ -34080,7 +35268,7 @@ module Google | |
| 34080 35268 | 
             
                  # A service attachment represents a service that a producer has exposed. It
         | 
| 34081 35269 | 
             
                  # encapsulates the load balancer which fronts the service runs and a list of NAT
         | 
| 34082 35270 | 
             
                  # IP ranges that the producers uses to represent the consumers connecting to the
         | 
| 34083 | 
            -
                  # service.
         | 
| 35271 | 
            +
                  # service. next tag = 16
         | 
| 34084 35272 | 
             
                  class ServiceAttachment
         | 
| 34085 35273 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 34086 35274 |  | 
| @@ -34108,6 +35296,14 @@ module Google | |
| 34108 35296 | 
             
                    # @return [String]
         | 
| 34109 35297 | 
             
                    attr_accessor :description
         | 
| 34110 35298 |  | 
| 35299 | 
            +
                    # If true, enable the proxy protocol which is for supplying client TCP/IP
         | 
| 35300 | 
            +
                    # address data in TCP connections that traverse proxies on their way to
         | 
| 35301 | 
            +
                    # destination servers.
         | 
| 35302 | 
            +
                    # Corresponds to the JSON property `enableProxyProtocol`
         | 
| 35303 | 
            +
                    # @return [Boolean]
         | 
| 35304 | 
            +
                    attr_accessor :enable_proxy_protocol
         | 
| 35305 | 
            +
                    alias_method :enable_proxy_protocol?, :enable_proxy_protocol
         | 
| 35306 | 
            +
                  
         | 
| 34111 35307 | 
             
                    # [Output Only] The unique identifier for the resource type. The server
         | 
| 34112 35308 | 
             
                    # generates this identifier.
         | 
| 34113 35309 | 
             
                    # Corresponds to the JSON property `id`
         | 
| @@ -34164,6 +35360,7 @@ module Google | |
| 34164 35360 | 
             
                      @consumer_forwarding_rules = args[:consumer_forwarding_rules] if args.key?(:consumer_forwarding_rules)
         | 
| 34165 35361 | 
             
                      @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
         | 
| 34166 35362 | 
             
                      @description = args[:description] if args.key?(:description)
         | 
| 35363 | 
            +
                      @enable_proxy_protocol = args[:enable_proxy_protocol] if args.key?(:enable_proxy_protocol)
         | 
| 34167 35364 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 34168 35365 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 34169 35366 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| @@ -34174,6 +35371,129 @@ module Google | |
| 34174 35371 | 
             
                    end
         | 
| 34175 35372 | 
             
                  end
         | 
| 34176 35373 |  | 
| 35374 | 
            +
                  # Contains a list of ServiceAttachmentsScopedList.
         | 
| 35375 | 
            +
                  class ServiceAttachmentAggregatedList
         | 
| 35376 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 35377 | 
            +
                  
         | 
| 35378 | 
            +
                    # [Output Only] Unique identifier for the resource; defined by the server.
         | 
| 35379 | 
            +
                    # Corresponds to the JSON property `id`
         | 
| 35380 | 
            +
                    # @return [String]
         | 
| 35381 | 
            +
                    attr_accessor :id
         | 
| 35382 | 
            +
                  
         | 
| 35383 | 
            +
                    # A list of ServiceAttachmentsScopedList resources.
         | 
| 35384 | 
            +
                    # Corresponds to the JSON property `items`
         | 
| 35385 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::ServiceAttachmentsScopedList>]
         | 
| 35386 | 
            +
                    attr_accessor :items
         | 
| 35387 | 
            +
                  
         | 
| 35388 | 
            +
                    # Type of resource.
         | 
| 35389 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 35390 | 
            +
                    # @return [String]
         | 
| 35391 | 
            +
                    attr_accessor :kind
         | 
| 35392 | 
            +
                  
         | 
| 35393 | 
            +
                    # [Output Only] This token allows you to get the next page of results for list
         | 
| 35394 | 
            +
                    # requests. If the number of results is larger than maxResults, use the
         | 
| 35395 | 
            +
                    # nextPageToken as a value for the query parameter pageToken in the next list
         | 
| 35396 | 
            +
                    # request. Subsequent list requests will have their own nextPageToken to
         | 
| 35397 | 
            +
                    # continue paging through the results.
         | 
| 35398 | 
            +
                    # Corresponds to the JSON property `nextPageToken`
         | 
| 35399 | 
            +
                    # @return [String]
         | 
| 35400 | 
            +
                    attr_accessor :next_page_token
         | 
| 35401 | 
            +
                  
         | 
| 35402 | 
            +
                    # [Output Only] Server-defined URL for this resource.
         | 
| 35403 | 
            +
                    # Corresponds to the JSON property `selfLink`
         | 
| 35404 | 
            +
                    # @return [String]
         | 
| 35405 | 
            +
                    attr_accessor :self_link
         | 
| 35406 | 
            +
                  
         | 
| 35407 | 
            +
                    # [Output Only] Unreachable resources.
         | 
| 35408 | 
            +
                    # Corresponds to the JSON property `unreachables`
         | 
| 35409 | 
            +
                    # @return [Array<String>]
         | 
| 35410 | 
            +
                    attr_accessor :unreachables
         | 
| 35411 | 
            +
                  
         | 
| 35412 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 35413 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 35414 | 
            +
                    # @return [Google::Apis::ComputeAlpha::ServiceAttachmentAggregatedList::Warning]
         | 
| 35415 | 
            +
                    attr_accessor :warning
         | 
| 35416 | 
            +
                  
         | 
| 35417 | 
            +
                    def initialize(**args)
         | 
| 35418 | 
            +
                       update!(**args)
         | 
| 35419 | 
            +
                    end
         | 
| 35420 | 
            +
                  
         | 
| 35421 | 
            +
                    # Update properties of this object
         | 
| 35422 | 
            +
                    def update!(**args)
         | 
| 35423 | 
            +
                      @id = args[:id] if args.key?(:id)
         | 
| 35424 | 
            +
                      @items = args[:items] if args.key?(:items)
         | 
| 35425 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 35426 | 
            +
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 35427 | 
            +
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 35428 | 
            +
                      @unreachables = args[:unreachables] if args.key?(:unreachables)
         | 
| 35429 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 35430 | 
            +
                    end
         | 
| 35431 | 
            +
                    
         | 
| 35432 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 35433 | 
            +
                    class Warning
         | 
| 35434 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 35435 | 
            +
                    
         | 
| 35436 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 35437 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 35438 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 35439 | 
            +
                      # @return [String]
         | 
| 35440 | 
            +
                      attr_accessor :code
         | 
| 35441 | 
            +
                    
         | 
| 35442 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example:
         | 
| 35443 | 
            +
                      # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 35444 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 35445 | 
            +
                      # @return [Array<Google::Apis::ComputeAlpha::ServiceAttachmentAggregatedList::Warning::Datum>]
         | 
| 35446 | 
            +
                      attr_accessor :data
         | 
| 35447 | 
            +
                    
         | 
| 35448 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 35449 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 35450 | 
            +
                      # @return [String]
         | 
| 35451 | 
            +
                      attr_accessor :message
         | 
| 35452 | 
            +
                    
         | 
| 35453 | 
            +
                      def initialize(**args)
         | 
| 35454 | 
            +
                         update!(**args)
         | 
| 35455 | 
            +
                      end
         | 
| 35456 | 
            +
                    
         | 
| 35457 | 
            +
                      # Update properties of this object
         | 
| 35458 | 
            +
                      def update!(**args)
         | 
| 35459 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 35460 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 35461 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 35462 | 
            +
                      end
         | 
| 35463 | 
            +
                      
         | 
| 35464 | 
            +
                      # 
         | 
| 35465 | 
            +
                      class Datum
         | 
| 35466 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 35467 | 
            +
                      
         | 
| 35468 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 35469 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 35470 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 35471 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 35472 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 35473 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 35474 | 
            +
                        # for IP forwarding).
         | 
| 35475 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 35476 | 
            +
                        # @return [String]
         | 
| 35477 | 
            +
                        attr_accessor :key
         | 
| 35478 | 
            +
                      
         | 
| 35479 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 35480 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 35481 | 
            +
                        # @return [String]
         | 
| 35482 | 
            +
                        attr_accessor :value
         | 
| 35483 | 
            +
                      
         | 
| 35484 | 
            +
                        def initialize(**args)
         | 
| 35485 | 
            +
                           update!(**args)
         | 
| 35486 | 
            +
                        end
         | 
| 35487 | 
            +
                      
         | 
| 35488 | 
            +
                        # Update properties of this object
         | 
| 35489 | 
            +
                        def update!(**args)
         | 
| 35490 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 35491 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 35492 | 
            +
                        end
         | 
| 35493 | 
            +
                      end
         | 
| 35494 | 
            +
                    end
         | 
| 35495 | 
            +
                  end
         | 
| 35496 | 
            +
                  
         | 
| 34177 35497 | 
             
                  # [Output Only] A consumer forwarding rule connected to this service attachment.
         | 
| 34178 35498 | 
             
                  class ServiceAttachmentConsumerForwardingRule
         | 
| 34179 35499 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -34317,6 +35637,97 @@ module Google | |
| 34317 35637 | 
             
                    end
         | 
| 34318 35638 | 
             
                  end
         | 
| 34319 35639 |  | 
| 35640 | 
            +
                  # 
         | 
| 35641 | 
            +
                  class ServiceAttachmentsScopedList
         | 
| 35642 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 35643 | 
            +
                  
         | 
| 35644 | 
            +
                    # A list of ServiceAttachments contained in this scope.
         | 
| 35645 | 
            +
                    # Corresponds to the JSON property `resources`
         | 
| 35646 | 
            +
                    # @return [Array<Google::Apis::ComputeAlpha::ServiceAttachment>]
         | 
| 35647 | 
            +
                    attr_accessor :resources
         | 
| 35648 | 
            +
                  
         | 
| 35649 | 
            +
                    # Informational warning which replaces the list of service attachments when the
         | 
| 35650 | 
            +
                    # list is empty.
         | 
| 35651 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 35652 | 
            +
                    # @return [Google::Apis::ComputeAlpha::ServiceAttachmentsScopedList::Warning]
         | 
| 35653 | 
            +
                    attr_accessor :warning
         | 
| 35654 | 
            +
                  
         | 
| 35655 | 
            +
                    def initialize(**args)
         | 
| 35656 | 
            +
                       update!(**args)
         | 
| 35657 | 
            +
                    end
         | 
| 35658 | 
            +
                  
         | 
| 35659 | 
            +
                    # Update properties of this object
         | 
| 35660 | 
            +
                    def update!(**args)
         | 
| 35661 | 
            +
                      @resources = args[:resources] if args.key?(:resources)
         | 
| 35662 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 35663 | 
            +
                    end
         | 
| 35664 | 
            +
                    
         | 
| 35665 | 
            +
                    # Informational warning which replaces the list of service attachments when the
         | 
| 35666 | 
            +
                    # list is empty.
         | 
| 35667 | 
            +
                    class Warning
         | 
| 35668 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 35669 | 
            +
                    
         | 
| 35670 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 35671 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 35672 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 35673 | 
            +
                      # @return [String]
         | 
| 35674 | 
            +
                      attr_accessor :code
         | 
| 35675 | 
            +
                    
         | 
| 35676 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example:
         | 
| 35677 | 
            +
                      # "data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 35678 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 35679 | 
            +
                      # @return [Array<Google::Apis::ComputeAlpha::ServiceAttachmentsScopedList::Warning::Datum>]
         | 
| 35680 | 
            +
                      attr_accessor :data
         | 
| 35681 | 
            +
                    
         | 
| 35682 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 35683 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 35684 | 
            +
                      # @return [String]
         | 
| 35685 | 
            +
                      attr_accessor :message
         | 
| 35686 | 
            +
                    
         | 
| 35687 | 
            +
                      def initialize(**args)
         | 
| 35688 | 
            +
                         update!(**args)
         | 
| 35689 | 
            +
                      end
         | 
| 35690 | 
            +
                    
         | 
| 35691 | 
            +
                      # Update properties of this object
         | 
| 35692 | 
            +
                      def update!(**args)
         | 
| 35693 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 35694 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 35695 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 35696 | 
            +
                      end
         | 
| 35697 | 
            +
                      
         | 
| 35698 | 
            +
                      # 
         | 
| 35699 | 
            +
                      class Datum
         | 
| 35700 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 35701 | 
            +
                      
         | 
| 35702 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 35703 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 35704 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 35705 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 35706 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 35707 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 35708 | 
            +
                        # for IP forwarding).
         | 
| 35709 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 35710 | 
            +
                        # @return [String]
         | 
| 35711 | 
            +
                        attr_accessor :key
         | 
| 35712 | 
            +
                      
         | 
| 35713 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 35714 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 35715 | 
            +
                        # @return [String]
         | 
| 35716 | 
            +
                        attr_accessor :value
         | 
| 35717 | 
            +
                      
         | 
| 35718 | 
            +
                        def initialize(**args)
         | 
| 35719 | 
            +
                           update!(**args)
         | 
| 35720 | 
            +
                        end
         | 
| 35721 | 
            +
                      
         | 
| 35722 | 
            +
                        # Update properties of this object
         | 
| 35723 | 
            +
                        def update!(**args)
         | 
| 35724 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 35725 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 35726 | 
            +
                        end
         | 
| 35727 | 
            +
                      end
         | 
| 35728 | 
            +
                    end
         | 
| 35729 | 
            +
                  end
         | 
| 35730 | 
            +
                  
         | 
| 34320 35731 | 
             
                  # A set of Shielded Instance options.
         | 
| 34321 35732 | 
             
                  class ShieldedInstanceConfig
         | 
| 34322 35733 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -34678,6 +36089,12 @@ module Google | |
| 34678 36089 | 
             
                    # @return [Array<String>]
         | 
| 34679 36090 | 
             
                    attr_accessor :licenses
         | 
| 34680 36091 |  | 
| 36092 | 
            +
                    # An opaque location hint used to place the snapshot close to other resources.
         | 
| 36093 | 
            +
                    # This field is for use by internal tools that use the public API.
         | 
| 36094 | 
            +
                    # Corresponds to the JSON property `locationHint`
         | 
| 36095 | 
            +
                    # @return [String]
         | 
| 36096 | 
            +
                    attr_accessor :location_hint
         | 
| 36097 | 
            +
                  
         | 
| 34681 36098 | 
             
                    # Name of the resource; provided by the client when the resource is created. The
         | 
| 34682 36099 | 
             
                    # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
         | 
| 34683 36100 | 
             
                    # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
         | 
| @@ -34782,6 +36199,7 @@ module Google | |
| 34782 36199 | 
             
                      @labels = args[:labels] if args.key?(:labels)
         | 
| 34783 36200 | 
             
                      @license_codes = args[:license_codes] if args.key?(:license_codes)
         | 
| 34784 36201 | 
             
                      @licenses = args[:licenses] if args.key?(:licenses)
         | 
| 36202 | 
            +
                      @location_hint = args[:location_hint] if args.key?(:location_hint)
         | 
| 34785 36203 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 34786 36204 | 
             
                      @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
         | 
| 34787 36205 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| @@ -35036,7 +36454,12 @@ module Google | |
| 35036 36454 | 
             
                    # @return [Array<Google::Apis::ComputeAlpha::NetworkInterface>]
         | 
| 35037 36455 | 
             
                    attr_accessor :network_interfaces
         | 
| 35038 36456 |  | 
| 35039 | 
            -
                    #  | 
| 36457 | 
            +
                    # PostKeyRevocationActionType of the instance.
         | 
| 36458 | 
            +
                    # Corresponds to the JSON property `postKeyRevocationActionType`
         | 
| 36459 | 
            +
                    # @return [String]
         | 
| 36460 | 
            +
                    attr_accessor :post_key_revocation_action_type
         | 
| 36461 | 
            +
                  
         | 
| 36462 | 
            +
                    # Sets the scheduling options for an Instance. NextID: 17
         | 
| 35040 36463 | 
             
                    # Corresponds to the JSON property `scheduling`
         | 
| 35041 36464 | 
             
                    # @return [Google::Apis::ComputeAlpha::Scheduling]
         | 
| 35042 36465 | 
             
                    attr_accessor :scheduling
         | 
| @@ -35070,6 +36493,7 @@ module Google | |
| 35070 36493 | 
             
                      @metadata = args[:metadata] if args.key?(:metadata)
         | 
| 35071 36494 | 
             
                      @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
         | 
| 35072 36495 | 
             
                      @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
         | 
| 36496 | 
            +
                      @post_key_revocation_action_type = args[:post_key_revocation_action_type] if args.key?(:post_key_revocation_action_type)
         | 
| 35073 36497 | 
             
                      @scheduling = args[:scheduling] if args.key?(:scheduling)
         | 
| 35074 36498 | 
             
                      @service_accounts = args[:service_accounts] if args.key?(:service_accounts)
         | 
| 35075 36499 | 
             
                      @tags = args[:tags] if args.key?(:tags)
         | 
| @@ -35460,8 +36884,9 @@ module Google | |
| 35460 36884 | 
             
                    # @return [Hash<String,String>]
         | 
| 35461 36885 | 
             
                    attr_accessor :domain_status
         | 
| 35462 36886 |  | 
| 35463 | 
            -
                    # The domains for which a managed SSL certificate will be generated.  | 
| 35464 | 
            -
                    #  | 
| 36887 | 
            +
                    # The domains for which a managed SSL certificate will be generated. Each Google-
         | 
| 36888 | 
            +
                    # managed SSL certificate supports up to the [maximum number of domains per
         | 
| 36889 | 
            +
                    # Google-managed SSL certificate](/load-balancing/docs/quotas#ssl_certificates).
         | 
| 35465 36890 | 
             
                    # Corresponds to the JSON property `domains`
         | 
| 35466 36891 | 
             
                    # @return [Array<String>]
         | 
| 35467 36892 | 
             
                    attr_accessor :domains
         | 
| @@ -35973,6 +37398,20 @@ module Google | |
| 35973 37398 | 
             
                    # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateDiskDevice>]
         | 
| 35974 37399 | 
             
                    attr_accessor :disks
         | 
| 35975 37400 |  | 
| 37401 | 
            +
                    # External network IPs assigned to the instances that will be preserved on
         | 
| 37402 | 
            +
                    # instance delete, update, etc. This map is keyed with the network interface
         | 
| 37403 | 
            +
                    # name.
         | 
| 37404 | 
            +
                    # Corresponds to the JSON property `externalIPs`
         | 
| 37405 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateNetworkIp>]
         | 
| 37406 | 
            +
                    attr_accessor :external_i_ps
         | 
| 37407 | 
            +
                  
         | 
| 37408 | 
            +
                    # Internal network IPs assigned to the instances that will be preserved on
         | 
| 37409 | 
            +
                    # instance delete, update, etc. This map is keyed with the network interface
         | 
| 37410 | 
            +
                    # name.
         | 
| 37411 | 
            +
                    # Corresponds to the JSON property `internalIPs`
         | 
| 37412 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeAlpha::StatefulPolicyPreservedStateNetworkIp>]
         | 
| 37413 | 
            +
                    attr_accessor :internal_i_ps
         | 
| 37414 | 
            +
                  
         | 
| 35976 37415 | 
             
                    def initialize(**args)
         | 
| 35977 37416 | 
             
                       update!(**args)
         | 
| 35978 37417 | 
             
                    end
         | 
| @@ -35980,6 +37419,8 @@ module Google | |
| 35980 37419 | 
             
                    # Update properties of this object
         | 
| 35981 37420 | 
             
                    def update!(**args)
         | 
| 35982 37421 | 
             
                      @disks = args[:disks] if args.key?(:disks)
         | 
| 37422 | 
            +
                      @external_i_ps = args[:external_i_ps] if args.key?(:external_i_ps)
         | 
| 37423 | 
            +
                      @internal_i_ps = args[:internal_i_ps] if args.key?(:internal_i_ps)
         | 
| 35983 37424 | 
             
                    end
         | 
| 35984 37425 | 
             
                  end
         | 
| 35985 37426 |  | 
| @@ -36006,6 +37447,28 @@ module Google | |
| 36006 37447 | 
             
                    end
         | 
| 36007 37448 | 
             
                  end
         | 
| 36008 37449 |  | 
| 37450 | 
            +
                  # 
         | 
| 37451 | 
            +
                  class StatefulPolicyPreservedStateNetworkIp
         | 
| 37452 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 37453 | 
            +
                  
         | 
| 37454 | 
            +
                    # These stateful IPs will never be released during autohealing, update or VM
         | 
| 37455 | 
            +
                    # instance recreate operations. This flag is used to configure if the IP
         | 
| 37456 | 
            +
                    # reservation should be deleted after it is no longer used by the group, e.g.
         | 
| 37457 | 
            +
                    # when the given instance or the whole group is deleted.
         | 
| 37458 | 
            +
                    # Corresponds to the JSON property `autoDelete`
         | 
| 37459 | 
            +
                    # @return [String]
         | 
| 37460 | 
            +
                    attr_accessor :auto_delete
         | 
| 37461 | 
            +
                  
         | 
| 37462 | 
            +
                    def initialize(**args)
         | 
| 37463 | 
            +
                       update!(**args)
         | 
| 37464 | 
            +
                    end
         | 
| 37465 | 
            +
                  
         | 
| 37466 | 
            +
                    # Update properties of this object
         | 
| 37467 | 
            +
                    def update!(**args)
         | 
| 37468 | 
            +
                      @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
         | 
| 37469 | 
            +
                    end
         | 
| 37470 | 
            +
                  end
         | 
| 37471 | 
            +
                  
         | 
| 36009 37472 | 
             
                  # Represents a Subnetwork resource.
         | 
| 36010 37473 | 
             
                  # A subnetwork (also known as a subnet) is a logical partition of a Virtual
         | 
| 36011 37474 | 
             
                  # Private Cloud network with one primary IP range and zero or more secondary IP
         | 
| @@ -36060,6 +37523,12 @@ module Google | |
| 36060 37523 | 
             
                    attr_accessor :enable_flow_logs
         | 
| 36061 37524 | 
             
                    alias_method :enable_flow_logs?, :enable_flow_logs
         | 
| 36062 37525 |  | 
| 37526 | 
            +
                    # Enables Layer2 communication on the subnetwork.
         | 
| 37527 | 
            +
                    # Corresponds to the JSON property `enableL2`
         | 
| 37528 | 
            +
                    # @return [Boolean]
         | 
| 37529 | 
            +
                    attr_accessor :enable_l2
         | 
| 37530 | 
            +
                    alias_method :enable_l2?, :enable_l2
         | 
| 37531 | 
            +
                  
         | 
| 36063 37532 | 
             
                    # Deprecated in favor of enable in PrivateIpv6GoogleAccess. Whether the VMs in
         | 
| 36064 37533 | 
             
                    # this subnet can directly access Google services via internal IPv6 addresses.
         | 
| 36065 37534 | 
             
                    # This field can be both set at resource creation time and updated using patch.
         | 
| @@ -36109,9 +37578,9 @@ module Google | |
| 36109 37578 | 
             
                    # The range of internal addresses that are owned by this subnetwork. Provide
         | 
| 36110 37579 | 
             
                    # this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.
         | 
| 36111 37580 | 
             
                    # 64.0.0/10. Ranges must be unique and non-overlapping within a network. Only
         | 
| 36112 | 
            -
                    # IPv4 is supported. This field is set at resource creation time.  | 
| 36113 | 
            -
                    #  | 
| 36114 | 
            -
                    #  | 
| 37581 | 
            +
                    # IPv4 is supported. This field is set at resource creation time. The range can
         | 
| 37582 | 
            +
                    # be any range listed in the Valid ranges list. The range can be expanded after
         | 
| 37583 | 
            +
                    # creation using expandIpCidrRange.
         | 
| 36115 37584 | 
             
                    # Corresponds to the JSON property `ipCidrRange`
         | 
| 36116 37585 | 
             
                    # @return [String]
         | 
| 36117 37586 | 
             
                    attr_accessor :ip_cidr_range
         | 
| @@ -36256,6 +37725,14 @@ module Google | |
| 36256 37725 | 
             
                    # @return [String]
         | 
| 36257 37726 | 
             
                    attr_accessor :state
         | 
| 36258 37727 |  | 
| 37728 | 
            +
                    # A repeated field indicating the VLAN IDs supported on this subnetwork. During
         | 
| 37729 | 
            +
                    # Subnet creation, specifying vlan is valid only if enable_l2 is true. During
         | 
| 37730 | 
            +
                    # Subnet Update, specifying vlan is allowed only for l2 enabled subnets.
         | 
| 37731 | 
            +
                    # Restricted to only one VLAN.
         | 
| 37732 | 
            +
                    # Corresponds to the JSON property `vlans`
         | 
| 37733 | 
            +
                    # @return [Array<Fixnum>]
         | 
| 37734 | 
            +
                    attr_accessor :vlans
         | 
| 37735 | 
            +
                  
         | 
| 36259 37736 | 
             
                    def initialize(**args)
         | 
| 36260 37737 | 
             
                       update!(**args)
         | 
| 36261 37738 | 
             
                    end
         | 
| @@ -36267,6 +37744,7 @@ module Google | |
| 36267 37744 | 
             
                      @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
         | 
| 36268 37745 | 
             
                      @description = args[:description] if args.key?(:description)
         | 
| 36269 37746 | 
             
                      @enable_flow_logs = args[:enable_flow_logs] if args.key?(:enable_flow_logs)
         | 
| 37747 | 
            +
                      @enable_l2 = args[:enable_l2] if args.key?(:enable_l2)
         | 
| 36270 37748 | 
             
                      @enable_private_v6_access = args[:enable_private_v6_access] if args.key?(:enable_private_v6_access)
         | 
| 36271 37749 | 
             
                      @external_ipv6_prefix = args[:external_ipv6_prefix] if args.key?(:external_ipv6_prefix)
         | 
| 36272 37750 | 
             
                      @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
         | 
| @@ -36292,6 +37770,7 @@ module Google | |
| 36292 37770 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 36293 37771 | 
             
                      @stack_type = args[:stack_type] if args.key?(:stack_type)
         | 
| 36294 37772 | 
             
                      @state = args[:state] if args.key?(:state)
         | 
| 37773 | 
            +
                      @vlans = args[:vlans] if args.key?(:vlans)
         | 
| 36295 37774 | 
             
                    end
         | 
| 36296 37775 | 
             
                  end
         | 
| 36297 37776 |  | 
| @@ -36607,8 +38086,8 @@ module Google | |
| 36607 38086 | 
             
                    # The range of IP addresses belonging to this subnetwork secondary range.
         | 
| 36608 38087 | 
             
                    # Provide this property when you create the subnetwork. Ranges must be unique
         | 
| 36609 38088 | 
             
                    # and non-overlapping with all primary and secondary IP ranges within a network.
         | 
| 36610 | 
            -
                    # Only IPv4 is supported.  | 
| 36611 | 
            -
                    #  | 
| 38089 | 
            +
                    # Only IPv4 is supported. The range can be any range listed in the Valid ranges
         | 
| 38090 | 
            +
                    # list.
         | 
| 36612 38091 | 
             
                    # Corresponds to the JSON property `ipCidrRange`
         | 
| 36613 38092 | 
             
                    # @return [String]
         | 
| 36614 38093 | 
             
                    attr_accessor :ip_cidr_range
         | 
| @@ -36880,9 +38359,10 @@ module Google | |
| 36880 38359 |  | 
| 36881 38360 | 
             
                  # Represents a Target gRPC Proxy resource.
         | 
| 36882 38361 | 
             
                  # A target gRPC proxy is a component of load balancers intended for load
         | 
| 36883 | 
            -
                  # balancing gRPC traffic.  | 
| 36884 | 
            -
                  #  | 
| 36885 | 
            -
                  #  | 
| 38362 | 
            +
                  # balancing gRPC traffic. Only global forwarding rules with load balancing
         | 
| 38363 | 
            +
                  # scheme INTERNAL_SELF_MANAGED can reference a target gRPC proxy. The target
         | 
| 38364 | 
            +
                  # gRPC Proxy references a URL map that specifies how traffic is routed to gRPC
         | 
| 38365 | 
            +
                  # backend services. (== resource_for `$api_version`.targetGrpcProxies ==)
         | 
| 36886 38366 | 
             
                  class TargetGrpcProxy
         | 
| 36887 38367 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 36888 38368 |  | 
| @@ -37830,7 +39310,6 @@ module Google | |
| 37830 39310 | 
             
                    # possible.
         | 
| 37831 39311 | 
             
                    # - When quic-override is set to DISABLE, the load balancer doesn't use QUIC.
         | 
| 37832 39312 | 
             
                    # - If the quic-override flag is not specified, NONE is implied.
         | 
| 37833 | 
            -
                    # -
         | 
| 37834 39313 | 
             
                    # Corresponds to the JSON property `quicOverride`
         | 
| 37835 39314 | 
             
                    # @return [String]
         | 
| 37836 39315 | 
             
                    attr_accessor :quic_override
         | 
| @@ -38642,8 +40121,7 @@ module Google | |
| 38642 40121 | 
             
                    attr_accessor :failover_ratio
         | 
| 38643 40122 |  | 
| 38644 40123 | 
             
                    # The URL of the HttpHealthCheck resource. A member instance in this pool is
         | 
| 38645 | 
            -
                    # considered healthy if and only if the health checks pass.  | 
| 38646 | 
            -
                    # all member instances will be considered healthy at all times. Only legacy
         | 
| 40124 | 
            +
                    # considered healthy if and only if the health checks pass. Only legacy
         | 
| 38647 40125 | 
             
                    # HttpHealthChecks are supported. Only one health check may be specified.
         | 
| 38648 40126 | 
             
                    # Corresponds to the JSON property `healthChecks`
         | 
| 38649 40127 | 
             
                    # @return [Array<String>]
         | 
| @@ -40462,6 +41940,12 @@ module Google | |
| 40462 41940 | 
             
                    # @return [String]
         | 
| 40463 41941 | 
             
                    attr_accessor :date
         | 
| 40464 41942 |  | 
| 41943 | 
            +
                    # Represents a window of time using two timestamps: `earliest` and `latest`.
         | 
| 41944 | 
            +
                    # This timestamp values are in RFC3339 text format.
         | 
| 41945 | 
            +
                    # Corresponds to the JSON property `startTimeWindow`
         | 
| 41946 | 
            +
                    # @return [Google::Apis::ComputeAlpha::UpcomingMaintenanceTimeWindow]
         | 
| 41947 | 
            +
                    attr_accessor :start_time_window
         | 
| 41948 | 
            +
                  
         | 
| 40465 41949 | 
             
                    # [Output Only] The time when the maintenance will take place. This value is in
         | 
| 40466 41950 | 
             
                    # RFC3339 text format. DEPRECATED: Use start_time_window instead.
         | 
| 40467 41951 | 
             
                    # Corresponds to the JSON property `time`
         | 
| @@ -40480,11 +41964,38 @@ module Google | |
| 40480 41964 | 
             
                    # Update properties of this object
         | 
| 40481 41965 | 
             
                    def update!(**args)
         | 
| 40482 41966 | 
             
                      @date = args[:date] if args.key?(:date)
         | 
| 41967 | 
            +
                      @start_time_window = args[:start_time_window] if args.key?(:start_time_window)
         | 
| 40483 41968 | 
             
                      @time = args[:time] if args.key?(:time)
         | 
| 40484 41969 | 
             
                      @type = args[:type] if args.key?(:type)
         | 
| 40485 41970 | 
             
                    end
         | 
| 40486 41971 | 
             
                  end
         | 
| 40487 41972 |  | 
| 41973 | 
            +
                  # Represents a window of time using two timestamps: `earliest` and `latest`.
         | 
| 41974 | 
            +
                  # This timestamp values are in RFC3339 text format.
         | 
| 41975 | 
            +
                  class UpcomingMaintenanceTimeWindow
         | 
| 41976 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 41977 | 
            +
                  
         | 
| 41978 | 
            +
                    # 
         | 
| 41979 | 
            +
                    # Corresponds to the JSON property `earliest`
         | 
| 41980 | 
            +
                    # @return [String]
         | 
| 41981 | 
            +
                    attr_accessor :earliest
         | 
| 41982 | 
            +
                  
         | 
| 41983 | 
            +
                    # 
         | 
| 41984 | 
            +
                    # Corresponds to the JSON property `latest`
         | 
| 41985 | 
            +
                    # @return [String]
         | 
| 41986 | 
            +
                    attr_accessor :latest
         | 
| 41987 | 
            +
                  
         | 
| 41988 | 
            +
                    def initialize(**args)
         | 
| 41989 | 
            +
                       update!(**args)
         | 
| 41990 | 
            +
                    end
         | 
| 41991 | 
            +
                  
         | 
| 41992 | 
            +
                    # Update properties of this object
         | 
| 41993 | 
            +
                    def update!(**args)
         | 
| 41994 | 
            +
                      @earliest = args[:earliest] if args.key?(:earliest)
         | 
| 41995 | 
            +
                      @latest = args[:latest] if args.key?(:latest)
         | 
| 41996 | 
            +
                    end
         | 
| 41997 | 
            +
                  end
         | 
| 41998 | 
            +
                  
         | 
| 40488 41999 | 
             
                  # Represents a URL Map resource.
         | 
| 40489 42000 | 
             
                  # Google Compute Engine has two URL Map resources:
         | 
| 40490 42001 | 
             
                  # * [Global](/compute/docs/reference/rest/`$api_version`/urlMaps) * [Regional](/
         | 
| @@ -42182,9 +43693,9 @@ module Google | |
| 42182 43693 | 
             
                    attr_accessor :id
         | 
| 42183 43694 |  | 
| 42184 43695 | 
             
                    # URL of the interconnect attachment resource. When the value of this field is
         | 
| 42185 | 
            -
                    # present, the VPN Gateway will be used for IPsec  | 
| 42186 | 
            -
                    # or Ingress traffic for this VPN Gateway interface will go through | 
| 42187 | 
            -
                    # specified interconnect attachment resource.
         | 
| 43696 | 
            +
                    # present, the VPN Gateway will be used for IPsec-encrypted Cloud Interconnect;
         | 
| 43697 | 
            +
                    # all Egress or Ingress traffic for this VPN Gateway interface will go through
         | 
| 43698 | 
            +
                    # the specified interconnect attachment resource.
         | 
| 42188 43699 | 
             
                    # Corresponds to the JSON property `interconnectAttachment`
         | 
| 42189 43700 | 
             
                    # @return [String]
         | 
| 42190 43701 | 
             
                    attr_accessor :interconnect_attachment
         |