google-apis-compute_beta 0.76.0 → 0.78.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.
@@ -6499,7 +6499,7 @@ module Google
6499
6499
  # a persistent disk using the sourceImage, sourceSnapshot, or sourceDisk
6500
6500
  # parameter, or specify it alone to create an empty persistent disk. If you
6501
6501
  # specify this field along with a source, the value of sizeGb must not be less
6502
- # than the size of the source. Acceptable values are 1 to 65536, inclusive.
6502
+ # than the size of the source. Acceptable values are greater than 0.
6503
6503
  # Corresponds to the JSON property `sizeGb`
6504
6504
  # @return [Fixnum]
6505
6505
  attr_accessor :size_gb
@@ -9592,6 +9592,16 @@ module Google
9592
9592
  attr_accessor :allow_psc_global_access
9593
9593
  alias_method :allow_psc_global_access?, :allow_psc_global_access
9594
9594
 
9595
+ # This is used in PSC consumer ForwardingRule to control whether the producer is
9596
+ # allowed to inject packets into the consumer's network. If set to true, the
9597
+ # target service attachment must have tunneling enabled and TunnelingConfig.
9598
+ # RoutingMode set to PACKET_INJECTION Non-PSC forwarding rules should not use
9599
+ # this field.
9600
+ # Corresponds to the JSON property `allowPscPacketInjection`
9601
+ # @return [Boolean]
9602
+ attr_accessor :allow_psc_packet_injection
9603
+ alias_method :allow_psc_packet_injection?, :allow_psc_packet_injection
9604
+
9595
9605
  # Identifies the backend service to which the forwarding rule sends traffic.
9596
9606
  # Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must
9597
9607
  # be omitted for all other load balancer types.
@@ -9870,6 +9880,7 @@ module Google
9870
9880
  @all_ports = args[:all_ports] if args.key?(:all_ports)
9871
9881
  @allow_global_access = args[:allow_global_access] if args.key?(:allow_global_access)
9872
9882
  @allow_psc_global_access = args[:allow_psc_global_access] if args.key?(:allow_psc_global_access)
9883
+ @allow_psc_packet_injection = args[:allow_psc_packet_injection] if args.key?(:allow_psc_packet_injection)
9873
9884
  @backend_service = args[:backend_service] if args.key?(:backend_service)
9874
9885
  @base_forwarding_rule = args[:base_forwarding_rule] if args.key?(:base_forwarding_rule)
9875
9886
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
@@ -9943,7 +9954,897 @@ module Google
9943
9954
 
9944
9955
  # [Output Only] Informational warning message.
9945
9956
  # Corresponds to the JSON property `warning`
9946
- # @return [Google::Apis::ComputeBeta::ForwardingRuleAggregatedList::Warning]
9957
+ # @return [Google::Apis::ComputeBeta::ForwardingRuleAggregatedList::Warning]
9958
+ attr_accessor :warning
9959
+
9960
+ def initialize(**args)
9961
+ update!(**args)
9962
+ end
9963
+
9964
+ # Update properties of this object
9965
+ def update!(**args)
9966
+ @id = args[:id] if args.key?(:id)
9967
+ @items = args[:items] if args.key?(:items)
9968
+ @kind = args[:kind] if args.key?(:kind)
9969
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
9970
+ @self_link = args[:self_link] if args.key?(:self_link)
9971
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
9972
+ @warning = args[:warning] if args.key?(:warning)
9973
+ end
9974
+
9975
+ # [Output Only] Informational warning message.
9976
+ class Warning
9977
+ include Google::Apis::Core::Hashable
9978
+
9979
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
9980
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
9981
+ # Corresponds to the JSON property `code`
9982
+ # @return [String]
9983
+ attr_accessor :code
9984
+
9985
+ # [Output Only] Metadata about this warning in key: value format. For example: "
9986
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
9987
+ # Corresponds to the JSON property `data`
9988
+ # @return [Array<Google::Apis::ComputeBeta::ForwardingRuleAggregatedList::Warning::Datum>]
9989
+ attr_accessor :data
9990
+
9991
+ # [Output Only] A human-readable description of the warning code.
9992
+ # Corresponds to the JSON property `message`
9993
+ # @return [String]
9994
+ attr_accessor :message
9995
+
9996
+ def initialize(**args)
9997
+ update!(**args)
9998
+ end
9999
+
10000
+ # Update properties of this object
10001
+ def update!(**args)
10002
+ @code = args[:code] if args.key?(:code)
10003
+ @data = args[:data] if args.key?(:data)
10004
+ @message = args[:message] if args.key?(:message)
10005
+ end
10006
+
10007
+ #
10008
+ class Datum
10009
+ include Google::Apis::Core::Hashable
10010
+
10011
+ # [Output Only] A key that provides more detail on the warning being returned.
10012
+ # For example, for warnings where there are no results in a list request for a
10013
+ # particular zone, this key might be scope and the key value might be the zone
10014
+ # name. Other examples might be a key indicating a deprecated resource and a
10015
+ # suggested replacement, or a warning about invalid network settings (for
10016
+ # example, if an instance attempts to perform IP forwarding but is not enabled
10017
+ # for IP forwarding).
10018
+ # Corresponds to the JSON property `key`
10019
+ # @return [String]
10020
+ attr_accessor :key
10021
+
10022
+ # [Output Only] A warning data value corresponding to the key.
10023
+ # Corresponds to the JSON property `value`
10024
+ # @return [String]
10025
+ attr_accessor :value
10026
+
10027
+ def initialize(**args)
10028
+ update!(**args)
10029
+ end
10030
+
10031
+ # Update properties of this object
10032
+ def update!(**args)
10033
+ @key = args[:key] if args.key?(:key)
10034
+ @value = args[:value] if args.key?(:value)
10035
+ end
10036
+ end
10037
+ end
10038
+ end
10039
+
10040
+ # Contains a list of ForwardingRule resources.
10041
+ class ForwardingRuleList
10042
+ include Google::Apis::Core::Hashable
10043
+
10044
+ # [Output Only] Unique identifier for the resource; defined by the server.
10045
+ # Corresponds to the JSON property `id`
10046
+ # @return [String]
10047
+ attr_accessor :id
10048
+
10049
+ # A list of ForwardingRule resources.
10050
+ # Corresponds to the JSON property `items`
10051
+ # @return [Array<Google::Apis::ComputeBeta::ForwardingRule>]
10052
+ attr_accessor :items
10053
+
10054
+ # Type of resource.
10055
+ # Corresponds to the JSON property `kind`
10056
+ # @return [String]
10057
+ attr_accessor :kind
10058
+
10059
+ # [Output Only] This token allows you to get the next page of results for list
10060
+ # requests. If the number of results is larger than maxResults, use the
10061
+ # nextPageToken as a value for the query parameter pageToken in the next list
10062
+ # request. Subsequent list requests will have their own nextPageToken to
10063
+ # continue paging through the results.
10064
+ # Corresponds to the JSON property `nextPageToken`
10065
+ # @return [String]
10066
+ attr_accessor :next_page_token
10067
+
10068
+ # [Output Only] Server-defined URL for this resource.
10069
+ # Corresponds to the JSON property `selfLink`
10070
+ # @return [String]
10071
+ attr_accessor :self_link
10072
+
10073
+ # [Output Only] Informational warning message.
10074
+ # Corresponds to the JSON property `warning`
10075
+ # @return [Google::Apis::ComputeBeta::ForwardingRuleList::Warning]
10076
+ attr_accessor :warning
10077
+
10078
+ def initialize(**args)
10079
+ update!(**args)
10080
+ end
10081
+
10082
+ # Update properties of this object
10083
+ def update!(**args)
10084
+ @id = args[:id] if args.key?(:id)
10085
+ @items = args[:items] if args.key?(:items)
10086
+ @kind = args[:kind] if args.key?(:kind)
10087
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
10088
+ @self_link = args[:self_link] if args.key?(:self_link)
10089
+ @warning = args[:warning] if args.key?(:warning)
10090
+ end
10091
+
10092
+ # [Output Only] Informational warning message.
10093
+ class Warning
10094
+ include Google::Apis::Core::Hashable
10095
+
10096
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
10097
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
10098
+ # Corresponds to the JSON property `code`
10099
+ # @return [String]
10100
+ attr_accessor :code
10101
+
10102
+ # [Output Only] Metadata about this warning in key: value format. For example: "
10103
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
10104
+ # Corresponds to the JSON property `data`
10105
+ # @return [Array<Google::Apis::ComputeBeta::ForwardingRuleList::Warning::Datum>]
10106
+ attr_accessor :data
10107
+
10108
+ # [Output Only] A human-readable description of the warning code.
10109
+ # Corresponds to the JSON property `message`
10110
+ # @return [String]
10111
+ attr_accessor :message
10112
+
10113
+ def initialize(**args)
10114
+ update!(**args)
10115
+ end
10116
+
10117
+ # Update properties of this object
10118
+ def update!(**args)
10119
+ @code = args[:code] if args.key?(:code)
10120
+ @data = args[:data] if args.key?(:data)
10121
+ @message = args[:message] if args.key?(:message)
10122
+ end
10123
+
10124
+ #
10125
+ class Datum
10126
+ include Google::Apis::Core::Hashable
10127
+
10128
+ # [Output Only] A key that provides more detail on the warning being returned.
10129
+ # For example, for warnings where there are no results in a list request for a
10130
+ # particular zone, this key might be scope and the key value might be the zone
10131
+ # name. Other examples might be a key indicating a deprecated resource and a
10132
+ # suggested replacement, or a warning about invalid network settings (for
10133
+ # example, if an instance attempts to perform IP forwarding but is not enabled
10134
+ # for IP forwarding).
10135
+ # Corresponds to the JSON property `key`
10136
+ # @return [String]
10137
+ attr_accessor :key
10138
+
10139
+ # [Output Only] A warning data value corresponding to the key.
10140
+ # Corresponds to the JSON property `value`
10141
+ # @return [String]
10142
+ attr_accessor :value
10143
+
10144
+ def initialize(**args)
10145
+ update!(**args)
10146
+ end
10147
+
10148
+ # Update properties of this object
10149
+ def update!(**args)
10150
+ @key = args[:key] if args.key?(:key)
10151
+ @value = args[:value] if args.key?(:value)
10152
+ end
10153
+ end
10154
+ end
10155
+ end
10156
+
10157
+ #
10158
+ class ForwardingRuleReference
10159
+ include Google::Apis::Core::Hashable
10160
+
10161
+ #
10162
+ # Corresponds to the JSON property `forwardingRule`
10163
+ # @return [String]
10164
+ attr_accessor :forwarding_rule
10165
+
10166
+ def initialize(**args)
10167
+ update!(**args)
10168
+ end
10169
+
10170
+ # Update properties of this object
10171
+ def update!(**args)
10172
+ @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
10173
+ end
10174
+ end
10175
+
10176
+ # Describes the auto-registration of the Forwarding Rule to Service Directory.
10177
+ # The region and project of the Service Directory resource generated from this
10178
+ # registration will be the same as this Forwarding Rule.
10179
+ class ForwardingRuleServiceDirectoryRegistration
10180
+ include Google::Apis::Core::Hashable
10181
+
10182
+ # Service Directory namespace to register the forwarding rule under.
10183
+ # Corresponds to the JSON property `namespace`
10184
+ # @return [String]
10185
+ attr_accessor :namespace
10186
+
10187
+ # Service Directory service to register the forwarding rule under.
10188
+ # Corresponds to the JSON property `service`
10189
+ # @return [String]
10190
+ attr_accessor :service
10191
+
10192
+ # [Optional] Service Directory region to register this global forwarding rule
10193
+ # under. Default to "us-central1". Only used for PSC for Google APIs. All PSC
10194
+ # for Google APIs Forwarding Rules on the same network should use the same
10195
+ # Service Directory region.
10196
+ # Corresponds to the JSON property `serviceDirectoryRegion`
10197
+ # @return [String]
10198
+ attr_accessor :service_directory_region
10199
+
10200
+ def initialize(**args)
10201
+ update!(**args)
10202
+ end
10203
+
10204
+ # Update properties of this object
10205
+ def update!(**args)
10206
+ @namespace = args[:namespace] if args.key?(:namespace)
10207
+ @service = args[:service] if args.key?(:service)
10208
+ @service_directory_region = args[:service_directory_region] if args.key?(:service_directory_region)
10209
+ end
10210
+ end
10211
+
10212
+ #
10213
+ class ForwardingRulesScopedList
10214
+ include Google::Apis::Core::Hashable
10215
+
10216
+ # A list of forwarding rules contained in this scope.
10217
+ # Corresponds to the JSON property `forwardingRules`
10218
+ # @return [Array<Google::Apis::ComputeBeta::ForwardingRule>]
10219
+ attr_accessor :forwarding_rules
10220
+
10221
+ # Informational warning which replaces the list of forwarding rules when the
10222
+ # list is empty.
10223
+ # Corresponds to the JSON property `warning`
10224
+ # @return [Google::Apis::ComputeBeta::ForwardingRulesScopedList::Warning]
10225
+ attr_accessor :warning
10226
+
10227
+ def initialize(**args)
10228
+ update!(**args)
10229
+ end
10230
+
10231
+ # Update properties of this object
10232
+ def update!(**args)
10233
+ @forwarding_rules = args[:forwarding_rules] if args.key?(:forwarding_rules)
10234
+ @warning = args[:warning] if args.key?(:warning)
10235
+ end
10236
+
10237
+ # Informational warning which replaces the list of forwarding rules when the
10238
+ # list is empty.
10239
+ class Warning
10240
+ include Google::Apis::Core::Hashable
10241
+
10242
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
10243
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
10244
+ # Corresponds to the JSON property `code`
10245
+ # @return [String]
10246
+ attr_accessor :code
10247
+
10248
+ # [Output Only] Metadata about this warning in key: value format. For example: "
10249
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
10250
+ # Corresponds to the JSON property `data`
10251
+ # @return [Array<Google::Apis::ComputeBeta::ForwardingRulesScopedList::Warning::Datum>]
10252
+ attr_accessor :data
10253
+
10254
+ # [Output Only] A human-readable description of the warning code.
10255
+ # Corresponds to the JSON property `message`
10256
+ # @return [String]
10257
+ attr_accessor :message
10258
+
10259
+ def initialize(**args)
10260
+ update!(**args)
10261
+ end
10262
+
10263
+ # Update properties of this object
10264
+ def update!(**args)
10265
+ @code = args[:code] if args.key?(:code)
10266
+ @data = args[:data] if args.key?(:data)
10267
+ @message = args[:message] if args.key?(:message)
10268
+ end
10269
+
10270
+ #
10271
+ class Datum
10272
+ include Google::Apis::Core::Hashable
10273
+
10274
+ # [Output Only] A key that provides more detail on the warning being returned.
10275
+ # For example, for warnings where there are no results in a list request for a
10276
+ # particular zone, this key might be scope and the key value might be the zone
10277
+ # name. Other examples might be a key indicating a deprecated resource and a
10278
+ # suggested replacement, or a warning about invalid network settings (for
10279
+ # example, if an instance attempts to perform IP forwarding but is not enabled
10280
+ # for IP forwarding).
10281
+ # Corresponds to the JSON property `key`
10282
+ # @return [String]
10283
+ attr_accessor :key
10284
+
10285
+ # [Output Only] A warning data value corresponding to the key.
10286
+ # Corresponds to the JSON property `value`
10287
+ # @return [String]
10288
+ attr_accessor :value
10289
+
10290
+ def initialize(**args)
10291
+ update!(**args)
10292
+ end
10293
+
10294
+ # Update properties of this object
10295
+ def update!(**args)
10296
+ @key = args[:key] if args.key?(:key)
10297
+ @value = args[:value] if args.key?(:value)
10298
+ end
10299
+ end
10300
+ end
10301
+ end
10302
+
10303
+ #
10304
+ class FutureReservation
10305
+ include Google::Apis::Core::Hashable
10306
+
10307
+ # Future timestamp when the FR auto-created reservations will be deleted by GCE.
10308
+ # Format of this field must be a valid href="https://www.ietf.org/rfc/rfc3339.
10309
+ # txt">RFC3339 value.
10310
+ # Corresponds to the JSON property `autoCreatedReservationsDeleteTime`
10311
+ # @return [String]
10312
+ attr_accessor :auto_created_reservations_delete_time
10313
+
10314
+ # A Duration represents a fixed-length span of time represented as a count of
10315
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
10316
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
10317
+ # 000 years.
10318
+ # Corresponds to the JSON property `autoCreatedReservationsDuration`
10319
+ # @return [Google::Apis::ComputeBeta::Duration]
10320
+ attr_accessor :auto_created_reservations_duration
10321
+
10322
+ # Setting for enabling or disabling automatic deletion for auto-created
10323
+ # reservation. If omitted or set to true, auto-created reservations will be
10324
+ # deleted at Future Reservation's end time (default) or at user's defined
10325
+ # timestamp if any of the [auto_created_reservations_delete_time,
10326
+ # auto_created_reservations_duration] values is specified. For keeping auto-
10327
+ # created reservation indefinitely, this value should be set to false.
10328
+ # Corresponds to the JSON property `autoDeleteAutoCreatedReservations`
10329
+ # @return [Boolean]
10330
+ attr_accessor :auto_delete_auto_created_reservations
10331
+ alias_method :auto_delete_auto_created_reservations?, :auto_delete_auto_created_reservations
10332
+
10333
+ # [Output Only] The creation timestamp for this future reservation in RFC3339
10334
+ # text format.
10335
+ # Corresponds to the JSON property `creationTimestamp`
10336
+ # @return [String]
10337
+ attr_accessor :creation_timestamp
10338
+
10339
+ # An optional description of this resource. Provide this property when you
10340
+ # create the future reservation.
10341
+ # Corresponds to the JSON property `description`
10342
+ # @return [String]
10343
+ attr_accessor :description
10344
+
10345
+ # [Output Only] A unique identifier for this future reservation. The server
10346
+ # defines this identifier.
10347
+ # Corresponds to the JSON property `id`
10348
+ # @return [Fixnum]
10349
+ attr_accessor :id
10350
+
10351
+ # [Output Only] Type of the resource. Always compute#futureReservation for
10352
+ # future reservations.
10353
+ # Corresponds to the JSON property `kind`
10354
+ # @return [String]
10355
+ attr_accessor :kind
10356
+
10357
+ # The name of the resource, provided by the client when initially creating the
10358
+ # resource. The resource name must be 1-63 characters long, and comply with
10359
+ # RFC1035. Specifically, the name must be 1-63 characters long and match the
10360
+ # regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
10361
+ # character must be a lowercase letter, and all following characters must be a
10362
+ # dash, lowercase letter, or digit, except the last character, which cannot be a
10363
+ # dash.
10364
+ # Corresponds to the JSON property `name`
10365
+ # @return [String]
10366
+ attr_accessor :name
10367
+
10368
+ # Name prefix for the reservations to be created at the time of delivery. The
10369
+ # name prefix must comply with RFC1035. Maximum allowed length for name prefix
10370
+ # is 20. Automatically created reservations name format will be -date-####.
10371
+ # Corresponds to the JSON property `namePrefix`
10372
+ # @return [String]
10373
+ attr_accessor :name_prefix
10374
+
10375
+ # Planning state before being submitted for evaluation
10376
+ # Corresponds to the JSON property `planningStatus`
10377
+ # @return [String]
10378
+ attr_accessor :planning_status
10379
+
10380
+ # [Output Only] Server-defined fully-qualified URL for this resource.
10381
+ # Corresponds to the JSON property `selfLink`
10382
+ # @return [String]
10383
+ attr_accessor :self_link
10384
+
10385
+ # [Output Only] Server-defined URL for this resource with the resource id.
10386
+ # Corresponds to the JSON property `selfLinkWithId`
10387
+ # @return [String]
10388
+ attr_accessor :self_link_with_id
10389
+
10390
+ # The share setting for reservations and sole tenancy node groups.
10391
+ # Corresponds to the JSON property `shareSettings`
10392
+ # @return [Google::Apis::ComputeBeta::ShareSettings]
10393
+ attr_accessor :share_settings
10394
+
10395
+ # Future Reservation configuration to indicate instance properties and total
10396
+ # count.
10397
+ # Corresponds to the JSON property `specificSkuProperties`
10398
+ # @return [Google::Apis::ComputeBeta::FutureReservationSpecificSkuProperties]
10399
+ attr_accessor :specific_sku_properties
10400
+
10401
+ # [Output only] Represents status related to the future reservation.
10402
+ # Corresponds to the JSON property `status`
10403
+ # @return [Google::Apis::ComputeBeta::FutureReservationStatus]
10404
+ attr_accessor :status
10405
+
10406
+ # Time window for this Future Reservation.
10407
+ # Corresponds to the JSON property `timeWindow`
10408
+ # @return [Google::Apis::ComputeBeta::FutureReservationTimeWindow]
10409
+ attr_accessor :time_window
10410
+
10411
+ # [Output Only] URL of the Zone where this future reservation resides.
10412
+ # Corresponds to the JSON property `zone`
10413
+ # @return [String]
10414
+ attr_accessor :zone
10415
+
10416
+ def initialize(**args)
10417
+ update!(**args)
10418
+ end
10419
+
10420
+ # Update properties of this object
10421
+ def update!(**args)
10422
+ @auto_created_reservations_delete_time = args[:auto_created_reservations_delete_time] if args.key?(:auto_created_reservations_delete_time)
10423
+ @auto_created_reservations_duration = args[:auto_created_reservations_duration] if args.key?(:auto_created_reservations_duration)
10424
+ @auto_delete_auto_created_reservations = args[:auto_delete_auto_created_reservations] if args.key?(:auto_delete_auto_created_reservations)
10425
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
10426
+ @description = args[:description] if args.key?(:description)
10427
+ @id = args[:id] if args.key?(:id)
10428
+ @kind = args[:kind] if args.key?(:kind)
10429
+ @name = args[:name] if args.key?(:name)
10430
+ @name_prefix = args[:name_prefix] if args.key?(:name_prefix)
10431
+ @planning_status = args[:planning_status] if args.key?(:planning_status)
10432
+ @self_link = args[:self_link] if args.key?(:self_link)
10433
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
10434
+ @share_settings = args[:share_settings] if args.key?(:share_settings)
10435
+ @specific_sku_properties = args[:specific_sku_properties] if args.key?(:specific_sku_properties)
10436
+ @status = args[:status] if args.key?(:status)
10437
+ @time_window = args[:time_window] if args.key?(:time_window)
10438
+ @zone = args[:zone] if args.key?(:zone)
10439
+ end
10440
+ end
10441
+
10442
+ #
10443
+ class FutureReservationSpecificSkuProperties
10444
+ include Google::Apis::Core::Hashable
10445
+
10446
+ # Properties of the SKU instances being reserved. Next ID: 9
10447
+ # Corresponds to the JSON property `instanceProperties`
10448
+ # @return [Google::Apis::ComputeBeta::AllocationSpecificSkuAllocationReservedInstanceProperties]
10449
+ attr_accessor :instance_properties
10450
+
10451
+ # The instance template that will be used to populate the
10452
+ # ReservedInstanceProperties of the future reservation
10453
+ # Corresponds to the JSON property `sourceInstanceTemplate`
10454
+ # @return [String]
10455
+ attr_accessor :source_instance_template
10456
+
10457
+ # Total number of instances for which capacity assurance is requested at a
10458
+ # future time period.
10459
+ # Corresponds to the JSON property `totalCount`
10460
+ # @return [Fixnum]
10461
+ attr_accessor :total_count
10462
+
10463
+ def initialize(**args)
10464
+ update!(**args)
10465
+ end
10466
+
10467
+ # Update properties of this object
10468
+ def update!(**args)
10469
+ @instance_properties = args[:instance_properties] if args.key?(:instance_properties)
10470
+ @source_instance_template = args[:source_instance_template] if args.key?(:source_instance_template)
10471
+ @total_count = args[:total_count] if args.key?(:total_count)
10472
+ end
10473
+ end
10474
+
10475
+ # [Output only] Represents status related to the future reservation.
10476
+ class FutureReservationStatus
10477
+ include Google::Apis::Core::Hashable
10478
+
10479
+ # [Output Only] The current status of the requested amendment.
10480
+ # Corresponds to the JSON property `amendmentStatus`
10481
+ # @return [String]
10482
+ attr_accessor :amendment_status
10483
+
10484
+ # Fully qualified urls of the automatically created reservations at start_time.
10485
+ # Corresponds to the JSON property `autoCreatedReservations`
10486
+ # @return [Array<String>]
10487
+ attr_accessor :auto_created_reservations
10488
+
10489
+ # This count indicates the fulfilled capacity so far. This is set during "
10490
+ # PROVISIONING" state. This count also includes capacity delivered as part of
10491
+ # existing matching reservations.
10492
+ # Corresponds to the JSON property `fulfilledCount`
10493
+ # @return [Fixnum]
10494
+ attr_accessor :fulfilled_count
10495
+
10496
+ # The state that the future reservation will be reverted to should the amendment
10497
+ # be declined.
10498
+ # Corresponds to the JSON property `lastKnownGoodState`
10499
+ # @return [Google::Apis::ComputeBeta::FutureReservationStatusLastKnownGoodState]
10500
+ attr_accessor :last_known_good_state
10501
+
10502
+ # Time when Future Reservation would become LOCKED, after which no modifications
10503
+ # to Future Reservation will be allowed. Applicable only after the Future
10504
+ # Reservation is in the APPROVED state. The lock_time is an RFC3339 string. The
10505
+ # procurement_status will transition to PROCURING state at this time.
10506
+ # Corresponds to the JSON property `lockTime`
10507
+ # @return [String]
10508
+ attr_accessor :lock_time
10509
+
10510
+ # Current state of this Future Reservation
10511
+ # Corresponds to the JSON property `procurementStatus`
10512
+ # @return [String]
10513
+ attr_accessor :procurement_status
10514
+
10515
+ # Properties to be set for the Future Reservation.
10516
+ # Corresponds to the JSON property `specificSkuProperties`
10517
+ # @return [Google::Apis::ComputeBeta::FutureReservationStatusSpecificSkuProperties]
10518
+ attr_accessor :specific_sku_properties
10519
+
10520
+ def initialize(**args)
10521
+ update!(**args)
10522
+ end
10523
+
10524
+ # Update properties of this object
10525
+ def update!(**args)
10526
+ @amendment_status = args[:amendment_status] if args.key?(:amendment_status)
10527
+ @auto_created_reservations = args[:auto_created_reservations] if args.key?(:auto_created_reservations)
10528
+ @fulfilled_count = args[:fulfilled_count] if args.key?(:fulfilled_count)
10529
+ @last_known_good_state = args[:last_known_good_state] if args.key?(:last_known_good_state)
10530
+ @lock_time = args[:lock_time] if args.key?(:lock_time)
10531
+ @procurement_status = args[:procurement_status] if args.key?(:procurement_status)
10532
+ @specific_sku_properties = args[:specific_sku_properties] if args.key?(:specific_sku_properties)
10533
+ end
10534
+ end
10535
+
10536
+ # The state that the future reservation will be reverted to should the amendment
10537
+ # be declined.
10538
+ class FutureReservationStatusLastKnownGoodState
10539
+ include Google::Apis::Core::Hashable
10540
+
10541
+ # [Output Only] The description of the FutureReservation before an amendment was
10542
+ # requested.
10543
+ # Corresponds to the JSON property `description`
10544
+ # @return [String]
10545
+ attr_accessor :description
10546
+
10547
+ # The properties of the last known good state for the Future Reservation.
10548
+ # Corresponds to the JSON property `futureReservationSpecs`
10549
+ # @return [Google::Apis::ComputeBeta::FutureReservationStatusLastKnownGoodStateFutureReservationSpecs]
10550
+ attr_accessor :future_reservation_specs
10551
+
10552
+ # [Output Only] The lock time of the FutureReservation before an amendment was
10553
+ # requested.
10554
+ # Corresponds to the JSON property `lockTime`
10555
+ # @return [String]
10556
+ attr_accessor :lock_time
10557
+
10558
+ # [Output Only] The name prefix of the Future Reservation before an amendment
10559
+ # was requested.
10560
+ # Corresponds to the JSON property `namePrefix`
10561
+ # @return [String]
10562
+ attr_accessor :name_prefix
10563
+
10564
+ # [Output Only] The status of the last known good state for the Future
10565
+ # Reservation.
10566
+ # Corresponds to the JSON property `procurementStatus`
10567
+ # @return [String]
10568
+ attr_accessor :procurement_status
10569
+
10570
+ def initialize(**args)
10571
+ update!(**args)
10572
+ end
10573
+
10574
+ # Update properties of this object
10575
+ def update!(**args)
10576
+ @description = args[:description] if args.key?(:description)
10577
+ @future_reservation_specs = args[:future_reservation_specs] if args.key?(:future_reservation_specs)
10578
+ @lock_time = args[:lock_time] if args.key?(:lock_time)
10579
+ @name_prefix = args[:name_prefix] if args.key?(:name_prefix)
10580
+ @procurement_status = args[:procurement_status] if args.key?(:procurement_status)
10581
+ end
10582
+ end
10583
+
10584
+ # The properties of the last known good state for the Future Reservation.
10585
+ class FutureReservationStatusLastKnownGoodStateFutureReservationSpecs
10586
+ include Google::Apis::Core::Hashable
10587
+
10588
+ # The share setting for reservations and sole tenancy node groups.
10589
+ # Corresponds to the JSON property `shareSettings`
10590
+ # @return [Google::Apis::ComputeBeta::ShareSettings]
10591
+ attr_accessor :share_settings
10592
+
10593
+ # [Output Only] The previous instance related properties of the Future
10594
+ # Reservation.
10595
+ # Corresponds to the JSON property `specificSkuProperties`
10596
+ # @return [Google::Apis::ComputeBeta::FutureReservationSpecificSkuProperties]
10597
+ attr_accessor :specific_sku_properties
10598
+
10599
+ # [Output Only] The previous time window of the Future Reservation.
10600
+ # Corresponds to the JSON property `timeWindow`
10601
+ # @return [Google::Apis::ComputeBeta::FutureReservationTimeWindow]
10602
+ attr_accessor :time_window
10603
+
10604
+ def initialize(**args)
10605
+ update!(**args)
10606
+ end
10607
+
10608
+ # Update properties of this object
10609
+ def update!(**args)
10610
+ @share_settings = args[:share_settings] if args.key?(:share_settings)
10611
+ @specific_sku_properties = args[:specific_sku_properties] if args.key?(:specific_sku_properties)
10612
+ @time_window = args[:time_window] if args.key?(:time_window)
10613
+ end
10614
+ end
10615
+
10616
+ # Properties to be set for the Future Reservation.
10617
+ class FutureReservationStatusSpecificSkuProperties
10618
+ include Google::Apis::Core::Hashable
10619
+
10620
+ # ID of the instance template used to populate the Future Reservation properties.
10621
+ # Corresponds to the JSON property `sourceInstanceTemplateId`
10622
+ # @return [String]
10623
+ attr_accessor :source_instance_template_id
10624
+
10625
+ def initialize(**args)
10626
+ update!(**args)
10627
+ end
10628
+
10629
+ # Update properties of this object
10630
+ def update!(**args)
10631
+ @source_instance_template_id = args[:source_instance_template_id] if args.key?(:source_instance_template_id)
10632
+ end
10633
+ end
10634
+
10635
+ #
10636
+ class FutureReservationTimeWindow
10637
+ include Google::Apis::Core::Hashable
10638
+
10639
+ # A Duration represents a fixed-length span of time represented as a count of
10640
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
10641
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
10642
+ # 000 years.
10643
+ # Corresponds to the JSON property `duration`
10644
+ # @return [Google::Apis::ComputeBeta::Duration]
10645
+ attr_accessor :duration
10646
+
10647
+ #
10648
+ # Corresponds to the JSON property `endTime`
10649
+ # @return [String]
10650
+ attr_accessor :end_time
10651
+
10652
+ # Start time of the Future Reservation. The start_time is an RFC3339 string.
10653
+ # Corresponds to the JSON property `startTime`
10654
+ # @return [String]
10655
+ attr_accessor :start_time
10656
+
10657
+ def initialize(**args)
10658
+ update!(**args)
10659
+ end
10660
+
10661
+ # Update properties of this object
10662
+ def update!(**args)
10663
+ @duration = args[:duration] if args.key?(:duration)
10664
+ @end_time = args[:end_time] if args.key?(:end_time)
10665
+ @start_time = args[:start_time] if args.key?(:start_time)
10666
+ end
10667
+ end
10668
+
10669
+ # Contains a list of future reservations.
10670
+ class FutureReservationsAggregatedListResponse
10671
+ include Google::Apis::Core::Hashable
10672
+
10673
+ #
10674
+ # Corresponds to the JSON property `etag`
10675
+ # @return [String]
10676
+ attr_accessor :etag
10677
+
10678
+ # [Output Only] Unique identifier for the resource; defined by the server.
10679
+ # Corresponds to the JSON property `id`
10680
+ # @return [String]
10681
+ attr_accessor :id
10682
+
10683
+ # A list of Future reservation resources.
10684
+ # Corresponds to the JSON property `items`
10685
+ # @return [Hash<String,Google::Apis::ComputeBeta::FutureReservationsScopedList>]
10686
+ attr_accessor :items
10687
+
10688
+ # [Output Only] Type of resource. Always compute#
10689
+ # futureReservationsAggregatedListResponse for future resevation aggregated list
10690
+ # response.
10691
+ # Corresponds to the JSON property `kind`
10692
+ # @return [String]
10693
+ attr_accessor :kind
10694
+
10695
+ # [Output Only] This token allows you to get the next page of results for list
10696
+ # requests. If the number of results is larger than maxResults, use the
10697
+ # nextPageToken as a value for the query parameter pageToken in the next list
10698
+ # request. Subsequent list requests will have their own nextPageToken to
10699
+ # continue paging through the results.
10700
+ # Corresponds to the JSON property `nextPageToken`
10701
+ # @return [String]
10702
+ attr_accessor :next_page_token
10703
+
10704
+ # [Output Only] Server-defined URL for this resource.
10705
+ # Corresponds to the JSON property `selfLink`
10706
+ # @return [String]
10707
+ attr_accessor :self_link
10708
+
10709
+ # [Output Only] Unreachable resources.
10710
+ # Corresponds to the JSON property `unreachables`
10711
+ # @return [Array<String>]
10712
+ attr_accessor :unreachables
10713
+
10714
+ # [Output Only] Informational warning message.
10715
+ # Corresponds to the JSON property `warning`
10716
+ # @return [Google::Apis::ComputeBeta::FutureReservationsAggregatedListResponse::Warning]
10717
+ attr_accessor :warning
10718
+
10719
+ def initialize(**args)
10720
+ update!(**args)
10721
+ end
10722
+
10723
+ # Update properties of this object
10724
+ def update!(**args)
10725
+ @etag = args[:etag] if args.key?(:etag)
10726
+ @id = args[:id] if args.key?(:id)
10727
+ @items = args[:items] if args.key?(:items)
10728
+ @kind = args[:kind] if args.key?(:kind)
10729
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
10730
+ @self_link = args[:self_link] if args.key?(:self_link)
10731
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
10732
+ @warning = args[:warning] if args.key?(:warning)
10733
+ end
10734
+
10735
+ # [Output Only] Informational warning message.
10736
+ class Warning
10737
+ include Google::Apis::Core::Hashable
10738
+
10739
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
10740
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
10741
+ # Corresponds to the JSON property `code`
10742
+ # @return [String]
10743
+ attr_accessor :code
10744
+
10745
+ # [Output Only] Metadata about this warning in key: value format. For example: "
10746
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
10747
+ # Corresponds to the JSON property `data`
10748
+ # @return [Array<Google::Apis::ComputeBeta::FutureReservationsAggregatedListResponse::Warning::Datum>]
10749
+ attr_accessor :data
10750
+
10751
+ # [Output Only] A human-readable description of the warning code.
10752
+ # Corresponds to the JSON property `message`
10753
+ # @return [String]
10754
+ attr_accessor :message
10755
+
10756
+ def initialize(**args)
10757
+ update!(**args)
10758
+ end
10759
+
10760
+ # Update properties of this object
10761
+ def update!(**args)
10762
+ @code = args[:code] if args.key?(:code)
10763
+ @data = args[:data] if args.key?(:data)
10764
+ @message = args[:message] if args.key?(:message)
10765
+ end
10766
+
10767
+ #
10768
+ class Datum
10769
+ include Google::Apis::Core::Hashable
10770
+
10771
+ # [Output Only] A key that provides more detail on the warning being returned.
10772
+ # For example, for warnings where there are no results in a list request for a
10773
+ # particular zone, this key might be scope and the key value might be the zone
10774
+ # name. Other examples might be a key indicating a deprecated resource and a
10775
+ # suggested replacement, or a warning about invalid network settings (for
10776
+ # example, if an instance attempts to perform IP forwarding but is not enabled
10777
+ # for IP forwarding).
10778
+ # Corresponds to the JSON property `key`
10779
+ # @return [String]
10780
+ attr_accessor :key
10781
+
10782
+ # [Output Only] A warning data value corresponding to the key.
10783
+ # Corresponds to the JSON property `value`
10784
+ # @return [String]
10785
+ attr_accessor :value
10786
+
10787
+ def initialize(**args)
10788
+ update!(**args)
10789
+ end
10790
+
10791
+ # Update properties of this object
10792
+ def update!(**args)
10793
+ @key = args[:key] if args.key?(:key)
10794
+ @value = args[:value] if args.key?(:value)
10795
+ end
10796
+ end
10797
+ end
10798
+ end
10799
+
10800
+ #
10801
+ class FutureReservationsListResponse
10802
+ include Google::Apis::Core::Hashable
10803
+
10804
+ #
10805
+ # Corresponds to the JSON property `etag`
10806
+ # @return [String]
10807
+ attr_accessor :etag
10808
+
10809
+ # [Output Only] The unique identifier for the resource. This identifier is
10810
+ # defined by the server.
10811
+ # Corresponds to the JSON property `id`
10812
+ # @return [String]
10813
+ attr_accessor :id
10814
+
10815
+ # [Output Only] A list of future reservation resources.
10816
+ # Corresponds to the JSON property `items`
10817
+ # @return [Array<Google::Apis::ComputeBeta::FutureReservation>]
10818
+ attr_accessor :items
10819
+
10820
+ # [Output Only] Type of resource.Always compute#FutureReservationsListResponse
10821
+ # for lists of reservations
10822
+ # Corresponds to the JSON property `kind`
10823
+ # @return [String]
10824
+ attr_accessor :kind
10825
+
10826
+ # [Output Only] This token allows you to get the next page of results for list
10827
+ # requests. If the number of results is larger than maxResults, use the
10828
+ # nextPageToken as a value for the query parameter pageToken in the next list
10829
+ # request. Subsequent list requests will have their own nextPageToken to
10830
+ # continue paging through the results.
10831
+ # Corresponds to the JSON property `nextPageToken`
10832
+ # @return [String]
10833
+ attr_accessor :next_page_token
10834
+
10835
+ # [Output Only] Server-defined URL for this resource.
10836
+ # Corresponds to the JSON property `selfLink`
10837
+ # @return [String]
10838
+ attr_accessor :self_link
10839
+
10840
+ # [Output Only] Unreachable resources.
10841
+ # Corresponds to the JSON property `unreachables`
10842
+ # @return [Array<String>]
10843
+ attr_accessor :unreachables
10844
+
10845
+ # [Output Only] Informational warning message.
10846
+ # Corresponds to the JSON property `warning`
10847
+ # @return [Google::Apis::ComputeBeta::FutureReservationsListResponse::Warning]
9947
10848
  attr_accessor :warning
9948
10849
 
9949
10850
  def initialize(**args)
@@ -9952,6 +10853,7 @@ module Google
9952
10853
 
9953
10854
  # Update properties of this object
9954
10855
  def update!(**args)
10856
+ @etag = args[:etag] if args.key?(:etag)
9955
10857
  @id = args[:id] if args.key?(:id)
9956
10858
  @items = args[:items] if args.key?(:items)
9957
10859
  @kind = args[:kind] if args.key?(:kind)
@@ -9974,7 +10876,7 @@ module Google
9974
10876
  # [Output Only] Metadata about this warning in key: value format. For example: "
9975
10877
  # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
9976
10878
  # Corresponds to the JSON property `data`
9977
- # @return [Array<Google::Apis::ComputeBeta::ForwardingRuleAggregatedList::Warning::Datum>]
10879
+ # @return [Array<Google::Apis::ComputeBeta::FutureReservationsListResponse::Warning::Datum>]
9978
10880
  attr_accessor :data
9979
10881
 
9980
10882
  # [Output Only] A human-readable description of the warning code.
@@ -10026,191 +10928,19 @@ module Google
10026
10928
  end
10027
10929
  end
10028
10930
 
10029
- # Contains a list of ForwardingRule resources.
10030
- class ForwardingRuleList
10031
- include Google::Apis::Core::Hashable
10032
-
10033
- # [Output Only] Unique identifier for the resource; defined by the server.
10034
- # Corresponds to the JSON property `id`
10035
- # @return [String]
10036
- attr_accessor :id
10037
-
10038
- # A list of ForwardingRule resources.
10039
- # Corresponds to the JSON property `items`
10040
- # @return [Array<Google::Apis::ComputeBeta::ForwardingRule>]
10041
- attr_accessor :items
10042
-
10043
- # Type of resource.
10044
- # Corresponds to the JSON property `kind`
10045
- # @return [String]
10046
- attr_accessor :kind
10047
-
10048
- # [Output Only] This token allows you to get the next page of results for list
10049
- # requests. If the number of results is larger than maxResults, use the
10050
- # nextPageToken as a value for the query parameter pageToken in the next list
10051
- # request. Subsequent list requests will have their own nextPageToken to
10052
- # continue paging through the results.
10053
- # Corresponds to the JSON property `nextPageToken`
10054
- # @return [String]
10055
- attr_accessor :next_page_token
10056
-
10057
- # [Output Only] Server-defined URL for this resource.
10058
- # Corresponds to the JSON property `selfLink`
10059
- # @return [String]
10060
- attr_accessor :self_link
10061
-
10062
- # [Output Only] Informational warning message.
10063
- # Corresponds to the JSON property `warning`
10064
- # @return [Google::Apis::ComputeBeta::ForwardingRuleList::Warning]
10065
- attr_accessor :warning
10066
-
10067
- def initialize(**args)
10068
- update!(**args)
10069
- end
10070
-
10071
- # Update properties of this object
10072
- def update!(**args)
10073
- @id = args[:id] if args.key?(:id)
10074
- @items = args[:items] if args.key?(:items)
10075
- @kind = args[:kind] if args.key?(:kind)
10076
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
10077
- @self_link = args[:self_link] if args.key?(:self_link)
10078
- @warning = args[:warning] if args.key?(:warning)
10079
- end
10080
-
10081
- # [Output Only] Informational warning message.
10082
- class Warning
10083
- include Google::Apis::Core::Hashable
10084
-
10085
- # [Output Only] A warning code, if applicable. For example, Compute Engine
10086
- # returns NO_RESULTS_ON_PAGE if there are no results in the response.
10087
- # Corresponds to the JSON property `code`
10088
- # @return [String]
10089
- attr_accessor :code
10090
-
10091
- # [Output Only] Metadata about this warning in key: value format. For example: "
10092
- # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
10093
- # Corresponds to the JSON property `data`
10094
- # @return [Array<Google::Apis::ComputeBeta::ForwardingRuleList::Warning::Datum>]
10095
- attr_accessor :data
10096
-
10097
- # [Output Only] A human-readable description of the warning code.
10098
- # Corresponds to the JSON property `message`
10099
- # @return [String]
10100
- attr_accessor :message
10101
-
10102
- def initialize(**args)
10103
- update!(**args)
10104
- end
10105
-
10106
- # Update properties of this object
10107
- def update!(**args)
10108
- @code = args[:code] if args.key?(:code)
10109
- @data = args[:data] if args.key?(:data)
10110
- @message = args[:message] if args.key?(:message)
10111
- end
10112
-
10113
- #
10114
- class Datum
10115
- include Google::Apis::Core::Hashable
10116
-
10117
- # [Output Only] A key that provides more detail on the warning being returned.
10118
- # For example, for warnings where there are no results in a list request for a
10119
- # particular zone, this key might be scope and the key value might be the zone
10120
- # name. Other examples might be a key indicating a deprecated resource and a
10121
- # suggested replacement, or a warning about invalid network settings (for
10122
- # example, if an instance attempts to perform IP forwarding but is not enabled
10123
- # for IP forwarding).
10124
- # Corresponds to the JSON property `key`
10125
- # @return [String]
10126
- attr_accessor :key
10127
-
10128
- # [Output Only] A warning data value corresponding to the key.
10129
- # Corresponds to the JSON property `value`
10130
- # @return [String]
10131
- attr_accessor :value
10132
-
10133
- def initialize(**args)
10134
- update!(**args)
10135
- end
10136
-
10137
- # Update properties of this object
10138
- def update!(**args)
10139
- @key = args[:key] if args.key?(:key)
10140
- @value = args[:value] if args.key?(:value)
10141
- end
10142
- end
10143
- end
10144
- end
10145
-
10146
- #
10147
- class ForwardingRuleReference
10148
- include Google::Apis::Core::Hashable
10149
-
10150
- #
10151
- # Corresponds to the JSON property `forwardingRule`
10152
- # @return [String]
10153
- attr_accessor :forwarding_rule
10154
-
10155
- def initialize(**args)
10156
- update!(**args)
10157
- end
10158
-
10159
- # Update properties of this object
10160
- def update!(**args)
10161
- @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
10162
- end
10163
- end
10164
-
10165
- # Describes the auto-registration of the Forwarding Rule to Service Directory.
10166
- # The region and project of the Service Directory resource generated from this
10167
- # registration will be the same as this Forwarding Rule.
10168
- class ForwardingRuleServiceDirectoryRegistration
10169
- include Google::Apis::Core::Hashable
10170
-
10171
- # Service Directory namespace to register the forwarding rule under.
10172
- # Corresponds to the JSON property `namespace`
10173
- # @return [String]
10174
- attr_accessor :namespace
10175
-
10176
- # Service Directory service to register the forwarding rule under.
10177
- # Corresponds to the JSON property `service`
10178
- # @return [String]
10179
- attr_accessor :service
10180
-
10181
- # [Optional] Service Directory region to register this global forwarding rule
10182
- # under. Default to "us-central1". Only used for PSC for Google APIs. All PSC
10183
- # for Google APIs Forwarding Rules on the same network should use the same
10184
- # Service Directory region.
10185
- # Corresponds to the JSON property `serviceDirectoryRegion`
10186
- # @return [String]
10187
- attr_accessor :service_directory_region
10188
-
10189
- def initialize(**args)
10190
- update!(**args)
10191
- end
10192
-
10193
- # Update properties of this object
10194
- def update!(**args)
10195
- @namespace = args[:namespace] if args.key?(:namespace)
10196
- @service = args[:service] if args.key?(:service)
10197
- @service_directory_region = args[:service_directory_region] if args.key?(:service_directory_region)
10198
- end
10199
- end
10200
-
10201
10931
  #
10202
- class ForwardingRulesScopedList
10932
+ class FutureReservationsScopedList
10203
10933
  include Google::Apis::Core::Hashable
10204
10934
 
10205
- # A list of forwarding rules contained in this scope.
10206
- # Corresponds to the JSON property `forwardingRules`
10207
- # @return [Array<Google::Apis::ComputeBeta::ForwardingRule>]
10208
- attr_accessor :forwarding_rules
10935
+ # A list of future reservations contained in this scope.
10936
+ # Corresponds to the JSON property `futureReservations`
10937
+ # @return [Array<Google::Apis::ComputeBeta::FutureReservation>]
10938
+ attr_accessor :future_reservations
10209
10939
 
10210
- # Informational warning which replaces the list of forwarding rules when the
10940
+ # Informational warning which replaces the list of future reservations when the
10211
10941
  # list is empty.
10212
10942
  # Corresponds to the JSON property `warning`
10213
- # @return [Google::Apis::ComputeBeta::ForwardingRulesScopedList::Warning]
10943
+ # @return [Google::Apis::ComputeBeta::FutureReservationsScopedList::Warning]
10214
10944
  attr_accessor :warning
10215
10945
 
10216
10946
  def initialize(**args)
@@ -10219,11 +10949,11 @@ module Google
10219
10949
 
10220
10950
  # Update properties of this object
10221
10951
  def update!(**args)
10222
- @forwarding_rules = args[:forwarding_rules] if args.key?(:forwarding_rules)
10952
+ @future_reservations = args[:future_reservations] if args.key?(:future_reservations)
10223
10953
  @warning = args[:warning] if args.key?(:warning)
10224
10954
  end
10225
10955
 
10226
- # Informational warning which replaces the list of forwarding rules when the
10956
+ # Informational warning which replaces the list of future reservations when the
10227
10957
  # list is empty.
10228
10958
  class Warning
10229
10959
  include Google::Apis::Core::Hashable
@@ -10237,7 +10967,7 @@ module Google
10237
10967
  # [Output Only] Metadata about this warning in key: value format. For example: "
10238
10968
  # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
10239
10969
  # Corresponds to the JSON property `data`
10240
- # @return [Array<Google::Apis::ComputeBeta::ForwardingRulesScopedList::Warning::Datum>]
10970
+ # @return [Array<Google::Apis::ComputeBeta::FutureReservationsScopedList::Warning::Datum>]
10241
10971
  attr_accessor :data
10242
10972
 
10243
10973
  # [Output Only] A human-readable description of the warning code.
@@ -10445,22 +11175,22 @@ module Google
10445
11175
  # evaluates to `true`. A condition can add constraints based on attributes of
10446
11176
  # the request, the resource, or both. To learn which resources support
10447
11177
  # conditions in their IAM policies, see the [IAM documentation](https://cloud.
10448
- # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
11178
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
10449
11179
  # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
10450
11180
  # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
10451
11181
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
10452
11182
  # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
10453
11183
  # ], "condition": ` "title": "expirable access", "description": "Does not grant
10454
11184
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
10455
- # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
10456
- # bindings: - members: - user:mike@example.com - group:admins@example.com -
10457
- # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
10458
- # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
10459
- # com role: roles/resourcemanager.organizationViewer condition: title: expirable
10460
- # access description: Does not grant access after Sep 2020 expression: request.
10461
- # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
10462
- # a description of IAM and its features, see the [IAM documentation](https://
10463
- # cloud.google.com/iam/docs/).
11185
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
11186
+ # example:** ``` bindings: - members: - user:mike@example.com - group:admins@
11187
+ # example.com - domain:google.com - serviceAccount:my-project-id@appspot.
11188
+ # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
11189
+ # user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
11190
+ # title: expirable access description: Does not grant access after Sep 2020
11191
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
11192
+ # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
11193
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
10464
11194
  # Corresponds to the JSON property `policy`
10465
11195
  # @return [Google::Apis::ComputeBeta::Policy]
10466
11196
  attr_accessor :policy
@@ -10538,22 +11268,22 @@ module Google
10538
11268
  # evaluates to `true`. A condition can add constraints based on attributes of
10539
11269
  # the request, the resource, or both. To learn which resources support
10540
11270
  # conditions in their IAM policies, see the [IAM documentation](https://cloud.
10541
- # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
11271
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
10542
11272
  # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
10543
11273
  # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
10544
11274
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
10545
11275
  # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
10546
11276
  # ], "condition": ` "title": "expirable access", "description": "Does not grant
10547
11277
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
10548
- # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
10549
- # bindings: - members: - user:mike@example.com - group:admins@example.com -
10550
- # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
10551
- # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
10552
- # com role: roles/resourcemanager.organizationViewer condition: title: expirable
10553
- # access description: Does not grant access after Sep 2020 expression: request.
10554
- # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
10555
- # a description of IAM and its features, see the [IAM documentation](https://
10556
- # cloud.google.com/iam/docs/).
11278
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
11279
+ # example:** ``` bindings: - members: - user:mike@example.com - group:admins@
11280
+ # example.com - domain:google.com - serviceAccount:my-project-id@appspot.
11281
+ # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
11282
+ # user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
11283
+ # title: expirable access description: Does not grant access after Sep 2020
11284
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
11285
+ # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
11286
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
10557
11287
  # Corresponds to the JSON property `policy`
10558
11288
  # @return [Google::Apis::ComputeBeta::Policy]
10559
11289
  attr_accessor :policy
@@ -15350,11 +16080,7 @@ module Google
15350
16080
  # @return [String]
15351
16081
  attr_accessor :state
15352
16082
 
15353
- # [Output only] Status of the request. The Status message is aligned with
15354
- # QueuedResource.status. ResizeRequest.queuing_policy contains the queuing
15355
- # policy as provided by the user; it could have either valid_until_time or
15356
- # valid_until_duration. ResizeRequest.status.queuing_policy always contains
15357
- # absolute time as calculated by the server when the request is queued.
16083
+ # [Output only] Status of the request.
15358
16084
  # Corresponds to the JSON property `status`
15359
16085
  # @return [Google::Apis::ComputeBeta::InstanceGroupManagerResizeRequestStatus]
15360
16086
  attr_accessor :status
@@ -17406,6 +18132,82 @@ module Google
17406
18132
  end
17407
18133
  end
17408
18134
 
18135
+ # Represents a Instance Settings resource. You can use instance settings to
18136
+ # configure default settings for Compute Engine VM instances. For example, you
18137
+ # can use it to configure default machine type of Compute Engine VM instances.
18138
+ class InstanceSettings
18139
+ include Google::Apis::Core::Hashable
18140
+
18141
+ # Specifies a fingerprint for instance settings, which is essentially a hash of
18142
+ # the instance settings resource's contents and used for optimistic locking. The
18143
+ # fingerprint is initially generated by Compute Engine and changes after every
18144
+ # request to modify or update the instance settings resource. You must always
18145
+ # provide an up-to-date fingerprint hash in order to update or change the
18146
+ # resource, otherwise the request will fail with error 412 conditionNotMet. To
18147
+ # see the latest fingerprint, make a get() request to retrieve the resource.
18148
+ # Corresponds to the JSON property `fingerprint`
18149
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
18150
+ # @return [String]
18151
+ attr_accessor :fingerprint
18152
+
18153
+ # [Output Only] Type of the resource. Always compute#instance_settings for
18154
+ # instance settings.
18155
+ # Corresponds to the JSON property `kind`
18156
+ # @return [String]
18157
+ attr_accessor :kind
18158
+
18159
+ # The metadata key/value pairs assigned to all the instances in the
18160
+ # corresponding scope.
18161
+ # Corresponds to the JSON property `metadata`
18162
+ # @return [Google::Apis::ComputeBeta::InstanceSettingsMetadata]
18163
+ attr_accessor :metadata
18164
+
18165
+ # [Output Only] URL of the zone where the resource resides You must specify this
18166
+ # field as part of the HTTP request URL. It is not settable as a field in the
18167
+ # request body.
18168
+ # Corresponds to the JSON property `zone`
18169
+ # @return [String]
18170
+ attr_accessor :zone
18171
+
18172
+ def initialize(**args)
18173
+ update!(**args)
18174
+ end
18175
+
18176
+ # Update properties of this object
18177
+ def update!(**args)
18178
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
18179
+ @kind = args[:kind] if args.key?(:kind)
18180
+ @metadata = args[:metadata] if args.key?(:metadata)
18181
+ @zone = args[:zone] if args.key?(:zone)
18182
+ end
18183
+ end
18184
+
18185
+ #
18186
+ class InstanceSettingsMetadata
18187
+ include Google::Apis::Core::Hashable
18188
+
18189
+ # A metadata key/value items map. The total size of all keys and values must be
18190
+ # less than 512KB.
18191
+ # Corresponds to the JSON property `items`
18192
+ # @return [Hash<String,String>]
18193
+ attr_accessor :items
18194
+
18195
+ # [Output Only] Type of the resource. Always compute#metadata for metadata.
18196
+ # Corresponds to the JSON property `kind`
18197
+ # @return [String]
18198
+ attr_accessor :kind
18199
+
18200
+ def initialize(**args)
18201
+ update!(**args)
18202
+ end
18203
+
18204
+ # Update properties of this object
18205
+ def update!(**args)
18206
+ @items = args[:items] if args.key?(:items)
18207
+ @kind = args[:kind] if args.key?(:kind)
18208
+ end
18209
+ end
18210
+
17409
18211
  # Represents an Instance Template resource. You can use instance templates to
17410
18212
  # create VM instances and managed instance groups. For more information, read
17411
18213
  # Instance Templates.
@@ -19329,9 +20131,8 @@ module Google
19329
20131
  attr_accessor :operational_status
19330
20132
 
19331
20133
  # [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present
19332
- # for DEDICATED]. The opaque identifier of an PARTNER attachment used to
19333
- # initiate provisioning with a selected partner. Of the form "XXXXX/region/
19334
- # domain"
20134
+ # for DEDICATED]. The opaque identifier of a PARTNER attachment used to initiate
20135
+ # provisioning with a selected partner. Of the form "XXXXX/region/domain"
19335
20136
  # Corresponds to the JSON property `pairingKey`
19336
20137
  # @return [String]
19337
20138
  attr_accessor :pairing_key
@@ -29468,22 +30269,22 @@ module Google
29468
30269
  # evaluates to `true`. A condition can add constraints based on attributes of
29469
30270
  # the request, the resource, or both. To learn which resources support
29470
30271
  # conditions in their IAM policies, see the [IAM documentation](https://cloud.
29471
- # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
30272
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
29472
30273
  # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
29473
30274
  # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
29474
30275
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
29475
30276
  # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
29476
30277
  # ], "condition": ` "title": "expirable access", "description": "Does not grant
29477
30278
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
29478
- # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
29479
- # bindings: - members: - user:mike@example.com - group:admins@example.com -
29480
- # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
29481
- # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
29482
- # com role: roles/resourcemanager.organizationViewer condition: title: expirable
29483
- # access description: Does not grant access after Sep 2020 expression: request.
29484
- # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
29485
- # a description of IAM and its features, see the [IAM documentation](https://
29486
- # cloud.google.com/iam/docs/).
30279
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
30280
+ # example:** ``` bindings: - members: - user:mike@example.com - group:admins@
30281
+ # example.com - domain:google.com - serviceAccount:my-project-id@appspot.
30282
+ # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
30283
+ # user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
30284
+ # title: expirable access description: Does not grant access after Sep 2020
30285
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
30286
+ # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
30287
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
29487
30288
  class Policy
29488
30289
  include Google::Apis::Core::Hashable
29489
30290
 
@@ -32481,22 +33282,22 @@ module Google
32481
33282
  # evaluates to `true`. A condition can add constraints based on attributes of
32482
33283
  # the request, the resource, or both. To learn which resources support
32483
33284
  # conditions in their IAM policies, see the [IAM documentation](https://cloud.
32484
- # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
33285
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
32485
33286
  # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
32486
33287
  # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
32487
33288
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
32488
33289
  # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
32489
33290
  # ], "condition": ` "title": "expirable access", "description": "Does not grant
32490
33291
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
32491
- # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
32492
- # bindings: - members: - user:mike@example.com - group:admins@example.com -
32493
- # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
32494
- # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
32495
- # com role: roles/resourcemanager.organizationViewer condition: title: expirable
32496
- # access description: Does not grant access after Sep 2020 expression: request.
32497
- # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
32498
- # a description of IAM and its features, see the [IAM documentation](https://
32499
- # cloud.google.com/iam/docs/).
33292
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
33293
+ # example:** ``` bindings: - members: - user:mike@example.com - group:admins@
33294
+ # example.com - domain:google.com - serviceAccount:my-project-id@appspot.
33295
+ # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
33296
+ # user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
33297
+ # title: expirable access description: Does not grant access after Sep 2020
33298
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
33299
+ # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
33300
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
32500
33301
  # Corresponds to the JSON property `policy`
32501
33302
  # @return [Google::Apis::ComputeBeta::Policy]
32502
33303
  attr_accessor :policy
@@ -32609,6 +33410,20 @@ module Google
32609
33410
  # @return [String]
32610
33411
  attr_accessor :creation_timestamp
32611
33412
 
33413
+ # A Duration represents a fixed-length span of time represented as a count of
33414
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
33415
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
33416
+ # 000 years.
33417
+ # Corresponds to the JSON property `deleteAfterDuration`
33418
+ # @return [Google::Apis::ComputeBeta::Duration]
33419
+ attr_accessor :delete_after_duration
33420
+
33421
+ # Absolute time in future when the reservation will be auto-deleted by GCE.
33422
+ # Timestamp is represented in RFC3339 text format.
33423
+ # Corresponds to the JSON property `deleteAtTime`
33424
+ # @return [String]
33425
+ attr_accessor :delete_at_time
33426
+
32612
33427
  # An optional description of this resource. Provide this property when you
32613
33428
  # create the resource.
32614
33429
  # Corresponds to the JSON property `description`
@@ -32699,6 +33514,8 @@ module Google
32699
33514
  def update!(**args)
32700
33515
  @commitment = args[:commitment] if args.key?(:commitment)
32701
33516
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
33517
+ @delete_after_duration = args[:delete_after_duration] if args.key?(:delete_after_duration)
33518
+ @delete_at_time = args[:delete_at_time] if args.key?(:delete_at_time)
32702
33519
  @description = args[:description] if args.key?(:description)
32703
33520
  @id = args[:id] if args.key?(:id)
32704
33521
  @kind = args[:kind] if args.key?(:kind)
@@ -34136,7 +34953,9 @@ module Google
34136
34953
  attr_accessor :description
34137
34954
 
34138
34955
  # The destination range of outgoing packets that this route applies to. Both
34139
- # IPv4 and IPv6 are supported.
34956
+ # IPv4 and IPv6 are supported. Must specify an IPv4 range (e.g. 192.0.2.0/24) or
34957
+ # an IPv6 range in RFC 4291 format (e.g. 2001:db8::/32). IPv6 range will be
34958
+ # displayed using RFC 5952 compressed format.
34140
34959
  # Corresponds to the JSON property `destRange`
34141
34960
  # @return [String]
34142
34961
  attr_accessor :dest_range
@@ -34204,7 +35023,11 @@ module Google
34204
35023
  attr_accessor :next_hop_interconnect_attachment
34205
35024
 
34206
35025
  # The network IP address of an instance that should handle matching packets.
34207
- # Only IPv4 is supported.
35026
+ # Both IPv6 address and IPv4 addresses are supported. Must specify an IPv4
35027
+ # address in dot-decimal notation (e.g. 192.0.2.99) or an IPv6 address in RFC
35028
+ # 4291 format (e.g. 2001:db8::2d9:51:0:0 or 2001:db8:0:0:2d9:51:0:0). IPv6
35029
+ # addresses will be displayed using RFC 5952 compressed format (e.g. 2001:db8::
35030
+ # 2d9:51:0:0). Should never be an IPv4-mapped IPv6 address.
34208
35031
  # Corresponds to the JSON property `nextHopIp`
34209
35032
  # @return [String]
34210
35033
  attr_accessor :next_hop_ip
@@ -35310,8 +36133,9 @@ module Google
35310
36133
  class RouterNat
35311
36134
  include Google::Apis::Core::Hashable
35312
36135
 
35313
- # The network tier to use when automatically reserving IP addresses. Must be one
35314
- # of: PREMIUM, STANDARD. If not specified, PREMIUM tier will be used.
36136
+ # The network tier to use when automatically reserving NAT IP addresses. Must be
36137
+ # one of: PREMIUM, STANDARD. If not specified, then the current project-level
36138
+ # default tier is used.
35315
36139
  # Corresponds to the JSON property `autoNetworkTier`
35316
36140
  # @return [String]
35317
36141
  attr_accessor :auto_network_tier
@@ -38559,6 +39383,14 @@ module Google
38559
39383
  # @return [String]
38560
39384
  attr_accessor :target_service
38561
39385
 
39386
+ # Use to configure this PSC connection in tunneling mode. In tunneling mode
39387
+ # traffic from consumer to producer will be encapsulated as it crosses the VPC
39388
+ # boundary and traffic from producer to consumer will be decapsulated in the
39389
+ # same manner.
39390
+ # Corresponds to the JSON property `tunnelingConfig`
39391
+ # @return [Google::Apis::ComputeBeta::ServiceAttachmentTunnelingConfig]
39392
+ attr_accessor :tunneling_config
39393
+
38562
39394
  def initialize(**args)
38563
39395
  update!(**args)
38564
39396
  end
@@ -38584,6 +39416,7 @@ module Google
38584
39416
  @region = args[:region] if args.key?(:region)
38585
39417
  @self_link = args[:self_link] if args.key?(:self_link)
38586
39418
  @target_service = args[:target_service] if args.key?(:target_service)
39419
+ @tunneling_config = args[:tunneling_config] if args.key?(:tunneling_config)
38587
39420
  end
38588
39421
  end
38589
39422
 
@@ -38896,6 +39729,36 @@ module Google
38896
39729
  end
38897
39730
  end
38898
39731
 
39732
+ # Use to configure this PSC connection in tunneling mode. In tunneling mode
39733
+ # traffic from consumer to producer will be encapsulated as it crosses the VPC
39734
+ # boundary and traffic from producer to consumer will be decapsulated in the
39735
+ # same manner.
39736
+ class ServiceAttachmentTunnelingConfig
39737
+ include Google::Apis::Core::Hashable
39738
+
39739
+ # Specify the encapsulation protocol and what metadata to include in incoming
39740
+ # encapsulated packet headers.
39741
+ # Corresponds to the JSON property `encapsulationProfile`
39742
+ # @return [String]
39743
+ attr_accessor :encapsulation_profile
39744
+
39745
+ # How this Service Attachment will treat traffic sent to the tunnel_ip, destined
39746
+ # for the consumer network.
39747
+ # Corresponds to the JSON property `routingMode`
39748
+ # @return [String]
39749
+ attr_accessor :routing_mode
39750
+
39751
+ def initialize(**args)
39752
+ update!(**args)
39753
+ end
39754
+
39755
+ # Update properties of this object
39756
+ def update!(**args)
39757
+ @encapsulation_profile = args[:encapsulation_profile] if args.key?(:encapsulation_profile)
39758
+ @routing_mode = args[:routing_mode] if args.key?(:routing_mode)
39759
+ end
39760
+ end
39761
+
38899
39762
  #
38900
39763
  class ServiceAttachmentsScopedList
38901
39764
  include Google::Apis::Core::Hashable
@@ -47770,12 +48633,12 @@ module Google
47770
48633
  # @return [Fixnum]
47771
48634
  attr_accessor :peer_external_gateway_interface
47772
48635
 
47773
- # URL of the peer side HA GCP VPN gateway to which this VPN tunnel is connected.
48636
+ # URL of the peer side HA VPN gateway to which this VPN tunnel is connected.
47774
48637
  # Provided by the client when the VPN tunnel is created. This field can be used
47775
48638
  # when creating highly available VPN from VPC network to VPC network, the field
47776
48639
  # is exclusive with the field peerExternalGateway. If provided, the VPN tunnel
47777
- # will automatically use the same vpnGatewayInterface ID in the peer GCP VPN
47778
- # gateway.
48640
+ # will automatically use the same vpnGatewayInterface ID in the peer Google
48641
+ # Cloud VPN gateway.
47779
48642
  # Corresponds to the JSON property `peerGcpGateway`
47780
48643
  # @return [String]
47781
48644
  attr_accessor :peer_gcp_gateway
@@ -48735,22 +49598,22 @@ module Google
48735
49598
  # evaluates to `true`. A condition can add constraints based on attributes of
48736
49599
  # the request, the resource, or both. To learn which resources support
48737
49600
  # conditions in their IAM policies, see the [IAM documentation](https://cloud.
48738
- # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
49601
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ``` ` "
48739
49602
  # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
48740
49603
  # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
48741
49604
  # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
48742
49605
  # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
48743
49606
  # ], "condition": ` "title": "expirable access", "description": "Does not grant
48744
49607
  # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
48745
- # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
48746
- # bindings: - members: - user:mike@example.com - group:admins@example.com -
48747
- # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
48748
- # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
48749
- # com role: roles/resourcemanager.organizationViewer condition: title: expirable
48750
- # access description: Does not grant access after Sep 2020 expression: request.
48751
- # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
48752
- # a description of IAM and its features, see the [IAM documentation](https://
48753
- # cloud.google.com/iam/docs/).
49608
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` ``` **YAML
49609
+ # example:** ``` bindings: - members: - user:mike@example.com - group:admins@
49610
+ # example.com - domain:google.com - serviceAccount:my-project-id@appspot.
49611
+ # gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: -
49612
+ # user:eve@example.com role: roles/resourcemanager.organizationViewer condition:
49613
+ # title: expirable access description: Does not grant access after Sep 2020
49614
+ # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') etag:
49615
+ # BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the
49616
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
48754
49617
  # Corresponds to the JSON property `policy`
48755
49618
  # @return [Google::Apis::ComputeBeta::Policy]
48756
49619
  attr_accessor :policy