google-apis-compute_beta 0.53.0 → 0.55.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.
| @@ -22,6 +22,52 @@ module Google | |
| 22 22 | 
             
              module Apis
         | 
| 23 23 | 
             
                module ComputeBeta
         | 
| 24 24 |  | 
| 25 | 
            +
                  # Contains the configurations necessary to generate a signature for access to
         | 
| 26 | 
            +
                  # private storage buckets that support Signature Version 4 for authentication.
         | 
| 27 | 
            +
                  # The service name for generating the authentication header will always default
         | 
| 28 | 
            +
                  # to 's3'.
         | 
| 29 | 
            +
                  class Awsv4Signature
         | 
| 30 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 31 | 
            +
                  
         | 
| 32 | 
            +
                    # The access key used for s3 bucket authentication. Required for updating or
         | 
| 33 | 
            +
                    # creating a backend that uses AWS v4 signature authentication, but will not be
         | 
| 34 | 
            +
                    # returned as part of the configuration when queried with a REST API GET request.
         | 
| 35 | 
            +
                    # @InputOnly
         | 
| 36 | 
            +
                    # Corresponds to the JSON property `accessKey`
         | 
| 37 | 
            +
                    # @return [String]
         | 
| 38 | 
            +
                    attr_accessor :access_key
         | 
| 39 | 
            +
                  
         | 
| 40 | 
            +
                    # The identifier of an access key used for s3 bucket authentication.
         | 
| 41 | 
            +
                    # Corresponds to the JSON property `accessKeyId`
         | 
| 42 | 
            +
                    # @return [String]
         | 
| 43 | 
            +
                    attr_accessor :access_key_id
         | 
| 44 | 
            +
                  
         | 
| 45 | 
            +
                    # The optional version identifier for the access key. You can use this to keep
         | 
| 46 | 
            +
                    # track of different iterations of your access key.
         | 
| 47 | 
            +
                    # Corresponds to the JSON property `accessKeyVersion`
         | 
| 48 | 
            +
                    # @return [String]
         | 
| 49 | 
            +
                    attr_accessor :access_key_version
         | 
| 50 | 
            +
                  
         | 
| 51 | 
            +
                    # The name of the cloud region of your origin. This is a free-form field with
         | 
| 52 | 
            +
                    # the name of the region your cloud uses to host your origin. For example, "us-
         | 
| 53 | 
            +
                    # east-1" for AWS or "us-ashburn-1" for OCI.
         | 
| 54 | 
            +
                    # Corresponds to the JSON property `originRegion`
         | 
| 55 | 
            +
                    # @return [String]
         | 
| 56 | 
            +
                    attr_accessor :origin_region
         | 
| 57 | 
            +
                  
         | 
| 58 | 
            +
                    def initialize(**args)
         | 
| 59 | 
            +
                       update!(**args)
         | 
| 60 | 
            +
                    end
         | 
| 61 | 
            +
                  
         | 
| 62 | 
            +
                    # Update properties of this object
         | 
| 63 | 
            +
                    def update!(**args)
         | 
| 64 | 
            +
                      @access_key = args[:access_key] if args.key?(:access_key)
         | 
| 65 | 
            +
                      @access_key_id = args[:access_key_id] if args.key?(:access_key_id)
         | 
| 66 | 
            +
                      @access_key_version = args[:access_key_version] if args.key?(:access_key_version)
         | 
| 67 | 
            +
                      @origin_region = args[:origin_region] if args.key?(:origin_region)
         | 
| 68 | 
            +
                    end
         | 
| 69 | 
            +
                  end
         | 
| 70 | 
            +
                  
         | 
| 25 71 | 
             
                  # A specification of the type and number of accelerator cards attached to the
         | 
| 26 72 | 
             
                  # instance.
         | 
| 27 73 | 
             
                  class AcceleratorConfig
         | 
| @@ -2614,7 +2660,9 @@ module Google | |
| 2614 2660 | 
             
                    # group is completely drained, offering 0% of its available capacity. The valid
         | 
| 2615 2661 | 
             
                    # ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and
         | 
| 2616 2662 | 
             
                    # smaller than 0.1. You cannot configure a setting of 0 when there is only one
         | 
| 2617 | 
            -
                    # backend attached to the backend service.
         | 
| 2663 | 
            +
                    # backend attached to the backend service. Not available with backends that don'
         | 
| 2664 | 
            +
                    # t support using a balancingMode. This includes backends such as global
         | 
| 2665 | 
            +
                    # internet NEGs, regional serverless NEGs, and PSC NEGs.
         | 
| 2618 2666 | 
             
                    # Corresponds to the JSON property `capacityScaler`
         | 
| 2619 2667 | 
             
                    # @return [Float]
         | 
| 2620 2668 | 
             
                    attr_accessor :capacity_scaler
         | 
| @@ -7328,7 +7376,8 @@ module Google | |
| 7328 7376 |  | 
| 7329 7377 | 
             
                    # The reason of the error. This is a constant value that identifies the
         | 
| 7330 7378 | 
             
                    # proximate cause of the error. Error reasons are unique within a particular
         | 
| 7331 | 
            -
                    # domain of errors. This should be at most 63 characters and match  | 
| 7379 | 
            +
                    # domain of errors. This should be at most 63 characters and match a regular
         | 
| 7380 | 
            +
                    # expression of `A-Z+[A-Z0-9]`, which represents UPPER_SNAKE_CASE.
         | 
| 7332 7381 | 
             
                    # Corresponds to the JSON property `reason`
         | 
| 7333 7382 | 
             
                    # @return [String]
         | 
| 7334 7383 | 
             
                    attr_accessor :reason
         | 
| @@ -8335,8 +8384,8 @@ module Google | |
| 8335 8384 | 
             
                    attr_accessor :kind
         | 
| 8336 8385 |  | 
| 8337 8386 | 
             
                    # Name of the resource. For Organization Firewall Policies it's a [Output Only]
         | 
| 8338 | 
            -
                    # numeric ID allocated by  | 
| 8339 | 
            -
                    # Firewall Policy.
         | 
| 8387 | 
            +
                    # numeric ID allocated by Google Cloud which uniquely identifies the
         | 
| 8388 | 
            +
                    # Organization Firewall Policy.
         | 
| 8340 8389 | 
             
                    # Corresponds to the JSON property `name`
         | 
| 8341 8390 | 
             
                    # @return [String]
         | 
| 8342 8391 | 
             
                    attr_accessor :name
         | 
| @@ -8930,12 +8979,13 @@ module Google | |
| 8930 8979 | 
             
                    # @return [String]
         | 
| 8931 8980 | 
             
                    attr_accessor :ip_protocol
         | 
| 8932 8981 |  | 
| 8933 | 
            -
                    # This field  | 
| 8934 | 
            -
                    #  | 
| 8935 | 
            -
                    # internal and external  | 
| 8936 | 
            -
                    #  | 
| 8937 | 
            -
                    #  | 
| 8938 | 
            -
                    #  | 
| 8982 | 
            +
                    # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
         | 
| 8983 | 
            +
                    # internal TCP/UDP load balancers, backend service-based network load balancers,
         | 
| 8984 | 
            +
                    # and internal and external protocol forwarding. Set this field to true to allow
         | 
| 8985 | 
            +
                    # packets addressed to any port or packets lacking destination port information (
         | 
| 8986 | 
            +
                    # for example, UDP fragments after the first fragment) to be forwarded to the
         | 
| 8987 | 
            +
                    # backends configured with this forwarding rule. The ports, port_range, and
         | 
| 8988 | 
            +
                    # allPorts fields are mutually exclusive.
         | 
| 8939 8989 | 
             
                    # Corresponds to the JSON property `allPorts`
         | 
| 8940 8990 | 
             
                    # @return [Boolean]
         | 
| 8941 8991 | 
             
                    attr_accessor :all_ports
         | 
| @@ -8957,6 +9007,15 @@ module Google | |
| 8957 9007 | 
             
                    # @return [String]
         | 
| 8958 9008 | 
             
                    attr_accessor :backend_service
         | 
| 8959 9009 |  | 
| 9010 | 
            +
                    # [Output Only] The URL for the corresponding base Forwarding Rule. By base
         | 
| 9011 | 
            +
                    # Forwarding Rule, we mean the Forwarding Rule that has the same IP address,
         | 
| 9012 | 
            +
                    # protocol, and port settings with the current Forwarding Rule, but without
         | 
| 9013 | 
            +
                    # sourceIPRanges specified. Always empty if the current Forwarding Rule does not
         | 
| 9014 | 
            +
                    # have sourceIPRanges specified.
         | 
| 9015 | 
            +
                    # Corresponds to the JSON property `baseForwardingRule`
         | 
| 9016 | 
            +
                    # @return [String]
         | 
| 9017 | 
            +
                    attr_accessor :base_forwarding_rule
         | 
| 9018 | 
            +
                  
         | 
| 8960 9019 | 
             
                    # [Output Only] Creation timestamp in RFC3339 text format.
         | 
| 8961 9020 | 
             
                    # Corresponds to the JSON property `creationTimestamp`
         | 
| 8962 9021 | 
             
                    # @return [String]
         | 
| @@ -9091,27 +9150,35 @@ module Google | |
| 9091 9150 | 
             
                    attr_accessor :no_automate_dns_zone
         | 
| 9092 9151 | 
             
                    alias_method :no_automate_dns_zone?, :no_automate_dns_zone
         | 
| 9093 9152 |  | 
| 9094 | 
            -
                    # This field can be used | 
| 9095 | 
            -
                    #  | 
| 9096 | 
            -
                    #  | 
| 9097 | 
            -
                    #  | 
| 9098 | 
            -
                    #  | 
| 9099 | 
            -
                    #  | 
| 9100 | 
            -
                    #  | 
| 9101 | 
            -
                    #  | 
| 9102 | 
            -
                    #  | 
| 9153 | 
            +
                    # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
         | 
| 9154 | 
            +
                    # backend service-based network load balancers, target pool-based network load
         | 
| 9155 | 
            +
                    # balancers, internal proxy load balancers, external proxy load balancers,
         | 
| 9156 | 
            +
                    # Traffic Director, external protocol forwarding, and Classic VPN. Some products
         | 
| 9157 | 
            +
                    # have restrictions on what ports can be used. See port specifications for
         | 
| 9158 | 
            +
                    # details. Only packets addressed to ports in the specified range will be
         | 
| 9159 | 
            +
                    # forwarded to the backends configured with this forwarding rule. The ports,
         | 
| 9160 | 
            +
                    # port_range, and allPorts fields are mutually exclusive. For external
         | 
| 9161 | 
            +
                    # forwarding rules, two or more forwarding rules cannot use the same [IPAddress,
         | 
| 9162 | 
            +
                    # IPProtocol] pair, and cannot have overlapping portRanges. For internal
         | 
| 9163 | 
            +
                    # forwarding rules within the same VPC network, two or more forwarding rules
         | 
| 9164 | 
            +
                    # cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping
         | 
| 9165 | 
            +
                    # portRanges. @pattern: \\d+(?:-\\d+)?
         | 
| 9103 9166 | 
             
                    # Corresponds to the JSON property `portRange`
         | 
| 9104 9167 | 
             
                    # @return [String]
         | 
| 9105 9168 | 
             
                    attr_accessor :port_range
         | 
| 9106 9169 |  | 
| 9107 | 
            -
                    #  | 
| 9108 | 
            -
                    #  | 
| 9109 | 
            -
                    # ports | 
| 9110 | 
            -
                    #  | 
| 9111 | 
            -
                    #  | 
| 9112 | 
            -
                    #  | 
| 9113 | 
            -
                    # the same [IPAddress, IPProtocol] pair  | 
| 9114 | 
            -
                    #  | 
| 9170 | 
            +
                    # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
         | 
| 9171 | 
            +
                    # internal TCP/UDP load balancers, backend service-based network load balancers,
         | 
| 9172 | 
            +
                    # and internal protocol forwarding. You can specify a list of up to five ports
         | 
| 9173 | 
            +
                    # by number, separated by commas. The ports can be contiguous or discontiguous.
         | 
| 9174 | 
            +
                    # Only packets addressed to these ports will be forwarded to the backends
         | 
| 9175 | 
            +
                    # configured with this forwarding rule. For external forwarding rules, two or
         | 
| 9176 | 
            +
                    # more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and
         | 
| 9177 | 
            +
                    # cannot share any values defined in ports. For internal forwarding rules within
         | 
| 9178 | 
            +
                    # the same VPC network, two or more forwarding rules cannot use the same [
         | 
| 9179 | 
            +
                    # IPAddress, IPProtocol] pair, and cannot share any values defined in ports. The
         | 
| 9180 | 
            +
                    # ports, port_range, and allPorts fields are mutually exclusive. @pattern: \\d+(?
         | 
| 9181 | 
            +
                    # :-\\d+)?
         | 
| 9115 9182 | 
             
                    # Corresponds to the JSON property `ports`
         | 
| 9116 9183 | 
             
                    # @return [Array<String>]
         | 
| 9117 9184 | 
             
                    attr_accessor :ports
         | 
| @@ -9207,6 +9274,7 @@ module Google | |
| 9207 9274 | 
             
                      @all_ports = args[:all_ports] if args.key?(:all_ports)
         | 
| 9208 9275 | 
             
                      @allow_global_access = args[:allow_global_access] if args.key?(:allow_global_access)
         | 
| 9209 9276 | 
             
                      @backend_service = args[:backend_service] if args.key?(:backend_service)
         | 
| 9277 | 
            +
                      @base_forwarding_rule = args[:base_forwarding_rule] if args.key?(:base_forwarding_rule)
         | 
| 9210 9278 | 
             
                      @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
         | 
| 9211 9279 | 
             
                      @description = args[:description] if args.key?(:description)
         | 
| 9212 9280 | 
             
                      @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
         | 
| @@ -10587,13 +10655,18 @@ module Google | |
| 10587 10655 | 
             
                    attr_accessor :fingerprint
         | 
| 10588 10656 |  | 
| 10589 10657 | 
             
                    # A list of URLs to the HealthCheck resources. Must have at least one
         | 
| 10590 | 
            -
                    # HealthCheck, and not more than 10 | 
| 10658 | 
            +
                    # HealthCheck, and not more than 10 for regional HealthCheckService, and not
         | 
| 10659 | 
            +
                    # more than 1 for global HealthCheckService. HealthCheck resources must have
         | 
| 10591 10660 | 
             
                    # portSpecification=USE_SERVING_PORT or portSpecification=USE_FIXED_PORT. For
         | 
| 10592 10661 | 
             
                    # regional HealthCheckService, the HealthCheck must be regional and in the same
         | 
| 10593 10662 | 
             
                    # region. For global HealthCheckService, HealthCheck must be global. Mix of
         | 
| 10594 10663 | 
             
                    # regional and global HealthChecks is not supported. Multiple regional
         | 
| 10595 10664 | 
             
                    # HealthChecks must belong to the same region. Regional HealthChecks must belong
         | 
| 10596 | 
            -
                    # to the same region as zones of  | 
| 10665 | 
            +
                    # to the same region as zones of NetworkEndpointGroups. For global
         | 
| 10666 | 
            +
                    # HealthCheckService using global INTERNET_IP_PORT NetworkEndpointGroups, the
         | 
| 10667 | 
            +
                    # global HealthChecks must specify sourceRegions, and HealthChecks that specify
         | 
| 10668 | 
            +
                    # sourceRegions can only be used with global INTERNET_IP_PORT
         | 
| 10669 | 
            +
                    # NetworkEndpointGroups.
         | 
| 10597 10670 | 
             
                    # Corresponds to the JSON property `healthChecks`
         | 
| 10598 10671 | 
             
                    # @return [Array<String>]
         | 
| 10599 10672 | 
             
                    attr_accessor :health_checks
         | 
| @@ -10603,7 +10676,8 @@ module Google | |
| 10603 10676 | 
             
                    # NO_AGGREGATION. An EndpointHealth message is returned for each pair in the
         | 
| 10604 10677 | 
             
                    # health check service. - AND. If any health check of an endpoint reports
         | 
| 10605 10678 | 
             
                    # UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health
         | 
| 10606 | 
            -
                    # checks report HEALTHY, the HealthState of the endpoint is HEALTHY. .
         | 
| 10679 | 
            +
                    # checks report HEALTHY, the HealthState of the endpoint is HEALTHY. . This is
         | 
| 10680 | 
            +
                    # only allowed with regional HealthCheckService.
         | 
| 10607 10681 | 
             
                    # Corresponds to the JSON property `healthStatusAggregationPolicy`
         | 
| 10608 10682 | 
             
                    # @return [String]
         | 
| 10609 10683 | 
             
                    attr_accessor :health_status_aggregation_policy
         | 
| @@ -10643,7 +10717,8 @@ module Google | |
| 10643 10717 |  | 
| 10644 10718 | 
             
                    # A list of URLs to the NetworkEndpointGroup resources. Must not have more than
         | 
| 10645 10719 | 
             
                    # 100. For regional HealthCheckService, NEGs must be in zones in the region of
         | 
| 10646 | 
            -
                    # the HealthCheckService.
         | 
| 10720 | 
            +
                    # the HealthCheckService. For global HealthCheckServices, the
         | 
| 10721 | 
            +
                    # NetworkEndpointGroups must be global INTERNET_IP_PORT.
         | 
| 10647 10722 | 
             
                    # Corresponds to the JSON property `networkEndpointGroups`
         | 
| 10648 10723 | 
             
                    # @return [Array<String>]
         | 
| 10649 10724 | 
             
                    attr_accessor :network_endpoint_groups
         | 
| @@ -12189,6 +12264,16 @@ module Google | |
| 12189 12264 | 
             
                    # @return [Array<Google::Apis::ComputeBeta::MetadataFilter>]
         | 
| 12190 12265 | 
             
                    attr_accessor :metadata_filters
         | 
| 12191 12266 |  | 
| 12267 | 
            +
                    # If specified, the route is a pattern match expression that must match the :
         | 
| 12268 | 
            +
                    # path header once the query string is removed. A pattern match allows you to
         | 
| 12269 | 
            +
                    # match - The value must be between 1 and 1024 characters - The pattern must
         | 
| 12270 | 
            +
                    # start with a leading slash ("/") - There may be no more than 5 operators in
         | 
| 12271 | 
            +
                    # pattern Precisely one of prefix_match, full_path_match, regex_match or
         | 
| 12272 | 
            +
                    # path_template_match must be set.
         | 
| 12273 | 
            +
                    # Corresponds to the JSON property `pathTemplateMatch`
         | 
| 12274 | 
            +
                    # @return [String]
         | 
| 12275 | 
            +
                    attr_accessor :path_template_match
         | 
| 12276 | 
            +
                  
         | 
| 12192 12277 | 
             
                    # For satisfying the matchRule condition, the request's path must begin with the
         | 
| 12193 12278 | 
             
                    # specified prefixMatch. prefixMatch must begin with a /. The value must be from
         | 
| 12194 12279 | 
             
                    # 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch
         | 
| @@ -12224,6 +12309,7 @@ module Google | |
| 12224 12309 | 
             
                      @header_matches = args[:header_matches] if args.key?(:header_matches)
         | 
| 12225 12310 | 
             
                      @ignore_case = args[:ignore_case] if args.key?(:ignore_case)
         | 
| 12226 12311 | 
             
                      @metadata_filters = args[:metadata_filters] if args.key?(:metadata_filters)
         | 
| 12312 | 
            +
                      @path_template_match = args[:path_template_match] if args.key?(:path_template_match)
         | 
| 12227 12313 | 
             
                      @prefix_match = args[:prefix_match] if args.key?(:prefix_match)
         | 
| 12228 12314 | 
             
                      @query_parameter_matches = args[:query_parameter_matches] if args.key?(:query_parameter_matches)
         | 
| 12229 12315 | 
             
                      @regex_match = args[:regex_match] if args.key?(:regex_match)
         | 
| @@ -13067,6 +13153,16 @@ module Google | |
| 13067 13153 | 
             
                    # @return [Fixnum]
         | 
| 13068 13154 | 
             
                    attr_accessor :id
         | 
| 13069 13155 |  | 
| 13156 | 
            +
                    # Encrypts suspended data for an instance with a customer-managed encryption key.
         | 
| 13157 | 
            +
                    # If you are creating a new instance, this field will encrypt the local SSD and
         | 
| 13158 | 
            +
                    # in-memory contents of the instance during the suspend operation. If you do not
         | 
| 13159 | 
            +
                    # provide an encryption key when creating the instance, then the local SSD and
         | 
| 13160 | 
            +
                    # in-memory contents will be encrypted using an automatically generated key
         | 
| 13161 | 
            +
                    # during the suspend operation.
         | 
| 13162 | 
            +
                    # Corresponds to the JSON property `instanceEncryptionKey`
         | 
| 13163 | 
            +
                    # @return [Google::Apis::ComputeBeta::CustomerEncryptionKey]
         | 
| 13164 | 
            +
                    attr_accessor :instance_encryption_key
         | 
| 13165 | 
            +
                  
         | 
| 13070 13166 | 
             
                    # KeyRevocationActionType of the instance. Supported options are "STOP" and "
         | 
| 13071 13167 | 
             
                    # NONE". The default value is "NONE" if it is not specified.
         | 
| 13072 13168 | 
             
                    # Corresponds to the JSON property `keyRevocationActionType`
         | 
| @@ -13303,6 +13399,7 @@ module Google | |
| 13303 13399 | 
             
                      @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
         | 
| 13304 13400 | 
             
                      @hostname = args[:hostname] if args.key?(:hostname)
         | 
| 13305 13401 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 13402 | 
            +
                      @instance_encryption_key = args[:instance_encryption_key] if args.key?(:instance_encryption_key)
         | 
| 13306 13403 | 
             
                      @key_revocation_action_type = args[:key_revocation_action_type] if args.key?(:key_revocation_action_type)
         | 
| 13307 13404 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 13308 13405 | 
             
                      @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
         | 
| @@ -17110,8 +17207,9 @@ module Google | |
| 17110 17207 |  | 
| 17111 17208 | 
             
                    # Email address to contact the customer NOC for operations and maintenance
         | 
| 17112 17209 | 
             
                    # notifications regarding this Interconnect. If specified, this will be used for
         | 
| 17113 | 
            -
                    # notifications in addition to all other forms described, such as  | 
| 17114 | 
            -
                    # logs alerting and Cloud Notifications.
         | 
| 17210 | 
            +
                    # notifications in addition to all other forms described, such as Cloud
         | 
| 17211 | 
            +
                    # Monitoring logs alerting and Cloud Notifications. This field is required for
         | 
| 17212 | 
            +
                    # users who sign up for Cloud Interconnect using workforce identity federation.
         | 
| 17115 17213 | 
             
                    # Corresponds to the JSON property `nocContactEmail`
         | 
| 17116 17214 | 
             
                    # @return [String]
         | 
| 17117 17215 | 
             
                    attr_accessor :noc_contact_email
         | 
| @@ -17991,6 +18089,16 @@ module Google | |
| 17991 18089 | 
             
                    # @return [Array<Google::Apis::ComputeBeta::InterconnectDiagnosticsArpEntry>]
         | 
| 17992 18090 | 
             
                    attr_accessor :arp_caches
         | 
| 17993 18091 |  | 
| 18092 | 
            +
                    # The aggregation type of the bundle interface.
         | 
| 18093 | 
            +
                    # Corresponds to the JSON property `bundleAggregationType`
         | 
| 18094 | 
            +
                    # @return [String]
         | 
| 18095 | 
            +
                    attr_accessor :bundle_aggregation_type
         | 
| 18096 | 
            +
                  
         | 
| 18097 | 
            +
                    # The operational status of the bundle interface.
         | 
| 18098 | 
            +
                    # Corresponds to the JSON property `bundleOperationalStatus`
         | 
| 18099 | 
            +
                    # @return [String]
         | 
| 18100 | 
            +
                    attr_accessor :bundle_operational_status
         | 
| 18101 | 
            +
                  
         | 
| 17994 18102 | 
             
                    # A list of InterconnectDiagnostics.LinkStatus objects, describing the status
         | 
| 17995 18103 | 
             
                    # for each link on the Interconnect.
         | 
| 17996 18104 | 
             
                    # Corresponds to the JSON property `links`
         | 
| @@ -18009,6 +18117,8 @@ module Google | |
| 18009 18117 | 
             
                    # Update properties of this object
         | 
| 18010 18118 | 
             
                    def update!(**args)
         | 
| 18011 18119 | 
             
                      @arp_caches = args[:arp_caches] if args.key?(:arp_caches)
         | 
| 18120 | 
            +
                      @bundle_aggregation_type = args[:bundle_aggregation_type] if args.key?(:bundle_aggregation_type)
         | 
| 18121 | 
            +
                      @bundle_operational_status = args[:bundle_operational_status] if args.key?(:bundle_operational_status)
         | 
| 18012 18122 | 
             
                      @links = args[:links] if args.key?(:links)
         | 
| 18013 18123 | 
             
                      @mac_address = args[:mac_address] if args.key?(:mac_address)
         | 
| 18014 18124 | 
             
                    end
         | 
| @@ -18132,6 +18242,11 @@ module Google | |
| 18132 18242 | 
             
                    # @return [Google::Apis::ComputeBeta::InterconnectDiagnosticsLinkLacpStatus]
         | 
| 18133 18243 | 
             
                    attr_accessor :lacp_status
         | 
| 18134 18244 |  | 
| 18245 | 
            +
                    # The operational status of the link.
         | 
| 18246 | 
            +
                    # Corresponds to the JSON property `operationalStatus`
         | 
| 18247 | 
            +
                    # @return [String]
         | 
| 18248 | 
            +
                    attr_accessor :operational_status
         | 
| 18249 | 
            +
                  
         | 
| 18135 18250 | 
             
                    # An InterconnectDiagnostics.LinkOpticalPower object, describing the current
         | 
| 18136 18251 | 
             
                    # value and status of the received light level.
         | 
| 18137 18252 | 
             
                    # Corresponds to the JSON property `receivingOpticalPower`
         | 
| @@ -18154,6 +18269,7 @@ module Google | |
| 18154 18269 | 
             
                      @circuit_id = args[:circuit_id] if args.key?(:circuit_id)
         | 
| 18155 18270 | 
             
                      @google_demarc = args[:google_demarc] if args.key?(:google_demarc)
         | 
| 18156 18271 | 
             
                      @lacp_status = args[:lacp_status] if args.key?(:lacp_status)
         | 
| 18272 | 
            +
                      @operational_status = args[:operational_status] if args.key?(:operational_status)
         | 
| 18157 18273 | 
             
                      @receiving_optical_power = args[:receiving_optical_power] if args.key?(:receiving_optical_power)
         | 
| 18158 18274 | 
             
                      @transmitting_optical_power = args[:transmitting_optical_power] if args.key?(:transmitting_optical_power)
         | 
| 18159 18275 | 
             
                    end
         | 
| @@ -20618,10 +20734,21 @@ module Google | |
| 20618 20734 | 
             
                    end
         | 
| 20619 20735 | 
             
                  end
         | 
| 20620 20736 |  | 
| 20621 | 
            -
                  #  | 
| 20622 | 
            -
                  class  | 
| 20737 | 
            +
                  # NetworkAttachments A network attachment resource ...
         | 
| 20738 | 
            +
                  class NetworkAttachment
         | 
| 20623 20739 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 20624 20740 |  | 
| 20741 | 
            +
                    # [Output Only] An array of connections for all the producers connected to this
         | 
| 20742 | 
            +
                    # network attachment.
         | 
| 20743 | 
            +
                    # Corresponds to the JSON property `connectionEndpoints`
         | 
| 20744 | 
            +
                    # @return [Array<Google::Apis::ComputeBeta::NetworkAttachmentConnectedEndpoint>]
         | 
| 20745 | 
            +
                    attr_accessor :connection_endpoints
         | 
| 20746 | 
            +
                  
         | 
| 20747 | 
            +
                    # 
         | 
| 20748 | 
            +
                    # Corresponds to the JSON property `connectionPreference`
         | 
| 20749 | 
            +
                    # @return [String]
         | 
| 20750 | 
            +
                    attr_accessor :connection_preference
         | 
| 20751 | 
            +
                  
         | 
| 20625 20752 | 
             
                    # [Output Only] Creation timestamp in RFC3339 text format.
         | 
| 20626 20753 | 
             
                    # Corresponds to the JSON property `creationTimestamp`
         | 
| 20627 20754 | 
             
                    # @return [String]
         | 
| @@ -20633,25 +20760,21 @@ module Google | |
| 20633 20760 | 
             
                    # @return [String]
         | 
| 20634 20761 | 
             
                    attr_accessor :description
         | 
| 20635 20762 |  | 
| 20636 | 
            -
                    # Fingerprint of this resource. A hash of the contents stored in | 
| 20637 | 
            -
                    # This field is used in optimistic locking.  | 
| 20638 | 
            -
                    #  | 
| 20639 | 
            -
                    # provided in order to update the NetworkEdgeSecurityService, otherwise the
         | 
| 20640 | 
            -
                    # request will fail with error 412 conditionNotMet. To see the latest
         | 
| 20641 | 
            -
                    # fingerprint, make a get() request to retrieve a NetworkEdgeSecurityService.
         | 
| 20763 | 
            +
                    # [Output Only] Fingerprint of this resource. A hash of the contents stored in
         | 
| 20764 | 
            +
                    # this object. This field is used in optimistic locking. An up-to-date
         | 
| 20765 | 
            +
                    # fingerprint must be provided in order to patch.
         | 
| 20642 20766 | 
             
                    # Corresponds to the JSON property `fingerprint`
         | 
| 20643 20767 | 
             
                    # NOTE: Values are automatically base64 encoded/decoded in the client library.
         | 
| 20644 20768 | 
             
                    # @return [String]
         | 
| 20645 20769 | 
             
                    attr_accessor :fingerprint
         | 
| 20646 20770 |  | 
| 20647 | 
            -
                    # [Output Only] The unique identifier for the resource.  | 
| 20648 | 
            -
                    #  | 
| 20771 | 
            +
                    # [Output Only] The unique identifier for the resource type. The server
         | 
| 20772 | 
            +
                    # generates this identifier.
         | 
| 20649 20773 | 
             
                    # Corresponds to the JSON property `id`
         | 
| 20650 20774 | 
             
                    # @return [Fixnum]
         | 
| 20651 20775 | 
             
                    attr_accessor :id
         | 
| 20652 20776 |  | 
| 20653 | 
            -
                    # [Output  | 
| 20654 | 
            -
                    # for NetworkEdgeSecurityServices
         | 
| 20777 | 
            +
                    # [Output Only] Type of the resource.
         | 
| 20655 20778 | 
             
                    # Corresponds to the JSON property `kind`
         | 
| 20656 20779 | 
             
                    # @return [String]
         | 
| 20657 20780 | 
             
                    attr_accessor :kind
         | 
| @@ -20666,70 +20789,248 @@ module Google | |
| 20666 20789 | 
             
                    # @return [String]
         | 
| 20667 20790 | 
             
                    attr_accessor :name
         | 
| 20668 20791 |  | 
| 20669 | 
            -
                    # [Output Only] URL of the  | 
| 20670 | 
            -
                    #  | 
| 20671 | 
            -
                    # the request body.
         | 
| 20672 | 
            -
                    # Corresponds to the JSON property `region`
         | 
| 20792 | 
            +
                    # [Output Only] The URL of the network which the Network Attachment belongs to.
         | 
| 20793 | 
            +
                    # Corresponds to the JSON property `network`
         | 
| 20673 20794 | 
             
                    # @return [String]
         | 
| 20674 | 
            -
                    attr_accessor : | 
| 20795 | 
            +
                    attr_accessor :network
         | 
| 20675 20796 |  | 
| 20676 | 
            -
                    #  | 
| 20677 | 
            -
                    #  | 
| 20678 | 
            -
                    # Corresponds to the JSON property ` | 
| 20797 | 
            +
                    # Projects that are allowed to connect to this network attachment. The project
         | 
| 20798 | 
            +
                    # can be specified using its id or number.
         | 
| 20799 | 
            +
                    # Corresponds to the JSON property `producerAcceptLists`
         | 
| 20800 | 
            +
                    # @return [Array<String>]
         | 
| 20801 | 
            +
                    attr_accessor :producer_accept_lists
         | 
| 20802 | 
            +
                  
         | 
| 20803 | 
            +
                    # Projects that are not allowed to connect to this network attachment. The
         | 
| 20804 | 
            +
                    # project can be specified using its id or number.
         | 
| 20805 | 
            +
                    # Corresponds to the JSON property `producerRejectLists`
         | 
| 20806 | 
            +
                    # @return [Array<String>]
         | 
| 20807 | 
            +
                    attr_accessor :producer_reject_lists
         | 
| 20808 | 
            +
                  
         | 
| 20809 | 
            +
                    # [Output Only] URL of the region where the network attachment resides. This
         | 
| 20810 | 
            +
                    # field applies only to the region resource. You must specify this field as part
         | 
| 20811 | 
            +
                    # of the HTTP request URL. It is not settable as a field in the request body.
         | 
| 20812 | 
            +
                    # Corresponds to the JSON property `region`
         | 
| 20679 20813 | 
             
                    # @return [String]
         | 
| 20680 | 
            -
                    attr_accessor : | 
| 20814 | 
            +
                    attr_accessor :region
         | 
| 20681 20815 |  | 
| 20682 20816 | 
             
                    # [Output Only] Server-defined URL for the resource.
         | 
| 20683 20817 | 
             
                    # Corresponds to the JSON property `selfLink`
         | 
| 20684 20818 | 
             
                    # @return [String]
         | 
| 20685 20819 | 
             
                    attr_accessor :self_link
         | 
| 20686 20820 |  | 
| 20687 | 
            -
                    # [Output Only] Server-defined URL for this resource  | 
| 20821 | 
            +
                    # [Output Only] Server-defined URL for this resource's resource id.
         | 
| 20688 20822 | 
             
                    # Corresponds to the JSON property `selfLinkWithId`
         | 
| 20689 20823 | 
             
                    # @return [String]
         | 
| 20690 20824 | 
             
                    attr_accessor :self_link_with_id
         | 
| 20691 20825 |  | 
| 20826 | 
            +
                    # An array of URLs where each entry is the URL of a subnet provided by the
         | 
| 20827 | 
            +
                    # service consumer to use for endpoints in the producers that connect to this
         | 
| 20828 | 
            +
                    # network attachment.
         | 
| 20829 | 
            +
                    # Corresponds to the JSON property `subnetworks`
         | 
| 20830 | 
            +
                    # @return [Array<String>]
         | 
| 20831 | 
            +
                    attr_accessor :subnetworks
         | 
| 20832 | 
            +
                  
         | 
| 20692 20833 | 
             
                    def initialize(**args)
         | 
| 20693 20834 | 
             
                       update!(**args)
         | 
| 20694 20835 | 
             
                    end
         | 
| 20695 20836 |  | 
| 20696 20837 | 
             
                    # Update properties of this object
         | 
| 20697 20838 | 
             
                    def update!(**args)
         | 
| 20839 | 
            +
                      @connection_endpoints = args[:connection_endpoints] if args.key?(:connection_endpoints)
         | 
| 20840 | 
            +
                      @connection_preference = args[:connection_preference] if args.key?(:connection_preference)
         | 
| 20698 20841 | 
             
                      @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
         | 
| 20699 20842 | 
             
                      @description = args[:description] if args.key?(:description)
         | 
| 20700 20843 | 
             
                      @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
         | 
| 20701 20844 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 20702 20845 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 20703 20846 | 
             
                      @name = args[:name] if args.key?(:name)
         | 
| 20847 | 
            +
                      @network = args[:network] if args.key?(:network)
         | 
| 20848 | 
            +
                      @producer_accept_lists = args[:producer_accept_lists] if args.key?(:producer_accept_lists)
         | 
| 20849 | 
            +
                      @producer_reject_lists = args[:producer_reject_lists] if args.key?(:producer_reject_lists)
         | 
| 20704 20850 | 
             
                      @region = args[:region] if args.key?(:region)
         | 
| 20705 | 
            -
                      @security_policy = args[:security_policy] if args.key?(:security_policy)
         | 
| 20706 20851 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 20707 20852 | 
             
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 20853 | 
            +
                      @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
         | 
| 20708 20854 | 
             
                    end
         | 
| 20709 20855 | 
             
                  end
         | 
| 20710 20856 |  | 
| 20711 | 
            -
                  # 
         | 
| 20712 | 
            -
                  class  | 
| 20857 | 
            +
                  # Contains a list of NetworkAttachmentsScopedList.
         | 
| 20858 | 
            +
                  class NetworkAttachmentAggregatedList
         | 
| 20713 20859 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 20714 20860 |  | 
| 20861 | 
            +
                    # [Output Only] Unique identifier for the resource; defined by the server.
         | 
| 20862 | 
            +
                    # Corresponds to the JSON property `id`
         | 
| 20863 | 
            +
                    # @return [String]
         | 
| 20864 | 
            +
                    attr_accessor :id
         | 
| 20865 | 
            +
                  
         | 
| 20866 | 
            +
                    # A list of NetworkAttachmentsScopedList resources.
         | 
| 20867 | 
            +
                    # Corresponds to the JSON property `items`
         | 
| 20868 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeBeta::NetworkAttachmentsScopedList>]
         | 
| 20869 | 
            +
                    attr_accessor :items
         | 
| 20870 | 
            +
                  
         | 
| 20715 20871 | 
             
                    # 
         | 
| 20716 | 
            -
                    # Corresponds to the JSON property ` | 
| 20872 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 20717 20873 | 
             
                    # @return [String]
         | 
| 20718 | 
            -
                    attr_accessor : | 
| 20874 | 
            +
                    attr_accessor :kind
         | 
| 20875 | 
            +
                  
         | 
| 20876 | 
            +
                    # [Output Only] This token allows you to get the next page of results for list
         | 
| 20877 | 
            +
                    # requests. If the number of results is larger than maxResults, use the
         | 
| 20878 | 
            +
                    # nextPageToken as a value for the query parameter pageToken in the next list
         | 
| 20879 | 
            +
                    # request. Subsequent list requests will have their own nextPageToken to
         | 
| 20880 | 
            +
                    # continue paging through the results.
         | 
| 20881 | 
            +
                    # Corresponds to the JSON property `nextPageToken`
         | 
| 20882 | 
            +
                    # @return [String]
         | 
| 20883 | 
            +
                    attr_accessor :next_page_token
         | 
| 20884 | 
            +
                  
         | 
| 20885 | 
            +
                    # [Output Only] Server-defined URL for this resource.
         | 
| 20886 | 
            +
                    # Corresponds to the JSON property `selfLink`
         | 
| 20887 | 
            +
                    # @return [String]
         | 
| 20888 | 
            +
                    attr_accessor :self_link
         | 
| 20889 | 
            +
                  
         | 
| 20890 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 20891 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 20892 | 
            +
                    # @return [Google::Apis::ComputeBeta::NetworkAttachmentAggregatedList::Warning]
         | 
| 20893 | 
            +
                    attr_accessor :warning
         | 
| 20894 | 
            +
                  
         | 
| 20895 | 
            +
                    def initialize(**args)
         | 
| 20896 | 
            +
                       update!(**args)
         | 
| 20897 | 
            +
                    end
         | 
| 20898 | 
            +
                  
         | 
| 20899 | 
            +
                    # Update properties of this object
         | 
| 20900 | 
            +
                    def update!(**args)
         | 
| 20901 | 
            +
                      @id = args[:id] if args.key?(:id)
         | 
| 20902 | 
            +
                      @items = args[:items] if args.key?(:items)
         | 
| 20903 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 20904 | 
            +
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 20905 | 
            +
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 20906 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 20907 | 
            +
                    end
         | 
| 20908 | 
            +
                    
         | 
| 20909 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 20910 | 
            +
                    class Warning
         | 
| 20911 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 20912 | 
            +
                    
         | 
| 20913 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 20914 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 20915 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 20916 | 
            +
                      # @return [String]
         | 
| 20917 | 
            +
                      attr_accessor :code
         | 
| 20918 | 
            +
                    
         | 
| 20919 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example: "
         | 
| 20920 | 
            +
                      # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 20921 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 20922 | 
            +
                      # @return [Array<Google::Apis::ComputeBeta::NetworkAttachmentAggregatedList::Warning::Datum>]
         | 
| 20923 | 
            +
                      attr_accessor :data
         | 
| 20924 | 
            +
                    
         | 
| 20925 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 20926 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 20927 | 
            +
                      # @return [String]
         | 
| 20928 | 
            +
                      attr_accessor :message
         | 
| 20929 | 
            +
                    
         | 
| 20930 | 
            +
                      def initialize(**args)
         | 
| 20931 | 
            +
                         update!(**args)
         | 
| 20932 | 
            +
                      end
         | 
| 20933 | 
            +
                    
         | 
| 20934 | 
            +
                      # Update properties of this object
         | 
| 20935 | 
            +
                      def update!(**args)
         | 
| 20936 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 20937 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 20938 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 20939 | 
            +
                      end
         | 
| 20940 | 
            +
                      
         | 
| 20941 | 
            +
                      # 
         | 
| 20942 | 
            +
                      class Datum
         | 
| 20943 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 20944 | 
            +
                      
         | 
| 20945 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 20946 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 20947 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 20948 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 20949 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 20950 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 20951 | 
            +
                        # for IP forwarding).
         | 
| 20952 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 20953 | 
            +
                        # @return [String]
         | 
| 20954 | 
            +
                        attr_accessor :key
         | 
| 20955 | 
            +
                      
         | 
| 20956 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 20957 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 20958 | 
            +
                        # @return [String]
         | 
| 20959 | 
            +
                        attr_accessor :value
         | 
| 20960 | 
            +
                      
         | 
| 20961 | 
            +
                        def initialize(**args)
         | 
| 20962 | 
            +
                           update!(**args)
         | 
| 20963 | 
            +
                        end
         | 
| 20964 | 
            +
                      
         | 
| 20965 | 
            +
                        # Update properties of this object
         | 
| 20966 | 
            +
                        def update!(**args)
         | 
| 20967 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 20968 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 20969 | 
            +
                        end
         | 
| 20970 | 
            +
                      end
         | 
| 20971 | 
            +
                    end
         | 
| 20972 | 
            +
                  end
         | 
| 20973 | 
            +
                  
         | 
| 20974 | 
            +
                  # [Output Only] A connection connected to this network attachment.
         | 
| 20975 | 
            +
                  class NetworkAttachmentConnectedEndpoint
         | 
| 20976 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 20977 | 
            +
                  
         | 
| 20978 | 
            +
                    # The IP address assigned to the producer instance network interface. This value
         | 
| 20979 | 
            +
                    # will be a range in case of Serverless.
         | 
| 20980 | 
            +
                    # Corresponds to the JSON property `ipAddress`
         | 
| 20981 | 
            +
                    # @return [String]
         | 
| 20982 | 
            +
                    attr_accessor :ip_address
         | 
| 20983 | 
            +
                  
         | 
| 20984 | 
            +
                    # The project id or number of the interface to which the IP was assigned.
         | 
| 20985 | 
            +
                    # Corresponds to the JSON property `projectIdOrNum`
         | 
| 20986 | 
            +
                    # @return [String]
         | 
| 20987 | 
            +
                    attr_accessor :project_id_or_num
         | 
| 20988 | 
            +
                  
         | 
| 20989 | 
            +
                    # Alias IP ranges from the same subnetwork
         | 
| 20990 | 
            +
                    # Corresponds to the JSON property `secondaryIpCidrRanges`
         | 
| 20991 | 
            +
                    # @return [Array<String>]
         | 
| 20992 | 
            +
                    attr_accessor :secondary_ip_cidr_ranges
         | 
| 20993 | 
            +
                  
         | 
| 20994 | 
            +
                    # The status of a connected endpoint to this network attachment.
         | 
| 20995 | 
            +
                    # Corresponds to the JSON property `status`
         | 
| 20996 | 
            +
                    # @return [String]
         | 
| 20997 | 
            +
                    attr_accessor :status
         | 
| 20998 | 
            +
                  
         | 
| 20999 | 
            +
                    # The subnetwork used to assign the IP to the producer instance network
         | 
| 21000 | 
            +
                    # interface.
         | 
| 21001 | 
            +
                    # Corresponds to the JSON property `subnetwork`
         | 
| 21002 | 
            +
                    # @return [String]
         | 
| 21003 | 
            +
                    attr_accessor :subnetwork
         | 
| 21004 | 
            +
                  
         | 
| 21005 | 
            +
                    def initialize(**args)
         | 
| 21006 | 
            +
                       update!(**args)
         | 
| 21007 | 
            +
                    end
         | 
| 21008 | 
            +
                  
         | 
| 21009 | 
            +
                    # Update properties of this object
         | 
| 21010 | 
            +
                    def update!(**args)
         | 
| 21011 | 
            +
                      @ip_address = args[:ip_address] if args.key?(:ip_address)
         | 
| 21012 | 
            +
                      @project_id_or_num = args[:project_id_or_num] if args.key?(:project_id_or_num)
         | 
| 21013 | 
            +
                      @secondary_ip_cidr_ranges = args[:secondary_ip_cidr_ranges] if args.key?(:secondary_ip_cidr_ranges)
         | 
| 21014 | 
            +
                      @status = args[:status] if args.key?(:status)
         | 
| 21015 | 
            +
                      @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
         | 
| 21016 | 
            +
                    end
         | 
| 21017 | 
            +
                  end
         | 
| 21018 | 
            +
                  
         | 
| 21019 | 
            +
                  # 
         | 
| 21020 | 
            +
                  class NetworkAttachmentList
         | 
| 21021 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 20719 21022 |  | 
| 20720 21023 | 
             
                    # [Output Only] Unique identifier for the resource; defined by the server.
         | 
| 20721 21024 | 
             
                    # Corresponds to the JSON property `id`
         | 
| 20722 21025 | 
             
                    # @return [String]
         | 
| 20723 21026 | 
             
                    attr_accessor :id
         | 
| 20724 21027 |  | 
| 20725 | 
            -
                    # A list of  | 
| 21028 | 
            +
                    # A list of NetworkAttachment resources.
         | 
| 20726 21029 | 
             
                    # Corresponds to the JSON property `items`
         | 
| 20727 | 
            -
                    # @return [ | 
| 21030 | 
            +
                    # @return [Array<Google::Apis::ComputeBeta::NetworkAttachment>]
         | 
| 20728 21031 | 
             
                    attr_accessor :items
         | 
| 20729 21032 |  | 
| 20730 | 
            -
                    #  | 
| 20731 | 
            -
                    # networkEdgeSecurityServiceAggregatedList for lists of Network Edge Security
         | 
| 20732 | 
            -
                    # Services.
         | 
| 21033 | 
            +
                    # 
         | 
| 20733 21034 | 
             
                    # Corresponds to the JSON property `kind`
         | 
| 20734 21035 | 
             
                    # @return [String]
         | 
| 20735 21036 | 
             
                    attr_accessor :kind
         | 
| @@ -20748,14 +21049,9 @@ module Google | |
| 20748 21049 | 
             
                    # @return [String]
         | 
| 20749 21050 | 
             
                    attr_accessor :self_link
         | 
| 20750 21051 |  | 
| 20751 | 
            -
                    # [Output Only] Unreachable resources.
         | 
| 20752 | 
            -
                    # Corresponds to the JSON property `unreachables`
         | 
| 20753 | 
            -
                    # @return [Array<String>]
         | 
| 20754 | 
            -
                    attr_accessor :unreachables
         | 
| 20755 | 
            -
                  
         | 
| 20756 21052 | 
             
                    # [Output Only] Informational warning message.
         | 
| 20757 21053 | 
             
                    # Corresponds to the JSON property `warning`
         | 
| 20758 | 
            -
                    # @return [Google::Apis::ComputeBeta:: | 
| 21054 | 
            +
                    # @return [Google::Apis::ComputeBeta::NetworkAttachmentList::Warning]
         | 
| 20759 21055 | 
             
                    attr_accessor :warning
         | 
| 20760 21056 |  | 
| 20761 21057 | 
             
                    def initialize(**args)
         | 
| @@ -20764,13 +21060,11 @@ module Google | |
| 20764 21060 |  | 
| 20765 21061 | 
             
                    # Update properties of this object
         | 
| 20766 21062 | 
             
                    def update!(**args)
         | 
| 20767 | 
            -
                      @etag = args[:etag] if args.key?(:etag)
         | 
| 20768 21063 | 
             
                      @id = args[:id] if args.key?(:id)
         | 
| 20769 21064 | 
             
                      @items = args[:items] if args.key?(:items)
         | 
| 20770 21065 | 
             
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 20771 21066 | 
             
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 20772 21067 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 20773 | 
            -
                      @unreachables = args[:unreachables] if args.key?(:unreachables)
         | 
| 20774 21068 | 
             
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 20775 21069 | 
             
                    end
         | 
| 20776 21070 |  | 
| @@ -20787,7 +21081,7 @@ module Google | |
| 20787 21081 | 
             
                      # [Output Only] Metadata about this warning in key: value format. For example: "
         | 
| 20788 21082 | 
             
                      # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 20789 21083 | 
             
                      # Corresponds to the JSON property `data`
         | 
| 20790 | 
            -
                      # @return [Array<Google::Apis::ComputeBeta:: | 
| 21084 | 
            +
                      # @return [Array<Google::Apis::ComputeBeta::NetworkAttachmentList::Warning::Datum>]
         | 
| 20791 21085 | 
             
                      attr_accessor :data
         | 
| 20792 21086 |  | 
| 20793 21087 | 
             
                      # [Output Only] A human-readable description of the warning code.
         | 
| @@ -20840,18 +21134,18 @@ module Google | |
| 20840 21134 | 
             
                  end
         | 
| 20841 21135 |  | 
| 20842 21136 | 
             
                  # 
         | 
| 20843 | 
            -
                  class  | 
| 21137 | 
            +
                  class NetworkAttachmentsScopedList
         | 
| 20844 21138 | 
             
                    include Google::Apis::Core::Hashable
         | 
| 20845 21139 |  | 
| 20846 | 
            -
                    # A list of  | 
| 20847 | 
            -
                    # Corresponds to the JSON property ` | 
| 20848 | 
            -
                    # @return [Array<Google::Apis::ComputeBeta:: | 
| 20849 | 
            -
                    attr_accessor : | 
| 21140 | 
            +
                    # A list of NetworkAttachments contained in this scope.
         | 
| 21141 | 
            +
                    # Corresponds to the JSON property `networkAttachments`
         | 
| 21142 | 
            +
                    # @return [Array<Google::Apis::ComputeBeta::NetworkAttachment>]
         | 
| 21143 | 
            +
                    attr_accessor :network_attachments
         | 
| 20850 21144 |  | 
| 20851 | 
            -
                    # Informational warning which replaces the list of  | 
| 21145 | 
            +
                    # Informational warning which replaces the list of network attachments when the
         | 
| 20852 21146 | 
             
                    # list is empty.
         | 
| 20853 21147 | 
             
                    # Corresponds to the JSON property `warning`
         | 
| 20854 | 
            -
                    # @return [Google::Apis::ComputeBeta:: | 
| 21148 | 
            +
                    # @return [Google::Apis::ComputeBeta::NetworkAttachmentsScopedList::Warning]
         | 
| 20855 21149 | 
             
                    attr_accessor :warning
         | 
| 20856 21150 |  | 
| 20857 21151 | 
             
                    def initialize(**args)
         | 
| @@ -20860,11 +21154,11 @@ module Google | |
| 20860 21154 |  | 
| 20861 21155 | 
             
                    # Update properties of this object
         | 
| 20862 21156 | 
             
                    def update!(**args)
         | 
| 20863 | 
            -
                      @ | 
| 21157 | 
            +
                      @network_attachments = args[:network_attachments] if args.key?(:network_attachments)
         | 
| 20864 21158 | 
             
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 20865 21159 | 
             
                    end
         | 
| 20866 21160 |  | 
| 20867 | 
            -
                    # Informational warning which replaces the list of  | 
| 21161 | 
            +
                    # Informational warning which replaces the list of network attachments when the
         | 
| 20868 21162 | 
             
                    # list is empty.
         | 
| 20869 21163 | 
             
                    class Warning
         | 
| 20870 21164 | 
             
                      include Google::Apis::Core::Hashable
         | 
| @@ -20878,7 +21172,319 @@ module Google | |
| 20878 21172 | 
             
                      # [Output Only] Metadata about this warning in key: value format. For example: "
         | 
| 20879 21173 | 
             
                      # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 20880 21174 | 
             
                      # Corresponds to the JSON property `data`
         | 
| 20881 | 
            -
                      # @return [Array<Google::Apis::ComputeBeta:: | 
| 21175 | 
            +
                      # @return [Array<Google::Apis::ComputeBeta::NetworkAttachmentsScopedList::Warning::Datum>]
         | 
| 21176 | 
            +
                      attr_accessor :data
         | 
| 21177 | 
            +
                    
         | 
| 21178 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 21179 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 21180 | 
            +
                      # @return [String]
         | 
| 21181 | 
            +
                      attr_accessor :message
         | 
| 21182 | 
            +
                    
         | 
| 21183 | 
            +
                      def initialize(**args)
         | 
| 21184 | 
            +
                         update!(**args)
         | 
| 21185 | 
            +
                      end
         | 
| 21186 | 
            +
                    
         | 
| 21187 | 
            +
                      # Update properties of this object
         | 
| 21188 | 
            +
                      def update!(**args)
         | 
| 21189 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 21190 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 21191 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 21192 | 
            +
                      end
         | 
| 21193 | 
            +
                      
         | 
| 21194 | 
            +
                      # 
         | 
| 21195 | 
            +
                      class Datum
         | 
| 21196 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 21197 | 
            +
                      
         | 
| 21198 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 21199 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 21200 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 21201 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 21202 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 21203 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 21204 | 
            +
                        # for IP forwarding).
         | 
| 21205 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 21206 | 
            +
                        # @return [String]
         | 
| 21207 | 
            +
                        attr_accessor :key
         | 
| 21208 | 
            +
                      
         | 
| 21209 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 21210 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 21211 | 
            +
                        # @return [String]
         | 
| 21212 | 
            +
                        attr_accessor :value
         | 
| 21213 | 
            +
                      
         | 
| 21214 | 
            +
                        def initialize(**args)
         | 
| 21215 | 
            +
                           update!(**args)
         | 
| 21216 | 
            +
                        end
         | 
| 21217 | 
            +
                      
         | 
| 21218 | 
            +
                        # Update properties of this object
         | 
| 21219 | 
            +
                        def update!(**args)
         | 
| 21220 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 21221 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 21222 | 
            +
                        end
         | 
| 21223 | 
            +
                      end
         | 
| 21224 | 
            +
                    end
         | 
| 21225 | 
            +
                  end
         | 
| 21226 | 
            +
                  
         | 
| 21227 | 
            +
                  # Represents a Google Cloud Armor network edge security service resource.
         | 
| 21228 | 
            +
                  class NetworkEdgeSecurityService
         | 
| 21229 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 21230 | 
            +
                  
         | 
| 21231 | 
            +
                    # [Output Only] Creation timestamp in RFC3339 text format.
         | 
| 21232 | 
            +
                    # Corresponds to the JSON property `creationTimestamp`
         | 
| 21233 | 
            +
                    # @return [String]
         | 
| 21234 | 
            +
                    attr_accessor :creation_timestamp
         | 
| 21235 | 
            +
                  
         | 
| 21236 | 
            +
                    # An optional description of this resource. Provide this property when you
         | 
| 21237 | 
            +
                    # create the resource.
         | 
| 21238 | 
            +
                    # Corresponds to the JSON property `description`
         | 
| 21239 | 
            +
                    # @return [String]
         | 
| 21240 | 
            +
                    attr_accessor :description
         | 
| 21241 | 
            +
                  
         | 
| 21242 | 
            +
                    # Fingerprint of this resource. A hash of the contents stored in this object.
         | 
| 21243 | 
            +
                    # This field is used in optimistic locking. This field will be ignored when
         | 
| 21244 | 
            +
                    # inserting a NetworkEdgeSecurityService. An up-to-date fingerprint must be
         | 
| 21245 | 
            +
                    # provided in order to update the NetworkEdgeSecurityService, otherwise the
         | 
| 21246 | 
            +
                    # request will fail with error 412 conditionNotMet. To see the latest
         | 
| 21247 | 
            +
                    # fingerprint, make a get() request to retrieve a NetworkEdgeSecurityService.
         | 
| 21248 | 
            +
                    # Corresponds to the JSON property `fingerprint`
         | 
| 21249 | 
            +
                    # NOTE: Values are automatically base64 encoded/decoded in the client library.
         | 
| 21250 | 
            +
                    # @return [String]
         | 
| 21251 | 
            +
                    attr_accessor :fingerprint
         | 
| 21252 | 
            +
                  
         | 
| 21253 | 
            +
                    # [Output Only] The unique identifier for the resource. This identifier is
         | 
| 21254 | 
            +
                    # defined by the server.
         | 
| 21255 | 
            +
                    # Corresponds to the JSON property `id`
         | 
| 21256 | 
            +
                    # @return [Fixnum]
         | 
| 21257 | 
            +
                    attr_accessor :id
         | 
| 21258 | 
            +
                  
         | 
| 21259 | 
            +
                    # [Output only] Type of the resource. Always compute#networkEdgeSecurityService
         | 
| 21260 | 
            +
                    # for NetworkEdgeSecurityServices
         | 
| 21261 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 21262 | 
            +
                    # @return [String]
         | 
| 21263 | 
            +
                    attr_accessor :kind
         | 
| 21264 | 
            +
                  
         | 
| 21265 | 
            +
                    # Name of the resource. Provided by the client when the resource is created. The
         | 
| 21266 | 
            +
                    # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
         | 
| 21267 | 
            +
                    # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
         | 
| 21268 | 
            +
                    # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
         | 
| 21269 | 
            +
                    # and all following characters must be a dash, lowercase letter, or digit,
         | 
| 21270 | 
            +
                    # except the last character, which cannot be a dash.
         | 
| 21271 | 
            +
                    # Corresponds to the JSON property `name`
         | 
| 21272 | 
            +
                    # @return [String]
         | 
| 21273 | 
            +
                    attr_accessor :name
         | 
| 21274 | 
            +
                  
         | 
| 21275 | 
            +
                    # [Output Only] URL of the region where the resource resides. You must specify
         | 
| 21276 | 
            +
                    # this field as part of the HTTP request URL. It is not settable as a field in
         | 
| 21277 | 
            +
                    # the request body.
         | 
| 21278 | 
            +
                    # Corresponds to the JSON property `region`
         | 
| 21279 | 
            +
                    # @return [String]
         | 
| 21280 | 
            +
                    attr_accessor :region
         | 
| 21281 | 
            +
                  
         | 
| 21282 | 
            +
                    # The resource URL for the network edge security service associated with this
         | 
| 21283 | 
            +
                    # network edge security service.
         | 
| 21284 | 
            +
                    # Corresponds to the JSON property `securityPolicy`
         | 
| 21285 | 
            +
                    # @return [String]
         | 
| 21286 | 
            +
                    attr_accessor :security_policy
         | 
| 21287 | 
            +
                  
         | 
| 21288 | 
            +
                    # [Output Only] Server-defined URL for the resource.
         | 
| 21289 | 
            +
                    # Corresponds to the JSON property `selfLink`
         | 
| 21290 | 
            +
                    # @return [String]
         | 
| 21291 | 
            +
                    attr_accessor :self_link
         | 
| 21292 | 
            +
                  
         | 
| 21293 | 
            +
                    # [Output Only] Server-defined URL for this resource with the resource id.
         | 
| 21294 | 
            +
                    # Corresponds to the JSON property `selfLinkWithId`
         | 
| 21295 | 
            +
                    # @return [String]
         | 
| 21296 | 
            +
                    attr_accessor :self_link_with_id
         | 
| 21297 | 
            +
                  
         | 
| 21298 | 
            +
                    def initialize(**args)
         | 
| 21299 | 
            +
                       update!(**args)
         | 
| 21300 | 
            +
                    end
         | 
| 21301 | 
            +
                  
         | 
| 21302 | 
            +
                    # Update properties of this object
         | 
| 21303 | 
            +
                    def update!(**args)
         | 
| 21304 | 
            +
                      @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
         | 
| 21305 | 
            +
                      @description = args[:description] if args.key?(:description)
         | 
| 21306 | 
            +
                      @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
         | 
| 21307 | 
            +
                      @id = args[:id] if args.key?(:id)
         | 
| 21308 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 21309 | 
            +
                      @name = args[:name] if args.key?(:name)
         | 
| 21310 | 
            +
                      @region = args[:region] if args.key?(:region)
         | 
| 21311 | 
            +
                      @security_policy = args[:security_policy] if args.key?(:security_policy)
         | 
| 21312 | 
            +
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 21313 | 
            +
                      @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
         | 
| 21314 | 
            +
                    end
         | 
| 21315 | 
            +
                  end
         | 
| 21316 | 
            +
                  
         | 
| 21317 | 
            +
                  # 
         | 
| 21318 | 
            +
                  class NetworkEdgeSecurityServiceAggregatedList
         | 
| 21319 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 21320 | 
            +
                  
         | 
| 21321 | 
            +
                    # 
         | 
| 21322 | 
            +
                    # Corresponds to the JSON property `etag`
         | 
| 21323 | 
            +
                    # @return [String]
         | 
| 21324 | 
            +
                    attr_accessor :etag
         | 
| 21325 | 
            +
                  
         | 
| 21326 | 
            +
                    # [Output Only] Unique identifier for the resource; defined by the server.
         | 
| 21327 | 
            +
                    # Corresponds to the JSON property `id`
         | 
| 21328 | 
            +
                    # @return [String]
         | 
| 21329 | 
            +
                    attr_accessor :id
         | 
| 21330 | 
            +
                  
         | 
| 21331 | 
            +
                    # A list of NetworkEdgeSecurityServicesScopedList resources.
         | 
| 21332 | 
            +
                    # Corresponds to the JSON property `items`
         | 
| 21333 | 
            +
                    # @return [Hash<String,Google::Apis::ComputeBeta::NetworkEdgeSecurityServicesScopedList>]
         | 
| 21334 | 
            +
                    attr_accessor :items
         | 
| 21335 | 
            +
                  
         | 
| 21336 | 
            +
                    # [Output Only] Type of resource. Always compute#
         | 
| 21337 | 
            +
                    # networkEdgeSecurityServiceAggregatedList for lists of Network Edge Security
         | 
| 21338 | 
            +
                    # Services.
         | 
| 21339 | 
            +
                    # Corresponds to the JSON property `kind`
         | 
| 21340 | 
            +
                    # @return [String]
         | 
| 21341 | 
            +
                    attr_accessor :kind
         | 
| 21342 | 
            +
                  
         | 
| 21343 | 
            +
                    # [Output Only] This token allows you to get the next page of results for list
         | 
| 21344 | 
            +
                    # requests. If the number of results is larger than maxResults, use the
         | 
| 21345 | 
            +
                    # nextPageToken as a value for the query parameter pageToken in the next list
         | 
| 21346 | 
            +
                    # request. Subsequent list requests will have their own nextPageToken to
         | 
| 21347 | 
            +
                    # continue paging through the results.
         | 
| 21348 | 
            +
                    # Corresponds to the JSON property `nextPageToken`
         | 
| 21349 | 
            +
                    # @return [String]
         | 
| 21350 | 
            +
                    attr_accessor :next_page_token
         | 
| 21351 | 
            +
                  
         | 
| 21352 | 
            +
                    # [Output Only] Server-defined URL for this resource.
         | 
| 21353 | 
            +
                    # Corresponds to the JSON property `selfLink`
         | 
| 21354 | 
            +
                    # @return [String]
         | 
| 21355 | 
            +
                    attr_accessor :self_link
         | 
| 21356 | 
            +
                  
         | 
| 21357 | 
            +
                    # [Output Only] Unreachable resources.
         | 
| 21358 | 
            +
                    # Corresponds to the JSON property `unreachables`
         | 
| 21359 | 
            +
                    # @return [Array<String>]
         | 
| 21360 | 
            +
                    attr_accessor :unreachables
         | 
| 21361 | 
            +
                  
         | 
| 21362 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 21363 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 21364 | 
            +
                    # @return [Google::Apis::ComputeBeta::NetworkEdgeSecurityServiceAggregatedList::Warning]
         | 
| 21365 | 
            +
                    attr_accessor :warning
         | 
| 21366 | 
            +
                  
         | 
| 21367 | 
            +
                    def initialize(**args)
         | 
| 21368 | 
            +
                       update!(**args)
         | 
| 21369 | 
            +
                    end
         | 
| 21370 | 
            +
                  
         | 
| 21371 | 
            +
                    # Update properties of this object
         | 
| 21372 | 
            +
                    def update!(**args)
         | 
| 21373 | 
            +
                      @etag = args[:etag] if args.key?(:etag)
         | 
| 21374 | 
            +
                      @id = args[:id] if args.key?(:id)
         | 
| 21375 | 
            +
                      @items = args[:items] if args.key?(:items)
         | 
| 21376 | 
            +
                      @kind = args[:kind] if args.key?(:kind)
         | 
| 21377 | 
            +
                      @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
         | 
| 21378 | 
            +
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 21379 | 
            +
                      @unreachables = args[:unreachables] if args.key?(:unreachables)
         | 
| 21380 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 21381 | 
            +
                    end
         | 
| 21382 | 
            +
                    
         | 
| 21383 | 
            +
                    # [Output Only] Informational warning message.
         | 
| 21384 | 
            +
                    class Warning
         | 
| 21385 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 21386 | 
            +
                    
         | 
| 21387 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 21388 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 21389 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 21390 | 
            +
                      # @return [String]
         | 
| 21391 | 
            +
                      attr_accessor :code
         | 
| 21392 | 
            +
                    
         | 
| 21393 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example: "
         | 
| 21394 | 
            +
                      # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 21395 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 21396 | 
            +
                      # @return [Array<Google::Apis::ComputeBeta::NetworkEdgeSecurityServiceAggregatedList::Warning::Datum>]
         | 
| 21397 | 
            +
                      attr_accessor :data
         | 
| 21398 | 
            +
                    
         | 
| 21399 | 
            +
                      # [Output Only] A human-readable description of the warning code.
         | 
| 21400 | 
            +
                      # Corresponds to the JSON property `message`
         | 
| 21401 | 
            +
                      # @return [String]
         | 
| 21402 | 
            +
                      attr_accessor :message
         | 
| 21403 | 
            +
                    
         | 
| 21404 | 
            +
                      def initialize(**args)
         | 
| 21405 | 
            +
                         update!(**args)
         | 
| 21406 | 
            +
                      end
         | 
| 21407 | 
            +
                    
         | 
| 21408 | 
            +
                      # Update properties of this object
         | 
| 21409 | 
            +
                      def update!(**args)
         | 
| 21410 | 
            +
                        @code = args[:code] if args.key?(:code)
         | 
| 21411 | 
            +
                        @data = args[:data] if args.key?(:data)
         | 
| 21412 | 
            +
                        @message = args[:message] if args.key?(:message)
         | 
| 21413 | 
            +
                      end
         | 
| 21414 | 
            +
                      
         | 
| 21415 | 
            +
                      # 
         | 
| 21416 | 
            +
                      class Datum
         | 
| 21417 | 
            +
                        include Google::Apis::Core::Hashable
         | 
| 21418 | 
            +
                      
         | 
| 21419 | 
            +
                        # [Output Only] A key that provides more detail on the warning being returned.
         | 
| 21420 | 
            +
                        # For example, for warnings where there are no results in a list request for a
         | 
| 21421 | 
            +
                        # particular zone, this key might be scope and the key value might be the zone
         | 
| 21422 | 
            +
                        # name. Other examples might be a key indicating a deprecated resource and a
         | 
| 21423 | 
            +
                        # suggested replacement, or a warning about invalid network settings (for
         | 
| 21424 | 
            +
                        # example, if an instance attempts to perform IP forwarding but is not enabled
         | 
| 21425 | 
            +
                        # for IP forwarding).
         | 
| 21426 | 
            +
                        # Corresponds to the JSON property `key`
         | 
| 21427 | 
            +
                        # @return [String]
         | 
| 21428 | 
            +
                        attr_accessor :key
         | 
| 21429 | 
            +
                      
         | 
| 21430 | 
            +
                        # [Output Only] A warning data value corresponding to the key.
         | 
| 21431 | 
            +
                        # Corresponds to the JSON property `value`
         | 
| 21432 | 
            +
                        # @return [String]
         | 
| 21433 | 
            +
                        attr_accessor :value
         | 
| 21434 | 
            +
                      
         | 
| 21435 | 
            +
                        def initialize(**args)
         | 
| 21436 | 
            +
                           update!(**args)
         | 
| 21437 | 
            +
                        end
         | 
| 21438 | 
            +
                      
         | 
| 21439 | 
            +
                        # Update properties of this object
         | 
| 21440 | 
            +
                        def update!(**args)
         | 
| 21441 | 
            +
                          @key = args[:key] if args.key?(:key)
         | 
| 21442 | 
            +
                          @value = args[:value] if args.key?(:value)
         | 
| 21443 | 
            +
                        end
         | 
| 21444 | 
            +
                      end
         | 
| 21445 | 
            +
                    end
         | 
| 21446 | 
            +
                  end
         | 
| 21447 | 
            +
                  
         | 
| 21448 | 
            +
                  # 
         | 
| 21449 | 
            +
                  class NetworkEdgeSecurityServicesScopedList
         | 
| 21450 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 21451 | 
            +
                  
         | 
| 21452 | 
            +
                    # A list of NetworkEdgeSecurityServices contained in this scope.
         | 
| 21453 | 
            +
                    # Corresponds to the JSON property `networkEdgeSecurityServices`
         | 
| 21454 | 
            +
                    # @return [Array<Google::Apis::ComputeBeta::NetworkEdgeSecurityService>]
         | 
| 21455 | 
            +
                    attr_accessor :network_edge_security_services
         | 
| 21456 | 
            +
                  
         | 
| 21457 | 
            +
                    # Informational warning which replaces the list of security policies when the
         | 
| 21458 | 
            +
                    # list is empty.
         | 
| 21459 | 
            +
                    # Corresponds to the JSON property `warning`
         | 
| 21460 | 
            +
                    # @return [Google::Apis::ComputeBeta::NetworkEdgeSecurityServicesScopedList::Warning]
         | 
| 21461 | 
            +
                    attr_accessor :warning
         | 
| 21462 | 
            +
                  
         | 
| 21463 | 
            +
                    def initialize(**args)
         | 
| 21464 | 
            +
                       update!(**args)
         | 
| 21465 | 
            +
                    end
         | 
| 21466 | 
            +
                  
         | 
| 21467 | 
            +
                    # Update properties of this object
         | 
| 21468 | 
            +
                    def update!(**args)
         | 
| 21469 | 
            +
                      @network_edge_security_services = args[:network_edge_security_services] if args.key?(:network_edge_security_services)
         | 
| 21470 | 
            +
                      @warning = args[:warning] if args.key?(:warning)
         | 
| 21471 | 
            +
                    end
         | 
| 21472 | 
            +
                    
         | 
| 21473 | 
            +
                    # Informational warning which replaces the list of security policies when the
         | 
| 21474 | 
            +
                    # list is empty.
         | 
| 21475 | 
            +
                    class Warning
         | 
| 21476 | 
            +
                      include Google::Apis::Core::Hashable
         | 
| 21477 | 
            +
                    
         | 
| 21478 | 
            +
                      # [Output Only] A warning code, if applicable. For example, Compute Engine
         | 
| 21479 | 
            +
                      # returns NO_RESULTS_ON_PAGE if there are no results in the response.
         | 
| 21480 | 
            +
                      # Corresponds to the JSON property `code`
         | 
| 21481 | 
            +
                      # @return [String]
         | 
| 21482 | 
            +
                      attr_accessor :code
         | 
| 21483 | 
            +
                    
         | 
| 21484 | 
            +
                      # [Output Only] Metadata about this warning in key: value format. For example: "
         | 
| 21485 | 
            +
                      # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
         | 
| 21486 | 
            +
                      # Corresponds to the JSON property `data`
         | 
| 21487 | 
            +
                      # @return [Array<Google::Apis::ComputeBeta::NetworkEdgeSecurityServicesScopedList::Warning::Datum>]
         | 
| 20882 21488 | 
             
                      attr_accessor :data
         | 
| 20883 21489 |  | 
| 20884 21490 | 
             
                      # [Output Only] A human-readable description of the warning code.
         | 
| @@ -26553,6 +27159,11 @@ module Google | |
| 26553 27159 | 
             
                    # @return [Google::Apis::ComputeBeta::UsageExportLocation]
         | 
| 26554 27160 | 
             
                    attr_accessor :usage_export_location
         | 
| 26555 27161 |  | 
| 27162 | 
            +
                    # [Output Only] Default internal DNS setting used by VMs running in this project.
         | 
| 27163 | 
            +
                    # Corresponds to the JSON property `vmDnsSetting`
         | 
| 27164 | 
            +
                    # @return [String]
         | 
| 27165 | 
            +
                    attr_accessor :vm_dns_setting
         | 
| 27166 | 
            +
                  
         | 
| 26556 27167 | 
             
                    # [Output Only] The role this project has in a shared VPC configuration.
         | 
| 26557 27168 | 
             
                    # Currently, only projects with the host role, which is specified by the value
         | 
| 26558 27169 | 
             
                    # HOST, are differentiated.
         | 
| @@ -26578,6 +27189,7 @@ module Google | |
| 26578 27189 | 
             
                      @quotas = args[:quotas] if args.key?(:quotas)
         | 
| 26579 27190 | 
             
                      @self_link = args[:self_link] if args.key?(:self_link)
         | 
| 26580 27191 | 
             
                      @usage_export_location = args[:usage_export_location] if args.key?(:usage_export_location)
         | 
| 27192 | 
            +
                      @vm_dns_setting = args[:vm_dns_setting] if args.key?(:vm_dns_setting)
         | 
| 26581 27193 | 
             
                      @xpn_project_status = args[:xpn_project_status] if args.key?(:xpn_project_status)
         | 
| 26582 27194 | 
             
                    end
         | 
| 26583 27195 | 
             
                  end
         | 
| @@ -29751,8 +30363,8 @@ module Google | |
| 29751 30363 | 
             
                    # @return [Fixnum]
         | 
| 29752 30364 | 
             
                    attr_accessor :amount
         | 
| 29753 30365 |  | 
| 29754 | 
            -
                    # Type of resource for which this commitment applies. Possible values are VCPU
         | 
| 29755 | 
            -
                    # and  | 
| 30366 | 
            +
                    # Type of resource for which this commitment applies. Possible values are VCPU,
         | 
| 30367 | 
            +
                    # MEMORY, LOCAL_SSD, and ACCELERATOR.
         | 
| 29756 30368 | 
             
                    # Corresponds to the JSON property `type`
         | 
| 29757 30369 | 
             
                    # @return [String]
         | 
| 29758 30370 | 
             
                    attr_accessor :type
         | 
| @@ -30650,6 +31262,11 @@ module Google | |
| 30650 31262 | 
             
                    # @return [String]
         | 
| 30651 31263 | 
             
                    attr_accessor :physical_host
         | 
| 30652 31264 |  | 
| 31265 | 
            +
                    # 
         | 
| 31266 | 
            +
                    # Corresponds to the JSON property `scheduling`
         | 
| 31267 | 
            +
                    # @return [Google::Apis::ComputeBeta::ResourceStatusScheduling]
         | 
| 31268 | 
            +
                    attr_accessor :scheduling
         | 
| 31269 | 
            +
                  
         | 
| 30653 31270 | 
             
                    def initialize(**args)
         | 
| 30654 31271 | 
             
                       update!(**args)
         | 
| 30655 31272 | 
             
                    end
         | 
| @@ -30657,6 +31274,26 @@ module Google | |
| 30657 31274 | 
             
                    # Update properties of this object
         | 
| 30658 31275 | 
             
                    def update!(**args)
         | 
| 30659 31276 | 
             
                      @physical_host = args[:physical_host] if args.key?(:physical_host)
         | 
| 31277 | 
            +
                      @scheduling = args[:scheduling] if args.key?(:scheduling)
         | 
| 31278 | 
            +
                    end
         | 
| 31279 | 
            +
                  end
         | 
| 31280 | 
            +
                  
         | 
| 31281 | 
            +
                  # 
         | 
| 31282 | 
            +
                  class ResourceStatusScheduling
         | 
| 31283 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 31284 | 
            +
                  
         | 
| 31285 | 
            +
                    # Time in future when the instance will be terminated in RFC3339 text format.
         | 
| 31286 | 
            +
                    # Corresponds to the JSON property `terminationTimestamp`
         | 
| 31287 | 
            +
                    # @return [String]
         | 
| 31288 | 
            +
                    attr_accessor :termination_timestamp
         | 
| 31289 | 
            +
                  
         | 
| 31290 | 
            +
                    def initialize(**args)
         | 
| 31291 | 
            +
                       update!(**args)
         | 
| 31292 | 
            +
                    end
         | 
| 31293 | 
            +
                  
         | 
| 31294 | 
            +
                    # Update properties of this object
         | 
| 31295 | 
            +
                    def update!(**args)
         | 
| 31296 | 
            +
                      @termination_timestamp = args[:termination_timestamp] if args.key?(:termination_timestamp)
         | 
| 30660 31297 | 
             
                    end
         | 
| 30661 31298 | 
             
                  end
         | 
| 30662 31299 |  | 
| @@ -34318,6 +34955,14 @@ module Google | |
| 34318 34955 | 
             
                    # @return [String]
         | 
| 34319 34956 | 
             
                    attr_accessor :enforce_on_key
         | 
| 34320 34957 |  | 
| 34958 | 
            +
                    # If specified, any combination of values of enforce_on_key_type/
         | 
| 34959 | 
            +
                    # enforce_on_key_name is treated as the key on which ratelimit threshold/action
         | 
| 34960 | 
            +
                    # is enforced. You can specify up to 3 enforce_on_key_configs. If
         | 
| 34961 | 
            +
                    # enforce_on_key_configs is specified, enforce_on_key must not be specified.
         | 
| 34962 | 
            +
                    # Corresponds to the JSON property `enforceOnKeyConfigs`
         | 
| 34963 | 
            +
                    # @return [Array<Google::Apis::ComputeBeta::SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig>]
         | 
| 34964 | 
            +
                    attr_accessor :enforce_on_key_configs
         | 
| 34965 | 
            +
                  
         | 
| 34321 34966 | 
             
                    # Rate limit key name applicable only for the following key types: HTTP_HEADER --
         | 
| 34322 34967 | 
             
                    # Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE --
         | 
| 34323 34968 | 
             
                    # Name of the HTTP cookie whose value is taken as the key value.
         | 
| @@ -34355,6 +35000,7 @@ module Google | |
| 34355 35000 | 
             
                      @ban_threshold = args[:ban_threshold] if args.key?(:ban_threshold)
         | 
| 34356 35001 | 
             
                      @conform_action = args[:conform_action] if args.key?(:conform_action)
         | 
| 34357 35002 | 
             
                      @enforce_on_key = args[:enforce_on_key] if args.key?(:enforce_on_key)
         | 
| 35003 | 
            +
                      @enforce_on_key_configs = args[:enforce_on_key_configs] if args.key?(:enforce_on_key_configs)
         | 
| 34358 35004 | 
             
                      @enforce_on_key_name = args[:enforce_on_key_name] if args.key?(:enforce_on_key_name)
         | 
| 34359 35005 | 
             
                      @exceed_action = args[:exceed_action] if args.key?(:exceed_action)
         | 
| 34360 35006 | 
             
                      @exceed_redirect_options = args[:exceed_redirect_options] if args.key?(:exceed_redirect_options)
         | 
| @@ -34362,6 +35008,51 @@ module Google | |
| 34362 35008 | 
             
                    end
         | 
| 34363 35009 | 
             
                  end
         | 
| 34364 35010 |  | 
| 35011 | 
            +
                  # 
         | 
| 35012 | 
            +
                  class SecurityPolicyRuleRateLimitOptionsEnforceOnKeyConfig
         | 
| 35013 | 
            +
                    include Google::Apis::Core::Hashable
         | 
| 35014 | 
            +
                  
         | 
| 35015 | 
            +
                    # Rate limit key name applicable only for the following key types: HTTP_HEADER --
         | 
| 35016 | 
            +
                    # Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE --
         | 
| 35017 | 
            +
                    # Name of the HTTP cookie whose value is taken as the key value.
         | 
| 35018 | 
            +
                    # Corresponds to the JSON property `enforceOnKeyName`
         | 
| 35019 | 
            +
                    # @return [String]
         | 
| 35020 | 
            +
                    attr_accessor :enforce_on_key_name
         | 
| 35021 | 
            +
                  
         | 
| 35022 | 
            +
                    # Determines the key to enforce the rate_limit_threshold on. Possible values are:
         | 
| 35023 | 
            +
                    # - ALL: A single rate limit threshold is applied to all the requests matching
         | 
| 35024 | 
            +
                    # this rule. This is the default value if "enforceOnKeyConfigs" is not
         | 
| 35025 | 
            +
                    # configured. - IP: The source IP address of the request is the key. Each IP has
         | 
| 35026 | 
            +
                    # this limit enforced separately. - HTTP_HEADER: The value of the HTTP header
         | 
| 35027 | 
            +
                    # whose name is configured under "enforceOnKeyName". The key value is truncated
         | 
| 35028 | 
            +
                    # to the first 128 bytes of the header value. If no such header is present in
         | 
| 35029 | 
            +
                    # the request, the key type defaults to ALL. - XFF_IP: The first IP address (i.e.
         | 
| 35030 | 
            +
                    # the originating client IP address) specified in the list of IPs under X-
         | 
| 35031 | 
            +
                    # Forwarded-For HTTP header. If no such header is present or the value is not a
         | 
| 35032 | 
            +
                    # valid IP, the key defaults to the source IP address of the request i.e. key
         | 
| 35033 | 
            +
                    # type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is configured
         | 
| 35034 | 
            +
                    # under "enforceOnKeyName". The key value is truncated to the first 128 bytes of
         | 
| 35035 | 
            +
                    # the cookie value. If no such cookie is present in the request, the key type
         | 
| 35036 | 
            +
                    # defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value
         | 
| 35037 | 
            +
                    # is truncated to the first 128 bytes. - SNI: Server name indication in the TLS
         | 
| 35038 | 
            +
                    # session of the HTTPS request. The key value is truncated to the first 128
         | 
| 35039 | 
            +
                    # bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The
         | 
| 35040 | 
            +
                    # country/region from which the request originates.
         | 
| 35041 | 
            +
                    # Corresponds to the JSON property `enforceOnKeyType`
         | 
| 35042 | 
            +
                    # @return [String]
         | 
| 35043 | 
            +
                    attr_accessor :enforce_on_key_type
         | 
| 35044 | 
            +
                  
         | 
| 35045 | 
            +
                    def initialize(**args)
         | 
| 35046 | 
            +
                       update!(**args)
         | 
| 35047 | 
            +
                    end
         | 
| 35048 | 
            +
                  
         | 
| 35049 | 
            +
                    # Update properties of this object
         | 
| 35050 | 
            +
                    def update!(**args)
         | 
| 35051 | 
            +
                      @enforce_on_key_name = args[:enforce_on_key_name] if args.key?(:enforce_on_key_name)
         | 
| 35052 | 
            +
                      @enforce_on_key_type = args[:enforce_on_key_type] if args.key?(:enforce_on_key_type)
         | 
| 35053 | 
            +
                    end
         | 
| 35054 | 
            +
                  end
         | 
| 35055 | 
            +
                  
         | 
| 34365 35056 | 
             
                  # 
         | 
| 34366 35057 | 
             
                  class SecurityPolicyRuleRateLimitOptionsThreshold
         | 
| 34367 35058 | 
             
                    include Google::Apis::Core::Hashable
         | 
| @@ -34422,6 +35113,14 @@ module Google | |
| 34422 35113 | 
             
                    # @return [String]
         | 
| 34423 35114 | 
             
                    attr_accessor :authentication
         | 
| 34424 35115 |  | 
| 35116 | 
            +
                    # Contains the configurations necessary to generate a signature for access to
         | 
| 35117 | 
            +
                    # private storage buckets that support Signature Version 4 for authentication.
         | 
| 35118 | 
            +
                    # The service name for generating the authentication header will always default
         | 
| 35119 | 
            +
                    # to 's3'.
         | 
| 35120 | 
            +
                    # Corresponds to the JSON property `awsV4Authentication`
         | 
| 35121 | 
            +
                    # @return [Google::Apis::ComputeBeta::Awsv4Signature]
         | 
| 35122 | 
            +
                    attr_accessor :aws_v4_authentication
         | 
| 35123 | 
            +
                  
         | 
| 34425 35124 | 
             
                    # Optional. A URL referring to a networksecurity.ClientTlsPolicy resource that
         | 
| 34426 35125 | 
             
                    # describes how clients should authenticate with this service's backends.
         | 
| 34427 35126 | 
             
                    # clientTlsPolicy only applies to a global BackendService with the
         | 
| @@ -34454,6 +35153,7 @@ module Google | |
| 34454 35153 | 
             
                    # Update properties of this object
         | 
| 34455 35154 | 
             
                    def update!(**args)
         | 
| 34456 35155 | 
             
                      @authentication = args[:authentication] if args.key?(:authentication)
         | 
| 35156 | 
            +
                      @aws_v4_authentication = args[:aws_v4_authentication] if args.key?(:aws_v4_authentication)
         | 
| 34457 35157 | 
             
                      @client_tls_policy = args[:client_tls_policy] if args.key?(:client_tls_policy)
         | 
| 34458 35158 | 
             
                      @subject_alt_names = args[:subject_alt_names] if args.key?(:subject_alt_names)
         | 
| 34459 35159 | 
             
                    end
         | 
| @@ -34869,6 +35569,11 @@ module Google | |
| 34869 35569 | 
             
                    # @return [Fixnum]
         | 
| 34870 35570 | 
             
                    attr_accessor :connection_limit
         | 
| 34871 35571 |  | 
| 35572 | 
            +
                    # The network URL for the network to set the limit for.
         | 
| 35573 | 
            +
                    # Corresponds to the JSON property `networkUrl`
         | 
| 35574 | 
            +
                    # @return [String]
         | 
| 35575 | 
            +
                    attr_accessor :network_url
         | 
| 35576 | 
            +
                  
         | 
| 34872 35577 | 
             
                    # The project id or number for the project to set the limit for.
         | 
| 34873 35578 | 
             
                    # Corresponds to the JSON property `projectIdOrNum`
         | 
| 34874 35579 | 
             
                    # @return [String]
         | 
| @@ -34881,6 +35586,7 @@ module Google | |
| 34881 35586 | 
             
                    # Update properties of this object
         | 
| 34882 35587 | 
             
                    def update!(**args)
         | 
| 34883 35588 | 
             
                      @connection_limit = args[:connection_limit] if args.key?(:connection_limit)
         | 
| 35589 | 
            +
                      @network_url = args[:network_url] if args.key?(:network_url)
         | 
| 34884 35590 | 
             
                      @project_id_or_num = args[:project_id_or_num] if args.key?(:project_id_or_num)
         | 
| 34885 35591 | 
             
                    end
         | 
| 34886 35592 | 
             
                  end
         | 
| @@ -42321,6 +43027,22 @@ module Google | |
| 42321 43027 | 
             
                    # @return [String]
         | 
| 42322 43028 | 
             
                    attr_accessor :path_prefix_rewrite
         | 
| 42323 43029 |  | 
| 43030 | 
            +
                    # If specified, the pattern rewrites the URL path (based on the :path header)
         | 
| 43031 | 
            +
                    # using the HTTP template syntax. A corresponding path_template_match must be
         | 
| 43032 | 
            +
                    # specified. Any template variables must exist in the path_template_match field.
         | 
| 43033 | 
            +
                    # - -At least one variable must be specified in the path_template_match field -
         | 
| 43034 | 
            +
                    # You can omit variables from the rewritten URL - The * and ** operators cannot
         | 
| 43035 | 
            +
                    # be matched unless they have a corresponding variable name - e.g. `format=*` or
         | 
| 43036 | 
            +
                    # `var=**`. For example, a path_template_match of /static/`format=**` could be
         | 
| 43037 | 
            +
                    # rewritten as /static/content/`format` to prefix /content to the URL. Variables
         | 
| 43038 | 
            +
                    # can also be re-ordered in a rewrite, so that /`country`/`format`/`suffix=**`
         | 
| 43039 | 
            +
                    # can be rewritten as /content/`format`/`country`/`suffix`. At least one non-
         | 
| 43040 | 
            +
                    # empty routeRules[].matchRules[].path_template_match is required. Only one of
         | 
| 43041 | 
            +
                    # path_prefix_rewrite or path_template_rewrite may be specified.
         | 
| 43042 | 
            +
                    # Corresponds to the JSON property `pathTemplateRewrite`
         | 
| 43043 | 
            +
                    # @return [String]
         | 
| 43044 | 
            +
                    attr_accessor :path_template_rewrite
         | 
| 43045 | 
            +
                  
         | 
| 42324 43046 | 
             
                    def initialize(**args)
         | 
| 42325 43047 | 
             
                       update!(**args)
         | 
| 42326 43048 | 
             
                    end
         | 
| @@ -42329,6 +43051,7 @@ module Google | |
| 42329 43051 | 
             
                    def update!(**args)
         | 
| 42330 43052 | 
             
                      @host_rewrite = args[:host_rewrite] if args.key?(:host_rewrite)
         | 
| 42331 43053 | 
             
                      @path_prefix_rewrite = args[:path_prefix_rewrite] if args.key?(:path_prefix_rewrite)
         | 
| 43054 | 
            +
                      @path_template_rewrite = args[:path_template_rewrite] if args.key?(:path_template_rewrite)
         | 
| 42332 43055 | 
             
                    end
         | 
| 42333 43056 | 
             
                  end
         | 
| 42334 43057 |  |