google-apis-compute_v1 0.55.0 → 0.56.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.
@@ -2506,7 +2506,9 @@ module Google
2506
2506
  # group is completely drained, offering 0% of its available capacity. The valid
2507
2507
  # ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and
2508
2508
  # smaller than 0.1. You cannot configure a setting of 0 when there is only one
2509
- # backend attached to the backend service.
2509
+ # backend attached to the backend service. Not available with backends that don'
2510
+ # t support using a balancingMode. This includes backends such as global
2511
+ # internet NEGs, regional serverless NEGs, and PSC NEGs.
2510
2512
  # Corresponds to the JSON property `capacityScaler`
2511
2513
  # @return [Float]
2512
2514
  attr_accessor :capacity_scaler
@@ -7124,7 +7126,8 @@ module Google
7124
7126
 
7125
7127
  # The reason of the error. This is a constant value that identifies the
7126
7128
  # proximate cause of the error. Error reasons are unique within a particular
7127
- # domain of errors. This should be at most 63 characters and match /[A-Z0-9_]+/.
7129
+ # domain of errors. This should be at most 63 characters and match a regular
7130
+ # expression of `A-Z+[A-Z0-9]`, which represents UPPER_SNAKE_CASE.
7128
7131
  # Corresponds to the JSON property `reason`
7129
7132
  # @return [String]
7130
7133
  attr_accessor :reason
@@ -8122,8 +8125,8 @@ module Google
8122
8125
  attr_accessor :kind
8123
8126
 
8124
8127
  # Name of the resource. For Organization Firewall Policies it's a [Output Only]
8125
- # numeric ID allocated by GCP which uniquely identifies the Organization
8126
- # Firewall Policy.
8128
+ # numeric ID allocated by Google Cloud which uniquely identifies the
8129
+ # Organization Firewall Policy.
8127
8130
  # Corresponds to the JSON property `name`
8128
8131
  # @return [String]
8129
8132
  attr_accessor :name
@@ -8658,12 +8661,13 @@ module Google
8658
8661
  # @return [String]
8659
8662
  attr_accessor :ip_protocol
8660
8663
 
8661
- # This field is used along with the backend_service field for Internal TCP/UDP
8662
- # Load Balancing or Network Load Balancing, or with the target field for
8663
- # internal and external TargetInstance. You can only use one of ports and
8664
- # port_range, or allPorts. The three are mutually exclusive. For TCP, UDP and
8665
- # SCTP traffic, packets addressed to any ports will be forwarded to the target
8666
- # or backendService.
8664
+ # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
8665
+ # internal TCP/UDP load balancers, backend service-based network load balancers,
8666
+ # and internal and external protocol forwarding. Set this field to true to allow
8667
+ # packets addressed to any port or packets lacking destination port information (
8668
+ # for example, UDP fragments after the first fragment) to be forwarded to the
8669
+ # backends configured with this forwarding rule. The ports, port_range, and
8670
+ # allPorts fields are mutually exclusive.
8667
8671
  # Corresponds to the JSON property `allPorts`
8668
8672
  # @return [Boolean]
8669
8673
  attr_accessor :all_ports
@@ -8819,27 +8823,35 @@ module Google
8819
8823
  attr_accessor :no_automate_dns_zone
8820
8824
  alias_method :no_automate_dns_zone?, :no_automate_dns_zone
8821
8825
 
8822
- # This field can be used only if: - Load balancing scheme is one of EXTERNAL,
8823
- # INTERNAL_SELF_MANAGED or INTERNAL_MANAGED - IPProtocol is one of TCP, UDP, or
8824
- # SCTP. Packets addressed to ports in the specified range will be forwarded to
8825
- # target or backend_service. You can only use one of ports, port_range, or
8826
- # allPorts. The three are mutually exclusive. Forwarding rules with the same [
8827
- # IPAddress, IPProtocol] pair must have disjoint ports. Some types of forwarding
8828
- # target have constraints on the acceptable ports. For more information, see [
8829
- # Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-
8830
- # rule-concepts#port_specifications). @pattern: \\d+(?:-\\d+)?
8826
+ # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
8827
+ # backend service-based network load balancers, target pool-based network load
8828
+ # balancers, internal proxy load balancers, external proxy load balancers,
8829
+ # Traffic Director, external protocol forwarding, and Classic VPN. Some products
8830
+ # have restrictions on what ports can be used. See port specifications for
8831
+ # details. Only packets addressed to ports in the specified range will be
8832
+ # forwarded to the backends configured with this forwarding rule. The ports,
8833
+ # port_range, and allPorts fields are mutually exclusive. For external
8834
+ # forwarding rules, two or more forwarding rules cannot use the same [IPAddress,
8835
+ # IPProtocol] pair, and cannot have overlapping portRanges. For internal
8836
+ # forwarding rules within the same VPC network, two or more forwarding rules
8837
+ # cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping
8838
+ # portRanges. @pattern: \\d+(?:-\\d+)?
8831
8839
  # Corresponds to the JSON property `portRange`
8832
8840
  # @return [String]
8833
8841
  attr_accessor :port_range
8834
8842
 
8835
- # The ports field is only supported when the forwarding rule references a
8836
- # backend_service directly. Only packets addressed to the [specified list of
8837
- # ports]((https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#
8838
- # port_specifications)) are forwarded to backends. You can only use one of ports
8839
- # and port_range, or allPorts. The three are mutually exclusive. You can specify
8840
- # a list of up to five ports, which can be non-contiguous. Forwarding rules with
8841
- # the same [IPAddress, IPProtocol] pair must have disjoint ports. @pattern: \\d+(
8842
- # ?:-\\d+)?
8843
+ # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
8844
+ # internal TCP/UDP load balancers, backend service-based network load balancers,
8845
+ # and internal protocol forwarding. You can specify a list of up to five ports
8846
+ # by number, separated by commas. The ports can be contiguous or discontiguous.
8847
+ # Only packets addressed to these ports will be forwarded to the backends
8848
+ # configured with this forwarding rule. For external forwarding rules, two or
8849
+ # more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and
8850
+ # cannot share any values defined in ports. For internal forwarding rules within
8851
+ # the same VPC network, two or more forwarding rules cannot use the same [
8852
+ # IPAddress, IPProtocol] pair, and cannot share any values defined in ports. The
8853
+ # ports, port_range, and allPorts fields are mutually exclusive. @pattern: \\d+(?
8854
+ # :-\\d+)?
8843
8855
  # Corresponds to the JSON property `ports`
8844
8856
  # @return [Array<String>]
8845
8857
  attr_accessor :ports
@@ -10304,13 +10316,18 @@ module Google
10304
10316
  attr_accessor :fingerprint
10305
10317
 
10306
10318
  # A list of URLs to the HealthCheck resources. Must have at least one
10307
- # HealthCheck, and not more than 10. HealthCheck resources must have
10319
+ # HealthCheck, and not more than 10 for regional HealthCheckService, and not
10320
+ # more than 1 for global HealthCheckService. HealthCheck resources must have
10308
10321
  # portSpecification=USE_SERVING_PORT or portSpecification=USE_FIXED_PORT. For
10309
10322
  # regional HealthCheckService, the HealthCheck must be regional and in the same
10310
10323
  # region. For global HealthCheckService, HealthCheck must be global. Mix of
10311
10324
  # regional and global HealthChecks is not supported. Multiple regional
10312
10325
  # HealthChecks must belong to the same region. Regional HealthChecks must belong
10313
- # to the same region as zones of NEGs.
10326
+ # to the same region as zones of NetworkEndpointGroups. For global
10327
+ # HealthCheckService using global INTERNET_IP_PORT NetworkEndpointGroups, the
10328
+ # global HealthChecks must specify sourceRegions, and HealthChecks that specify
10329
+ # sourceRegions can only be used with global INTERNET_IP_PORT
10330
+ # NetworkEndpointGroups.
10314
10331
  # Corresponds to the JSON property `healthChecks`
10315
10332
  # @return [Array<String>]
10316
10333
  attr_accessor :health_checks
@@ -10320,7 +10337,8 @@ module Google
10320
10337
  # NO_AGGREGATION. An EndpointHealth message is returned for each pair in the
10321
10338
  # health check service. - AND. If any health check of an endpoint reports
10322
10339
  # UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health
10323
- # checks report HEALTHY, the HealthState of the endpoint is HEALTHY. .
10340
+ # checks report HEALTHY, the HealthState of the endpoint is HEALTHY. . This is
10341
+ # only allowed with regional HealthCheckService.
10324
10342
  # Corresponds to the JSON property `healthStatusAggregationPolicy`
10325
10343
  # @return [String]
10326
10344
  attr_accessor :health_status_aggregation_policy
@@ -10349,7 +10367,8 @@ module Google
10349
10367
 
10350
10368
  # A list of URLs to the NetworkEndpointGroup resources. Must not have more than
10351
10369
  # 100. For regional HealthCheckService, NEGs must be in zones in the region of
10352
- # the HealthCheckService.
10370
+ # the HealthCheckService. For global HealthCheckServices, the
10371
+ # NetworkEndpointGroups must be global INTERNET_IP_PORT.
10353
10372
  # Corresponds to the JSON property `networkEndpointGroups`
10354
10373
  # @return [Array<String>]
10355
10374
  attr_accessor :network_endpoint_groups
@@ -17217,6 +17236,16 @@ module Google
17217
17236
  # @return [Array<Google::Apis::ComputeV1::InterconnectDiagnosticsArpEntry>]
17218
17237
  attr_accessor :arp_caches
17219
17238
 
17239
+ # The aggregation type of the bundle interface.
17240
+ # Corresponds to the JSON property `bundleAggregationType`
17241
+ # @return [String]
17242
+ attr_accessor :bundle_aggregation_type
17243
+
17244
+ # The operational status of the bundle interface.
17245
+ # Corresponds to the JSON property `bundleOperationalStatus`
17246
+ # @return [String]
17247
+ attr_accessor :bundle_operational_status
17248
+
17220
17249
  # A list of InterconnectDiagnostics.LinkStatus objects, describing the status
17221
17250
  # for each link on the Interconnect.
17222
17251
  # Corresponds to the JSON property `links`
@@ -17235,6 +17264,8 @@ module Google
17235
17264
  # Update properties of this object
17236
17265
  def update!(**args)
17237
17266
  @arp_caches = args[:arp_caches] if args.key?(:arp_caches)
17267
+ @bundle_aggregation_type = args[:bundle_aggregation_type] if args.key?(:bundle_aggregation_type)
17268
+ @bundle_operational_status = args[:bundle_operational_status] if args.key?(:bundle_operational_status)
17238
17269
  @links = args[:links] if args.key?(:links)
17239
17270
  @mac_address = args[:mac_address] if args.key?(:mac_address)
17240
17271
  end
@@ -17358,6 +17389,11 @@ module Google
17358
17389
  # @return [Google::Apis::ComputeV1::InterconnectDiagnosticsLinkLacpStatus]
17359
17390
  attr_accessor :lacp_status
17360
17391
 
17392
+ # The operational status of the link.
17393
+ # Corresponds to the JSON property `operationalStatus`
17394
+ # @return [String]
17395
+ attr_accessor :operational_status
17396
+
17361
17397
  # An InterconnectDiagnostics.LinkOpticalPower object, describing the current
17362
17398
  # value and status of the received light level.
17363
17399
  # Corresponds to the JSON property `receivingOpticalPower`
@@ -17380,6 +17416,7 @@ module Google
17380
17416
  @circuit_id = args[:circuit_id] if args.key?(:circuit_id)
17381
17417
  @google_demarc = args[:google_demarc] if args.key?(:google_demarc)
17382
17418
  @lacp_status = args[:lacp_status] if args.key?(:lacp_status)
17419
+ @operational_status = args[:operational_status] if args.key?(:operational_status)
17383
17420
  @receiving_optical_power = args[:receiving_optical_power] if args.key?(:receiving_optical_power)
17384
17421
  @transmitting_optical_power = args[:transmitting_optical_power] if args.key?(:transmitting_optical_power)
17385
17422
  end
@@ -19843,6 +19880,496 @@ module Google
19843
19880
  end
19844
19881
  end
19845
19882
 
19883
+ # NetworkAttachments A network attachment resource ...
19884
+ class NetworkAttachment
19885
+ include Google::Apis::Core::Hashable
19886
+
19887
+ # [Output Only] An array of connections for all the producers connected to this
19888
+ # network attachment.
19889
+ # Corresponds to the JSON property `connectionEndpoints`
19890
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachmentConnectedEndpoint>]
19891
+ attr_accessor :connection_endpoints
19892
+
19893
+ #
19894
+ # Corresponds to the JSON property `connectionPreference`
19895
+ # @return [String]
19896
+ attr_accessor :connection_preference
19897
+
19898
+ # [Output Only] Creation timestamp in RFC3339 text format.
19899
+ # Corresponds to the JSON property `creationTimestamp`
19900
+ # @return [String]
19901
+ attr_accessor :creation_timestamp
19902
+
19903
+ # An optional description of this resource. Provide this property when you
19904
+ # create the resource.
19905
+ # Corresponds to the JSON property `description`
19906
+ # @return [String]
19907
+ attr_accessor :description
19908
+
19909
+ # [Output Only] Fingerprint of this resource. A hash of the contents stored in
19910
+ # this object. This field is used in optimistic locking. An up-to-date
19911
+ # fingerprint must be provided in order to patch.
19912
+ # Corresponds to the JSON property `fingerprint`
19913
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
19914
+ # @return [String]
19915
+ attr_accessor :fingerprint
19916
+
19917
+ # [Output Only] The unique identifier for the resource type. The server
19918
+ # generates this identifier.
19919
+ # Corresponds to the JSON property `id`
19920
+ # @return [Fixnum]
19921
+ attr_accessor :id
19922
+
19923
+ # [Output Only] Type of the resource.
19924
+ # Corresponds to the JSON property `kind`
19925
+ # @return [String]
19926
+ attr_accessor :kind
19927
+
19928
+ # Name of the resource. Provided by the client when the resource is created. The
19929
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
19930
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
19931
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
19932
+ # and all following characters must be a dash, lowercase letter, or digit,
19933
+ # except the last character, which cannot be a dash.
19934
+ # Corresponds to the JSON property `name`
19935
+ # @return [String]
19936
+ attr_accessor :name
19937
+
19938
+ # [Output Only] The URL of the network which the Network Attachment belongs to.
19939
+ # Corresponds to the JSON property `network`
19940
+ # @return [String]
19941
+ attr_accessor :network
19942
+
19943
+ # Projects that are allowed to connect to this network attachment. The project
19944
+ # can be specified using its id or number.
19945
+ # Corresponds to the JSON property `producerAcceptLists`
19946
+ # @return [Array<String>]
19947
+ attr_accessor :producer_accept_lists
19948
+
19949
+ # Projects that are not allowed to connect to this network attachment. The
19950
+ # project can be specified using its id or number.
19951
+ # Corresponds to the JSON property `producerRejectLists`
19952
+ # @return [Array<String>]
19953
+ attr_accessor :producer_reject_lists
19954
+
19955
+ # [Output Only] URL of the region where the network attachment resides. This
19956
+ # field applies only to the region resource. You must specify this field as part
19957
+ # of the HTTP request URL. It is not settable as a field in the request body.
19958
+ # Corresponds to the JSON property `region`
19959
+ # @return [String]
19960
+ attr_accessor :region
19961
+
19962
+ # [Output Only] Server-defined URL for the resource.
19963
+ # Corresponds to the JSON property `selfLink`
19964
+ # @return [String]
19965
+ attr_accessor :self_link
19966
+
19967
+ # [Output Only] Server-defined URL for this resource's resource id.
19968
+ # Corresponds to the JSON property `selfLinkWithId`
19969
+ # @return [String]
19970
+ attr_accessor :self_link_with_id
19971
+
19972
+ # An array of URLs where each entry is the URL of a subnet provided by the
19973
+ # service consumer to use for endpoints in the producers that connect to this
19974
+ # network attachment.
19975
+ # Corresponds to the JSON property `subnetworks`
19976
+ # @return [Array<String>]
19977
+ attr_accessor :subnetworks
19978
+
19979
+ def initialize(**args)
19980
+ update!(**args)
19981
+ end
19982
+
19983
+ # Update properties of this object
19984
+ def update!(**args)
19985
+ @connection_endpoints = args[:connection_endpoints] if args.key?(:connection_endpoints)
19986
+ @connection_preference = args[:connection_preference] if args.key?(:connection_preference)
19987
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
19988
+ @description = args[:description] if args.key?(:description)
19989
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
19990
+ @id = args[:id] if args.key?(:id)
19991
+ @kind = args[:kind] if args.key?(:kind)
19992
+ @name = args[:name] if args.key?(:name)
19993
+ @network = args[:network] if args.key?(:network)
19994
+ @producer_accept_lists = args[:producer_accept_lists] if args.key?(:producer_accept_lists)
19995
+ @producer_reject_lists = args[:producer_reject_lists] if args.key?(:producer_reject_lists)
19996
+ @region = args[:region] if args.key?(:region)
19997
+ @self_link = args[:self_link] if args.key?(:self_link)
19998
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
19999
+ @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
20000
+ end
20001
+ end
20002
+
20003
+ # Contains a list of NetworkAttachmentsScopedList.
20004
+ class NetworkAttachmentAggregatedList
20005
+ include Google::Apis::Core::Hashable
20006
+
20007
+ # [Output Only] Unique identifier for the resource; defined by the server.
20008
+ # Corresponds to the JSON property `id`
20009
+ # @return [String]
20010
+ attr_accessor :id
20011
+
20012
+ # A list of NetworkAttachmentsScopedList resources.
20013
+ # Corresponds to the JSON property `items`
20014
+ # @return [Hash<String,Google::Apis::ComputeV1::NetworkAttachmentsScopedList>]
20015
+ attr_accessor :items
20016
+
20017
+ #
20018
+ # Corresponds to the JSON property `kind`
20019
+ # @return [String]
20020
+ attr_accessor :kind
20021
+
20022
+ # [Output Only] This token allows you to get the next page of results for list
20023
+ # requests. If the number of results is larger than maxResults, use the
20024
+ # nextPageToken as a value for the query parameter pageToken in the next list
20025
+ # request. Subsequent list requests will have their own nextPageToken to
20026
+ # continue paging through the results.
20027
+ # Corresponds to the JSON property `nextPageToken`
20028
+ # @return [String]
20029
+ attr_accessor :next_page_token
20030
+
20031
+ # [Output Only] Server-defined URL for this resource.
20032
+ # Corresponds to the JSON property `selfLink`
20033
+ # @return [String]
20034
+ attr_accessor :self_link
20035
+
20036
+ # [Output Only] Informational warning message.
20037
+ # Corresponds to the JSON property `warning`
20038
+ # @return [Google::Apis::ComputeV1::NetworkAttachmentAggregatedList::Warning]
20039
+ attr_accessor :warning
20040
+
20041
+ def initialize(**args)
20042
+ update!(**args)
20043
+ end
20044
+
20045
+ # Update properties of this object
20046
+ def update!(**args)
20047
+ @id = args[:id] if args.key?(:id)
20048
+ @items = args[:items] if args.key?(:items)
20049
+ @kind = args[:kind] if args.key?(:kind)
20050
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
20051
+ @self_link = args[:self_link] if args.key?(:self_link)
20052
+ @warning = args[:warning] if args.key?(:warning)
20053
+ end
20054
+
20055
+ # [Output Only] Informational warning message.
20056
+ class Warning
20057
+ include Google::Apis::Core::Hashable
20058
+
20059
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
20060
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
20061
+ # Corresponds to the JSON property `code`
20062
+ # @return [String]
20063
+ attr_accessor :code
20064
+
20065
+ # [Output Only] Metadata about this warning in key: value format. For example: "
20066
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
20067
+ # Corresponds to the JSON property `data`
20068
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachmentAggregatedList::Warning::Datum>]
20069
+ attr_accessor :data
20070
+
20071
+ # [Output Only] A human-readable description of the warning code.
20072
+ # Corresponds to the JSON property `message`
20073
+ # @return [String]
20074
+ attr_accessor :message
20075
+
20076
+ def initialize(**args)
20077
+ update!(**args)
20078
+ end
20079
+
20080
+ # Update properties of this object
20081
+ def update!(**args)
20082
+ @code = args[:code] if args.key?(:code)
20083
+ @data = args[:data] if args.key?(:data)
20084
+ @message = args[:message] if args.key?(:message)
20085
+ end
20086
+
20087
+ #
20088
+ class Datum
20089
+ include Google::Apis::Core::Hashable
20090
+
20091
+ # [Output Only] A key that provides more detail on the warning being returned.
20092
+ # For example, for warnings where there are no results in a list request for a
20093
+ # particular zone, this key might be scope and the key value might be the zone
20094
+ # name. Other examples might be a key indicating a deprecated resource and a
20095
+ # suggested replacement, or a warning about invalid network settings (for
20096
+ # example, if an instance attempts to perform IP forwarding but is not enabled
20097
+ # for IP forwarding).
20098
+ # Corresponds to the JSON property `key`
20099
+ # @return [String]
20100
+ attr_accessor :key
20101
+
20102
+ # [Output Only] A warning data value corresponding to the key.
20103
+ # Corresponds to the JSON property `value`
20104
+ # @return [String]
20105
+ attr_accessor :value
20106
+
20107
+ def initialize(**args)
20108
+ update!(**args)
20109
+ end
20110
+
20111
+ # Update properties of this object
20112
+ def update!(**args)
20113
+ @key = args[:key] if args.key?(:key)
20114
+ @value = args[:value] if args.key?(:value)
20115
+ end
20116
+ end
20117
+ end
20118
+ end
20119
+
20120
+ # [Output Only] A connection connected to this network attachment.
20121
+ class NetworkAttachmentConnectedEndpoint
20122
+ include Google::Apis::Core::Hashable
20123
+
20124
+ # The IP address assigned to the producer instance network interface. This value
20125
+ # will be a range in case of Serverless.
20126
+ # Corresponds to the JSON property `ipAddress`
20127
+ # @return [String]
20128
+ attr_accessor :ip_address
20129
+
20130
+ # The project id or number of the interface to which the IP was assigned.
20131
+ # Corresponds to the JSON property `projectIdOrNum`
20132
+ # @return [String]
20133
+ attr_accessor :project_id_or_num
20134
+
20135
+ # Alias IP ranges from the same subnetwork
20136
+ # Corresponds to the JSON property `secondaryIpCidrRanges`
20137
+ # @return [Array<String>]
20138
+ attr_accessor :secondary_ip_cidr_ranges
20139
+
20140
+ # The status of a connected endpoint to this network attachment.
20141
+ # Corresponds to the JSON property `status`
20142
+ # @return [String]
20143
+ attr_accessor :status
20144
+
20145
+ # The subnetwork used to assign the IP to the producer instance network
20146
+ # interface.
20147
+ # Corresponds to the JSON property `subnetwork`
20148
+ # @return [String]
20149
+ attr_accessor :subnetwork
20150
+
20151
+ def initialize(**args)
20152
+ update!(**args)
20153
+ end
20154
+
20155
+ # Update properties of this object
20156
+ def update!(**args)
20157
+ @ip_address = args[:ip_address] if args.key?(:ip_address)
20158
+ @project_id_or_num = args[:project_id_or_num] if args.key?(:project_id_or_num)
20159
+ @secondary_ip_cidr_ranges = args[:secondary_ip_cidr_ranges] if args.key?(:secondary_ip_cidr_ranges)
20160
+ @status = args[:status] if args.key?(:status)
20161
+ @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
20162
+ end
20163
+ end
20164
+
20165
+ #
20166
+ class NetworkAttachmentList
20167
+ include Google::Apis::Core::Hashable
20168
+
20169
+ # [Output Only] Unique identifier for the resource; defined by the server.
20170
+ # Corresponds to the JSON property `id`
20171
+ # @return [String]
20172
+ attr_accessor :id
20173
+
20174
+ # A list of NetworkAttachment resources.
20175
+ # Corresponds to the JSON property `items`
20176
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachment>]
20177
+ attr_accessor :items
20178
+
20179
+ #
20180
+ # Corresponds to the JSON property `kind`
20181
+ # @return [String]
20182
+ attr_accessor :kind
20183
+
20184
+ # [Output Only] This token allows you to get the next page of results for list
20185
+ # requests. If the number of results is larger than maxResults, use the
20186
+ # nextPageToken as a value for the query parameter pageToken in the next list
20187
+ # request. Subsequent list requests will have their own nextPageToken to
20188
+ # continue paging through the results.
20189
+ # Corresponds to the JSON property `nextPageToken`
20190
+ # @return [String]
20191
+ attr_accessor :next_page_token
20192
+
20193
+ # [Output Only] Server-defined URL for this resource.
20194
+ # Corresponds to the JSON property `selfLink`
20195
+ # @return [String]
20196
+ attr_accessor :self_link
20197
+
20198
+ # [Output Only] Informational warning message.
20199
+ # Corresponds to the JSON property `warning`
20200
+ # @return [Google::Apis::ComputeV1::NetworkAttachmentList::Warning]
20201
+ attr_accessor :warning
20202
+
20203
+ def initialize(**args)
20204
+ update!(**args)
20205
+ end
20206
+
20207
+ # Update properties of this object
20208
+ def update!(**args)
20209
+ @id = args[:id] if args.key?(:id)
20210
+ @items = args[:items] if args.key?(:items)
20211
+ @kind = args[:kind] if args.key?(:kind)
20212
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
20213
+ @self_link = args[:self_link] if args.key?(:self_link)
20214
+ @warning = args[:warning] if args.key?(:warning)
20215
+ end
20216
+
20217
+ # [Output Only] Informational warning message.
20218
+ class Warning
20219
+ include Google::Apis::Core::Hashable
20220
+
20221
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
20222
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
20223
+ # Corresponds to the JSON property `code`
20224
+ # @return [String]
20225
+ attr_accessor :code
20226
+
20227
+ # [Output Only] Metadata about this warning in key: value format. For example: "
20228
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
20229
+ # Corresponds to the JSON property `data`
20230
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachmentList::Warning::Datum>]
20231
+ attr_accessor :data
20232
+
20233
+ # [Output Only] A human-readable description of the warning code.
20234
+ # Corresponds to the JSON property `message`
20235
+ # @return [String]
20236
+ attr_accessor :message
20237
+
20238
+ def initialize(**args)
20239
+ update!(**args)
20240
+ end
20241
+
20242
+ # Update properties of this object
20243
+ def update!(**args)
20244
+ @code = args[:code] if args.key?(:code)
20245
+ @data = args[:data] if args.key?(:data)
20246
+ @message = args[:message] if args.key?(:message)
20247
+ end
20248
+
20249
+ #
20250
+ class Datum
20251
+ include Google::Apis::Core::Hashable
20252
+
20253
+ # [Output Only] A key that provides more detail on the warning being returned.
20254
+ # For example, for warnings where there are no results in a list request for a
20255
+ # particular zone, this key might be scope and the key value might be the zone
20256
+ # name. Other examples might be a key indicating a deprecated resource and a
20257
+ # suggested replacement, or a warning about invalid network settings (for
20258
+ # example, if an instance attempts to perform IP forwarding but is not enabled
20259
+ # for IP forwarding).
20260
+ # Corresponds to the JSON property `key`
20261
+ # @return [String]
20262
+ attr_accessor :key
20263
+
20264
+ # [Output Only] A warning data value corresponding to the key.
20265
+ # Corresponds to the JSON property `value`
20266
+ # @return [String]
20267
+ attr_accessor :value
20268
+
20269
+ def initialize(**args)
20270
+ update!(**args)
20271
+ end
20272
+
20273
+ # Update properties of this object
20274
+ def update!(**args)
20275
+ @key = args[:key] if args.key?(:key)
20276
+ @value = args[:value] if args.key?(:value)
20277
+ end
20278
+ end
20279
+ end
20280
+ end
20281
+
20282
+ #
20283
+ class NetworkAttachmentsScopedList
20284
+ include Google::Apis::Core::Hashable
20285
+
20286
+ # A list of NetworkAttachments contained in this scope.
20287
+ # Corresponds to the JSON property `networkAttachments`
20288
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachment>]
20289
+ attr_accessor :network_attachments
20290
+
20291
+ # Informational warning which replaces the list of network attachments when the
20292
+ # list is empty.
20293
+ # Corresponds to the JSON property `warning`
20294
+ # @return [Google::Apis::ComputeV1::NetworkAttachmentsScopedList::Warning]
20295
+ attr_accessor :warning
20296
+
20297
+ def initialize(**args)
20298
+ update!(**args)
20299
+ end
20300
+
20301
+ # Update properties of this object
20302
+ def update!(**args)
20303
+ @network_attachments = args[:network_attachments] if args.key?(:network_attachments)
20304
+ @warning = args[:warning] if args.key?(:warning)
20305
+ end
20306
+
20307
+ # Informational warning which replaces the list of network attachments when the
20308
+ # list is empty.
20309
+ class Warning
20310
+ include Google::Apis::Core::Hashable
20311
+
20312
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
20313
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
20314
+ # Corresponds to the JSON property `code`
20315
+ # @return [String]
20316
+ attr_accessor :code
20317
+
20318
+ # [Output Only] Metadata about this warning in key: value format. For example: "
20319
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
20320
+ # Corresponds to the JSON property `data`
20321
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachmentsScopedList::Warning::Datum>]
20322
+ attr_accessor :data
20323
+
20324
+ # [Output Only] A human-readable description of the warning code.
20325
+ # Corresponds to the JSON property `message`
20326
+ # @return [String]
20327
+ attr_accessor :message
20328
+
20329
+ def initialize(**args)
20330
+ update!(**args)
20331
+ end
20332
+
20333
+ # Update properties of this object
20334
+ def update!(**args)
20335
+ @code = args[:code] if args.key?(:code)
20336
+ @data = args[:data] if args.key?(:data)
20337
+ @message = args[:message] if args.key?(:message)
20338
+ end
20339
+
20340
+ #
20341
+ class Datum
20342
+ include Google::Apis::Core::Hashable
20343
+
20344
+ # [Output Only] A key that provides more detail on the warning being returned.
20345
+ # For example, for warnings where there are no results in a list request for a
20346
+ # particular zone, this key might be scope and the key value might be the zone
20347
+ # name. Other examples might be a key indicating a deprecated resource and a
20348
+ # suggested replacement, or a warning about invalid network settings (for
20349
+ # example, if an instance attempts to perform IP forwarding but is not enabled
20350
+ # for IP forwarding).
20351
+ # Corresponds to the JSON property `key`
20352
+ # @return [String]
20353
+ attr_accessor :key
20354
+
20355
+ # [Output Only] A warning data value corresponding to the key.
20356
+ # Corresponds to the JSON property `value`
20357
+ # @return [String]
20358
+ attr_accessor :value
20359
+
20360
+ def initialize(**args)
20361
+ update!(**args)
20362
+ end
20363
+
20364
+ # Update properties of this object
20365
+ def update!(**args)
20366
+ @key = args[:key] if args.key?(:key)
20367
+ @value = args[:value] if args.key?(:value)
20368
+ end
20369
+ end
20370
+ end
20371
+ end
20372
+
19846
20373
  # Represents a Google Cloud Armor network edge security service resource.
19847
20374
  class NetworkEdgeSecurityService
19848
20375
  include Google::Apis::Core::Hashable
@@ -25518,6 +26045,11 @@ module Google
25518
26045
  # @return [Google::Apis::ComputeV1::UsageExportLocation]
25519
26046
  attr_accessor :usage_export_location
25520
26047
 
26048
+ # [Output Only] Default internal DNS setting used by VMs running in this project.
26049
+ # Corresponds to the JSON property `vmDnsSetting`
26050
+ # @return [String]
26051
+ attr_accessor :vm_dns_setting
26052
+
25521
26053
  # [Output Only] The role this project has in a shared VPC configuration.
25522
26054
  # Currently, only projects with the host role, which is specified by the value
25523
26055
  # HOST, are differentiated.
@@ -25543,6 +26075,7 @@ module Google
25543
26075
  @quotas = args[:quotas] if args.key?(:quotas)
25544
26076
  @self_link = args[:self_link] if args.key?(:self_link)
25545
26077
  @usage_export_location = args[:usage_export_location] if args.key?(:usage_export_location)
26078
+ @vm_dns_setting = args[:vm_dns_setting] if args.key?(:vm_dns_setting)
25546
26079
  @xpn_project_status = args[:xpn_project_status] if args.key?(:xpn_project_status)
25547
26080
  end
25548
26081
  end
@@ -28156,6 +28689,13 @@ module Google
28156
28689
  # @return [String]
28157
28690
  attr_accessor :name
28158
28691
 
28692
+ # Resource policies to be added to this reservation. The key is defined by user,
28693
+ # and the value is resource policy url. This is to define placement policy with
28694
+ # reservation.
28695
+ # Corresponds to the JSON property `resourcePolicies`
28696
+ # @return [Hash<String,String>]
28697
+ attr_accessor :resource_policies
28698
+
28159
28699
  # [Output Only] Reserved for future use.
28160
28700
  # Corresponds to the JSON property `satisfiesPzs`
28161
28701
  # @return [Boolean]
@@ -28209,6 +28749,7 @@ module Google
28209
28749
  @id = args[:id] if args.key?(:id)
28210
28750
  @kind = args[:kind] if args.key?(:kind)
28211
28751
  @name = args[:name] if args.key?(:name)
28752
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
28212
28753
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
28213
28754
  @self_link = args[:self_link] if args.key?(:self_link)
28214
28755
  @share_settings = args[:share_settings] if args.key?(:share_settings)
@@ -28629,8 +29170,8 @@ module Google
28629
29170
  # @return [Fixnum]
28630
29171
  attr_accessor :amount
28631
29172
 
28632
- # Type of resource for which this commitment applies. Possible values are VCPU
28633
- # and MEMORY
29173
+ # Type of resource for which this commitment applies. Possible values are VCPU,
29174
+ # MEMORY, LOCAL_SSD, and ACCELERATOR.
28634
29175
  # Corresponds to the JSON property `type`
28635
29176
  # @return [String]
28636
29177
  attr_accessor :type
@@ -33323,6 +33864,11 @@ module Google
33323
33864
  # @return [Fixnum]
33324
33865
  attr_accessor :connection_limit
33325
33866
 
33867
+ # The network URL for the network to set the limit for.
33868
+ # Corresponds to the JSON property `networkUrl`
33869
+ # @return [String]
33870
+ attr_accessor :network_url
33871
+
33326
33872
  # The project id or number for the project to set the limit for.
33327
33873
  # Corresponds to the JSON property `projectIdOrNum`
33328
33874
  # @return [String]
@@ -33335,6 +33881,7 @@ module Google
33335
33881
  # Update properties of this object
33336
33882
  def update!(**args)
33337
33883
  @connection_limit = args[:connection_limit] if args.key?(:connection_limit)
33884
+ @network_url = args[:network_url] if args.key?(:network_url)
33338
33885
  @project_id_or_num = args[:project_id_or_num] if args.key?(:project_id_or_num)
33339
33886
  end
33340
33887
  end