google-apis-compute_beta 0.114.0 → 0.116.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.
@@ -3961,7 +3961,8 @@ module Google
3961
3961
  # be set for Internal Passthrough Network Load Balancers when the haPolicy is
3962
3962
  # enabled, and for External Passthrough Network Load Balancers when the haPolicy
3963
3963
  # fastIpMove is enabled. This field can only be specified when the load
3964
- # balancing scheme is set to INTERNAL.
3964
+ # balancing scheme is set to INTERNAL, or when the load balancing scheme is set
3965
+ # to EXTERNAL and haPolicy fastIpMove is enabled.
3965
3966
  # Corresponds to the JSON property `network`
3966
3967
  # @return [String]
3967
3968
  attr_accessor :network
@@ -4748,7 +4749,7 @@ module Google
4748
4749
  # backend service must set the network field, and all NEGs must belong to that
4749
4750
  # network. However, individual NEGs can belong to different subnetworks of that
4750
4751
  # network. - The maximum number of network endpoints across all backends of a
4751
- # backend service with fastIPMove is 64. - The maximum number of backend
4752
+ # backend service with fastIPMove is 32. - The maximum number of backend
4752
4753
  # services with fastIPMove that can have the same network endpoint attached to
4753
4754
  # one of its backends is 64. - The maximum number of backend services with
4754
4755
  # fastIPMove in a VPC in a region is 64. - The network endpoints that are
@@ -10651,6 +10652,12 @@ module Google
10651
10652
  # @return [String]
10652
10653
  attr_accessor :parent
10653
10654
 
10655
+ # The type of the firewall policy. This field can be either VPC_POLICY or
10656
+ # RDMA_ROCE_POLICY. Note: if not specified then VPC_POLICY will be used.
10657
+ # Corresponds to the JSON property `policyType`
10658
+ # @return [String]
10659
+ attr_accessor :policy_type
10660
+
10654
10661
  # [Output Only] URL of the region where the regional firewall policy resides.
10655
10662
  # This field is not applicable to global firewall policies. You must specify
10656
10663
  # this field as part of the HTTP request URL. It is not settable as a field in
@@ -10712,6 +10719,7 @@ module Google
10712
10719
  @name = args[:name] if args.key?(:name)
10713
10720
  @packet_mirroring_rules = args[:packet_mirroring_rules] if args.key?(:packet_mirroring_rules)
10714
10721
  @parent = args[:parent] if args.key?(:parent)
10722
+ @policy_type = args[:policy_type] if args.key?(:policy_type)
10715
10723
  @region = args[:region] if args.key?(:region)
10716
10724
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
10717
10725
  @rules = args[:rules] if args.key?(:rules)
@@ -11052,6 +11060,12 @@ module Google
11052
11060
  # @return [String]
11053
11061
  attr_accessor :dest_network_scope
11054
11062
 
11063
+ # Network type of the traffic destination. Allowed values are: - UNSPECIFIED -
11064
+ # INTERNET - NON_INTERNET
11065
+ # Corresponds to the JSON property `destNetworkType`
11066
+ # @return [String]
11067
+ attr_accessor :dest_network_type
11068
+
11055
11069
  # Region codes whose IP addresses will be used to match for destination of
11056
11070
  # traffic. Should be specified as 2 letter country code defined as per ISO 3166
11057
11071
  # alpha-2 country codes. ex."US" Maximum number of dest region codes allowed is
@@ -11093,6 +11107,12 @@ module Google
11093
11107
  # @return [String]
11094
11108
  attr_accessor :src_network_scope
11095
11109
 
11110
+ # Network type of the traffic source. Allowed values are: - UNSPECIFIED -
11111
+ # INTERNET - INTRA_VPC - NON_INTERNET - VPC_NETWORKS
11112
+ # Corresponds to the JSON property `srcNetworkType`
11113
+ # @return [String]
11114
+ attr_accessor :src_network_type
11115
+
11096
11116
  # Networks of the traffic source. It can be either a full or partial url.
11097
11117
  # Corresponds to the JSON property `srcNetworks`
11098
11118
  # @return [Array<String>]
@@ -11129,6 +11149,7 @@ module Google
11129
11149
  @dest_fqdns = args[:dest_fqdns] if args.key?(:dest_fqdns)
11130
11150
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
11131
11151
  @dest_network_scope = args[:dest_network_scope] if args.key?(:dest_network_scope)
11152
+ @dest_network_type = args[:dest_network_type] if args.key?(:dest_network_type)
11132
11153
  @dest_region_codes = args[:dest_region_codes] if args.key?(:dest_region_codes)
11133
11154
  @dest_threat_intelligences = args[:dest_threat_intelligences] if args.key?(:dest_threat_intelligences)
11134
11155
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
@@ -11136,6 +11157,7 @@ module Google
11136
11157
  @src_fqdns = args[:src_fqdns] if args.key?(:src_fqdns)
11137
11158
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
11138
11159
  @src_network_scope = args[:src_network_scope] if args.key?(:src_network_scope)
11160
+ @src_network_type = args[:src_network_type] if args.key?(:src_network_type)
11139
11161
  @src_networks = args[:src_networks] if args.key?(:src_networks)
11140
11162
  @src_region_codes = args[:src_region_codes] if args.key?(:src_region_codes)
11141
11163
  @src_secure_tags = args[:src_secure_tags] if args.key?(:src_secure_tags)
@@ -11628,6 +11650,11 @@ module Google
11628
11650
  # @return [String]
11629
11651
  attr_accessor :self_link
11630
11652
 
11653
+ # [Output Only] Server-defined URL for this resource with the resource id.
11654
+ # Corresponds to the JSON property `selfLinkWithId`
11655
+ # @return [String]
11656
+ attr_accessor :self_link_with_id
11657
+
11631
11658
  # Service Directory resources to register this forwarding rule with. Currently,
11632
11659
  # only supports a single Service Directory resource.
11633
11660
  # Corresponds to the JSON property `serviceDirectoryRegistrations`
@@ -11726,6 +11753,7 @@ module Google
11726
11753
  @psc_connection_status = args[:psc_connection_status] if args.key?(:psc_connection_status)
11727
11754
  @region = args[:region] if args.key?(:region)
11728
11755
  @self_link = args[:self_link] if args.key?(:self_link)
11756
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
11729
11757
  @service_directory_registrations = args[:service_directory_registrations] if args.key?(:service_directory_registrations)
11730
11758
  @service_label = args[:service_label] if args.key?(:service_label)
11731
11759
  @service_name = args[:service_name] if args.key?(:service_name)
@@ -15336,7 +15364,8 @@ module Google
15336
15364
 
15337
15365
  # If false, headerValue is appended to any values that already exist for the
15338
15366
  # header. If true, headerValue is set for the header, discarding any values that
15339
- # were set for that header. The default value is false.
15367
+ # were set for that header. The default value is true, unless a variable is
15368
+ # present in headerValue, in which case the default value is false. .
15340
15369
  # Corresponds to the JSON property `replace`
15341
15370
  # @return [Boolean]
15342
15371
  attr_accessor :replace
@@ -17951,6 +17980,12 @@ module Google
17951
17980
  # @return [Fixnum]
17952
17981
  attr_accessor :target_size
17953
17982
 
17983
+ # The policy that specifies how the MIG creates its VMs to achieve the target
17984
+ # size.
17985
+ # Corresponds to the JSON property `targetSizePolicy`
17986
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerTargetSizePolicy]
17987
+ attr_accessor :target_size_policy
17988
+
17954
17989
  # The target number of stopped instances for this managed instance group. This
17955
17990
  # number changes when you: - Stop instance using the stopInstances method or
17956
17991
  # start instances using the startInstances method. - Manually change the
@@ -18026,6 +18061,7 @@ module Google
18026
18061
  @status = args[:status] if args.key?(:status)
18027
18062
  @target_pools = args[:target_pools] if args.key?(:target_pools)
18028
18063
  @target_size = args[:target_size] if args.key?(:target_size)
18064
+ @target_size_policy = args[:target_size_policy] if args.key?(:target_size_policy)
18029
18065
  @target_stopped_size = args[:target_stopped_size] if args.key?(:target_stopped_size)
18030
18066
  @target_suspended_size = args[:target_suspended_size] if args.key?(:target_suspended_size)
18031
18067
  @update_policy = args[:update_policy] if args.key?(:update_policy)
@@ -18442,6 +18478,11 @@ module Google
18442
18478
  # @return [String]
18443
18479
  attr_accessor :on_failed_health_check
18444
18480
 
18481
+ # Configuration for VM repairs in the MIG.
18482
+ # Corresponds to the JSON property `onRepair`
18483
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerInstanceLifecyclePolicyOnRepair]
18484
+ attr_accessor :on_repair
18485
+
18445
18486
  def initialize(**args)
18446
18487
  update!(**args)
18447
18488
  end
@@ -18451,6 +18492,26 @@ module Google
18451
18492
  @default_action_on_failure = args[:default_action_on_failure] if args.key?(:default_action_on_failure)
18452
18493
  @force_update_on_repair = args[:force_update_on_repair] if args.key?(:force_update_on_repair)
18453
18494
  @on_failed_health_check = args[:on_failed_health_check] if args.key?(:on_failed_health_check)
18495
+ @on_repair = args[:on_repair] if args.key?(:on_repair)
18496
+ end
18497
+ end
18498
+
18499
+ # Configuration for VM repairs in the MIG.
18500
+ class InstanceGroupManagerInstanceLifecyclePolicyOnRepair
18501
+ include Google::Apis::Core::Hashable
18502
+
18503
+ # Specifies whether the MIG can change a VM's zone during a repair.
18504
+ # Corresponds to the JSON property `allowChangingZone`
18505
+ # @return [String]
18506
+ attr_accessor :allow_changing_zone
18507
+
18508
+ def initialize(**args)
18509
+ update!(**args)
18510
+ end
18511
+
18512
+ # Update properties of this object
18513
+ def update!(**args)
18514
+ @allow_changing_zone = args[:allow_changing_zone] if args.key?(:allow_changing_zone)
18454
18515
  end
18455
18516
  end
18456
18517
 
@@ -19173,6 +19234,12 @@ module Google
19173
19234
  # @return [String]
19174
19235
  attr_accessor :autoscaler
19175
19236
 
19237
+ # Bulk instance operation is the creation of VMs in a MIG when the
19238
+ # targetSizePolicy.mode is set to BULK.
19239
+ # Corresponds to the JSON property `bulkInstanceOperation`
19240
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerStatusBulkInstanceOperation]
19241
+ attr_accessor :bulk_instance_operation
19242
+
19176
19243
  # [Output Only] A bit indicating whether the managed instance group is in a
19177
19244
  # stable state. A stable state means that: none of the instances in the managed
19178
19245
  # instance group is currently undergoing any type of change (for example,
@@ -19203,6 +19270,7 @@ module Google
19203
19270
  def update!(**args)
19204
19271
  @all_instances_config = args[:all_instances_config] if args.key?(:all_instances_config)
19205
19272
  @autoscaler = args[:autoscaler] if args.key?(:autoscaler)
19273
+ @bulk_instance_operation = args[:bulk_instance_operation] if args.key?(:bulk_instance_operation)
19206
19274
  @is_stable = args[:is_stable] if args.key?(:is_stable)
19207
19275
  @stateful = args[:stateful] if args.key?(:stateful)
19208
19276
  @version_target = args[:version_target] if args.key?(:version_target)
@@ -19237,6 +19305,168 @@ module Google
19237
19305
  end
19238
19306
  end
19239
19307
 
19308
+ # Bulk instance operation is the creation of VMs in a MIG when the
19309
+ # targetSizePolicy.mode is set to BULK.
19310
+ class InstanceGroupManagerStatusBulkInstanceOperation
19311
+ include Google::Apis::Core::Hashable
19312
+
19313
+ # [Output Only] Informs whether bulk instance operation is in progress.
19314
+ # Corresponds to the JSON property `inProgress`
19315
+ # @return [Boolean]
19316
+ attr_accessor :in_progress
19317
+ alias_method :in_progress?, :in_progress
19318
+
19319
+ # [Output Only] Information from the last progress check of bulk instance
19320
+ # operation.
19321
+ # Corresponds to the JSON property `lastProgressCheck`
19322
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck]
19323
+ attr_accessor :last_progress_check
19324
+
19325
+ def initialize(**args)
19326
+ update!(**args)
19327
+ end
19328
+
19329
+ # Update properties of this object
19330
+ def update!(**args)
19331
+ @in_progress = args[:in_progress] if args.key?(:in_progress)
19332
+ @last_progress_check = args[:last_progress_check] if args.key?(:last_progress_check)
19333
+ end
19334
+ end
19335
+
19336
+ #
19337
+ class InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck
19338
+ include Google::Apis::Core::Hashable
19339
+
19340
+ # [Output Only] Errors encountered during bulk instance operation.
19341
+ # Corresponds to the JSON property `error`
19342
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck::Error]
19343
+ attr_accessor :error
19344
+
19345
+ # [Output Only] Timestamp of the last progress check of bulk instance operation.
19346
+ # Timestamp is in RFC3339 text format.
19347
+ # Corresponds to the JSON property `timestamp`
19348
+ # @return [String]
19349
+ attr_accessor :timestamp
19350
+
19351
+ def initialize(**args)
19352
+ update!(**args)
19353
+ end
19354
+
19355
+ # Update properties of this object
19356
+ def update!(**args)
19357
+ @error = args[:error] if args.key?(:error)
19358
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
19359
+ end
19360
+
19361
+ # [Output Only] Errors encountered during bulk instance operation.
19362
+ class Error
19363
+ include Google::Apis::Core::Hashable
19364
+
19365
+ # [Output Only] The array of errors encountered while processing this operation.
19366
+ # Corresponds to the JSON property `errors`
19367
+ # @return [Array<Google::Apis::ComputeBeta::InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck::Error::Error>]
19368
+ attr_accessor :errors
19369
+
19370
+ def initialize(**args)
19371
+ update!(**args)
19372
+ end
19373
+
19374
+ # Update properties of this object
19375
+ def update!(**args)
19376
+ @errors = args[:errors] if args.key?(:errors)
19377
+ end
19378
+
19379
+ #
19380
+ class Error
19381
+ include Google::Apis::Core::Hashable
19382
+
19383
+ # [Output Only] The error type identifier for this error.
19384
+ # Corresponds to the JSON property `code`
19385
+ # @return [String]
19386
+ attr_accessor :code
19387
+
19388
+ # [Output Only] An optional list of messages that contain the error details.
19389
+ # There is a set of defined message types to use for providing details.The
19390
+ # syntax depends on the error code. For example, QuotaExceededInfo will have
19391
+ # details when the error code is QUOTA_EXCEEDED.
19392
+ # Corresponds to the JSON property `errorDetails`
19393
+ # @return [Array<Google::Apis::ComputeBeta::InstanceGroupManagerStatusBulkInstanceOperationLastProgressCheck::Error::Error::ErrorDetail>]
19394
+ attr_accessor :error_details
19395
+
19396
+ # [Output Only] Indicates the field in the request that caused the error. This
19397
+ # property is optional.
19398
+ # Corresponds to the JSON property `location`
19399
+ # @return [String]
19400
+ attr_accessor :location
19401
+
19402
+ # [Output Only] An optional, human-readable error message.
19403
+ # Corresponds to the JSON property `message`
19404
+ # @return [String]
19405
+ attr_accessor :message
19406
+
19407
+ def initialize(**args)
19408
+ update!(**args)
19409
+ end
19410
+
19411
+ # Update properties of this object
19412
+ def update!(**args)
19413
+ @code = args[:code] if args.key?(:code)
19414
+ @error_details = args[:error_details] if args.key?(:error_details)
19415
+ @location = args[:location] if args.key?(:location)
19416
+ @message = args[:message] if args.key?(:message)
19417
+ end
19418
+
19419
+ #
19420
+ class ErrorDetail
19421
+ include Google::Apis::Core::Hashable
19422
+
19423
+ # Describes the cause of the error with structured details. Example of an error
19424
+ # when contacting the "pubsub.googleapis.com" API when it is not enabled: ` "
19425
+ # reason": "API_DISABLED" "domain": "googleapis.com" "metadata": ` "resource": "
19426
+ # projects/123", "service": "pubsub.googleapis.com" ` ` This response indicates
19427
+ # that the pubsub.googleapis.com API is not enabled. Example of an error that is
19428
+ # returned when attempting to create a Spanner instance in a region that is out
19429
+ # of stock: ` "reason": "STOCKOUT" "domain": "spanner.googleapis.com", "metadata"
19430
+ # : ` "availableRegions": "us-central1,us-east2" ` `
19431
+ # Corresponds to the JSON property `errorInfo`
19432
+ # @return [Google::Apis::ComputeBeta::ErrorInfo]
19433
+ attr_accessor :error_info
19434
+
19435
+ # Provides links to documentation or for performing an out of band action. For
19436
+ # example, if a quota check failed with an error indicating the calling project
19437
+ # hasn't enabled the accessed service, this can contain a URL pointing directly
19438
+ # to the right place in the developer console to flip the bit.
19439
+ # Corresponds to the JSON property `help`
19440
+ # @return [Google::Apis::ComputeBeta::Help]
19441
+ attr_accessor :help
19442
+
19443
+ # Provides a localized error message that is safe to return to the user which
19444
+ # can be attached to an RPC error.
19445
+ # Corresponds to the JSON property `localizedMessage`
19446
+ # @return [Google::Apis::ComputeBeta::LocalizedMessage]
19447
+ attr_accessor :localized_message
19448
+
19449
+ # Additional details for quota exceeded error for resource quota.
19450
+ # Corresponds to the JSON property `quotaInfo`
19451
+ # @return [Google::Apis::ComputeBeta::QuotaExceededInfo]
19452
+ attr_accessor :quota_info
19453
+
19454
+ def initialize(**args)
19455
+ update!(**args)
19456
+ end
19457
+
19458
+ # Update properties of this object
19459
+ def update!(**args)
19460
+ @error_info = args[:error_info] if args.key?(:error_info)
19461
+ @help = args[:help] if args.key?(:help)
19462
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
19463
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
19464
+ end
19465
+ end
19466
+ end
19467
+ end
19468
+ end
19469
+
19240
19470
  #
19241
19471
  class InstanceGroupManagerStatusStateful
19242
19472
  include Google::Apis::Core::Hashable
@@ -19325,6 +19555,26 @@ module Google
19325
19555
  end
19326
19556
  end
19327
19557
 
19558
+ #
19559
+ class InstanceGroupManagerTargetSizePolicy
19560
+ include Google::Apis::Core::Hashable
19561
+
19562
+ # The mode of target size policy based on which the MIG creates its VMs
19563
+ # individually or all at once.
19564
+ # Corresponds to the JSON property `mode`
19565
+ # @return [String]
19566
+ attr_accessor :mode
19567
+
19568
+ def initialize(**args)
19569
+ update!(**args)
19570
+ end
19571
+
19572
+ # Update properties of this object
19573
+ def update!(**args)
19574
+ @mode = args[:mode] if args.key?(:mode)
19575
+ end
19576
+ end
19577
+
19328
19578
  #
19329
19579
  class InstanceGroupManagerUpdatePolicy
19330
19580
  include Google::Apis::Core::Hashable
@@ -30959,6 +31209,12 @@ module Google
30959
31209
  # @return [String]
30960
31210
  attr_accessor :fingerprint
30961
31211
 
31212
+ # Indicate whether igmp query is enabled on the network interface or not. If
31213
+ # enabled, also indicates the version of IGMP supported.
31214
+ # Corresponds to the JSON property `igmpQuery`
31215
+ # @return [String]
31216
+ attr_accessor :igmp_query
31217
+
30962
31218
  # The prefix length of the primary internal IPv6 range.
30963
31219
  # Corresponds to the JSON property `internalIpv6PrefixLength`
30964
31220
  # @return [Fixnum]
@@ -31078,6 +31334,7 @@ module Google
31078
31334
  @access_configs = args[:access_configs] if args.key?(:access_configs)
31079
31335
  @alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges)
31080
31336
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
31337
+ @igmp_query = args[:igmp_query] if args.key?(:igmp_query)
31081
31338
  @internal_ipv6_prefix_length = args[:internal_ipv6_prefix_length] if args.key?(:internal_ipv6_prefix_length)
31082
31339
  @ipv6_access_configs = args[:ipv6_access_configs] if args.key?(:ipv6_access_configs)
31083
31340
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
@@ -39927,7 +40184,8 @@ module Google
39927
40184
  # @return [String]
39928
40185
  attr_accessor :description
39929
40186
 
39930
- # Indicates if this group of VMs have emergent maintenance enabled.
40187
+ # Indicates whether Compute Engine allows unplanned maintenance for your VMs;
40188
+ # for example, to fix hardware errors.
39931
40189
  # Corresponds to the JSON property `enableEmergentMaintenance`
39932
40190
  # @return [Boolean]
39933
40191
  attr_accessor :enable_emergent_maintenance
@@ -40271,6 +40529,19 @@ module Google
40271
40529
  # @return [Google::Apis::ComputeBeta::GroupMaintenanceInfo]
40272
40530
  attr_accessor :reservation_maintenance
40273
40531
 
40532
+ # [Output Only] The number of reservation subBlocks associated with this
40533
+ # reservation block.
40534
+ # Corresponds to the JSON property `reservationSubBlockCount`
40535
+ # @return [Fixnum]
40536
+ attr_accessor :reservation_sub_block_count
40537
+
40538
+ # [Output Only] The number of in-use reservation subBlocks associated with this
40539
+ # reservation block. If at least one VM is running on a subBlock, it is
40540
+ # considered in-use.
40541
+ # Corresponds to the JSON property `reservationSubBlockInUseCount`
40542
+ # @return [Fixnum]
40543
+ attr_accessor :reservation_sub_block_in_use_count
40544
+
40274
40545
  # [Output Only] Server-defined fully-qualified URL for this resource.
40275
40546
  # Corresponds to the JSON property `selfLink`
40276
40547
  # @return [String]
@@ -40305,6 +40576,8 @@ module Google
40305
40576
  @name = args[:name] if args.key?(:name)
40306
40577
  @physical_topology = args[:physical_topology] if args.key?(:physical_topology)
40307
40578
  @reservation_maintenance = args[:reservation_maintenance] if args.key?(:reservation_maintenance)
40579
+ @reservation_sub_block_count = args[:reservation_sub_block_count] if args.key?(:reservation_sub_block_count)
40580
+ @reservation_sub_block_in_use_count = args[:reservation_sub_block_in_use_count] if args.key?(:reservation_sub_block_in_use_count)
40308
40581
  @self_link = args[:self_link] if args.key?(:self_link)
40309
40582
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
40310
40583
  @status = args[:status] if args.key?(:status)
@@ -40593,6 +40866,259 @@ module Google
40593
40866
  end
40594
40867
  end
40595
40868
 
40869
+ # Represents a reservation subBlock resource.
40870
+ class ReservationSubBlock
40871
+ include Google::Apis::Core::Hashable
40872
+
40873
+ # [Output Only] The number of hosts that are allocated in this reservation
40874
+ # subBlock.
40875
+ # Corresponds to the JSON property `count`
40876
+ # @return [Fixnum]
40877
+ attr_accessor :count
40878
+
40879
+ # [Output Only] Creation timestamp in RFC3339 text format.
40880
+ # Corresponds to the JSON property `creationTimestamp`
40881
+ # @return [String]
40882
+ attr_accessor :creation_timestamp
40883
+
40884
+ # [Output Only] The unique identifier for the resource. This identifier is
40885
+ # defined by the server.
40886
+ # Corresponds to the JSON property `id`
40887
+ # @return [Fixnum]
40888
+ attr_accessor :id
40889
+
40890
+ # [Output Only] The number of instances that are currently in use on this
40891
+ # reservation subBlock.
40892
+ # Corresponds to the JSON property `inUseCount`
40893
+ # @return [Fixnum]
40894
+ attr_accessor :in_use_count
40895
+
40896
+ # [Output Only] Type of the resource. Always compute#reservationSubBlock for
40897
+ # reservation subBlocks.
40898
+ # Corresponds to the JSON property `kind`
40899
+ # @return [String]
40900
+ attr_accessor :kind
40901
+
40902
+ # [Output Only] The name of this reservation subBlock generated by Google
40903
+ # Compute Engine. The name must be 1-63 characters long, and comply with RFC1035
40904
+ # @pattern [a-z](?:[-a-z0-9]`0,61`[a-z0-9])?
40905
+ # Corresponds to the JSON property `name`
40906
+ # @return [String]
40907
+ attr_accessor :name
40908
+
40909
+ # [Output Only] The physical topology of the reservation subBlock.
40910
+ # Corresponds to the JSON property `physicalTopology`
40911
+ # @return [Google::Apis::ComputeBeta::ReservationSubBlockPhysicalTopology]
40912
+ attr_accessor :physical_topology
40913
+
40914
+ # [Output Only] Server-defined fully-qualified URL for this resource.
40915
+ # Corresponds to the JSON property `selfLink`
40916
+ # @return [String]
40917
+ attr_accessor :self_link
40918
+
40919
+ # [Output Only] Server-defined URL for this resource with the resource id.
40920
+ # Corresponds to the JSON property `selfLinkWithId`
40921
+ # @return [String]
40922
+ attr_accessor :self_link_with_id
40923
+
40924
+ # [Output Only] Status of the reservation subBlock.
40925
+ # Corresponds to the JSON property `status`
40926
+ # @return [String]
40927
+ attr_accessor :status
40928
+
40929
+ # [Output Only] Zone in which the reservation subBlock resides.
40930
+ # Corresponds to the JSON property `zone`
40931
+ # @return [String]
40932
+ attr_accessor :zone
40933
+
40934
+ def initialize(**args)
40935
+ update!(**args)
40936
+ end
40937
+
40938
+ # Update properties of this object
40939
+ def update!(**args)
40940
+ @count = args[:count] if args.key?(:count)
40941
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
40942
+ @id = args[:id] if args.key?(:id)
40943
+ @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
40944
+ @kind = args[:kind] if args.key?(:kind)
40945
+ @name = args[:name] if args.key?(:name)
40946
+ @physical_topology = args[:physical_topology] if args.key?(:physical_topology)
40947
+ @self_link = args[:self_link] if args.key?(:self_link)
40948
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
40949
+ @status = args[:status] if args.key?(:status)
40950
+ @zone = args[:zone] if args.key?(:zone)
40951
+ end
40952
+ end
40953
+
40954
+ #
40955
+ class ReservationSubBlockPhysicalTopology
40956
+ include Google::Apis::Core::Hashable
40957
+
40958
+ # The hash of the capacity block within the cluster.
40959
+ # Corresponds to the JSON property `block`
40960
+ # @return [String]
40961
+ attr_accessor :block
40962
+
40963
+ # The cluster name of the reservation subBlock.
40964
+ # Corresponds to the JSON property `cluster`
40965
+ # @return [String]
40966
+ attr_accessor :cluster
40967
+
40968
+ # The hash of the capacity sub-block within the capacity block.
40969
+ # Corresponds to the JSON property `subBlock`
40970
+ # @return [String]
40971
+ attr_accessor :sub_block
40972
+
40973
+ def initialize(**args)
40974
+ update!(**args)
40975
+ end
40976
+
40977
+ # Update properties of this object
40978
+ def update!(**args)
40979
+ @block = args[:block] if args.key?(:block)
40980
+ @cluster = args[:cluster] if args.key?(:cluster)
40981
+ @sub_block = args[:sub_block] if args.key?(:sub_block)
40982
+ end
40983
+ end
40984
+
40985
+ #
40986
+ class ReservationSubBlocksGetResponse
40987
+ include Google::Apis::Core::Hashable
40988
+
40989
+ # Represents a reservation subBlock resource.
40990
+ # Corresponds to the JSON property `resource`
40991
+ # @return [Google::Apis::ComputeBeta::ReservationSubBlock]
40992
+ attr_accessor :resource
40993
+
40994
+ def initialize(**args)
40995
+ update!(**args)
40996
+ end
40997
+
40998
+ # Update properties of this object
40999
+ def update!(**args)
41000
+ @resource = args[:resource] if args.key?(:resource)
41001
+ end
41002
+ end
41003
+
41004
+ # A list of reservation subBlocks under a single reservation.
41005
+ class ReservationSubBlocksListResponse
41006
+ include Google::Apis::Core::Hashable
41007
+
41008
+ # Unique identifier for the resource; defined by the server.
41009
+ # Corresponds to the JSON property `id`
41010
+ # @return [String]
41011
+ attr_accessor :id
41012
+
41013
+ # A list of reservation subBlock resources.
41014
+ # Corresponds to the JSON property `items`
41015
+ # @return [Array<Google::Apis::ComputeBeta::ReservationSubBlock>]
41016
+ attr_accessor :items
41017
+
41018
+ # Type of the resource. Always compute#reservationSubBlock for a list of
41019
+ # reservation subBlocks.
41020
+ # Corresponds to the JSON property `kind`
41021
+ # @return [String]
41022
+ attr_accessor :kind
41023
+
41024
+ # This token allows you to get the next page of results for list requests. If
41025
+ # the number of results is larger than maxResults, use the nextPageToken as a
41026
+ # value for the query parameter pageToken in the next list request. Subsequent
41027
+ # list requests will have their own nextPageToken to continue paging through the
41028
+ # results.
41029
+ # Corresponds to the JSON property `nextPageToken`
41030
+ # @return [String]
41031
+ attr_accessor :next_page_token
41032
+
41033
+ # Server-defined URL for this resource.
41034
+ # Corresponds to the JSON property `selfLink`
41035
+ # @return [String]
41036
+ attr_accessor :self_link
41037
+
41038
+ # Informational warning message.
41039
+ # Corresponds to the JSON property `warning`
41040
+ # @return [Google::Apis::ComputeBeta::ReservationSubBlocksListResponse::Warning]
41041
+ attr_accessor :warning
41042
+
41043
+ def initialize(**args)
41044
+ update!(**args)
41045
+ end
41046
+
41047
+ # Update properties of this object
41048
+ def update!(**args)
41049
+ @id = args[:id] if args.key?(:id)
41050
+ @items = args[:items] if args.key?(:items)
41051
+ @kind = args[:kind] if args.key?(:kind)
41052
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
41053
+ @self_link = args[:self_link] if args.key?(:self_link)
41054
+ @warning = args[:warning] if args.key?(:warning)
41055
+ end
41056
+
41057
+ # Informational warning message.
41058
+ class Warning
41059
+ include Google::Apis::Core::Hashable
41060
+
41061
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
41062
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
41063
+ # Corresponds to the JSON property `code`
41064
+ # @return [String]
41065
+ attr_accessor :code
41066
+
41067
+ # [Output Only] Metadata about this warning in key: value format. For example: "
41068
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
41069
+ # Corresponds to the JSON property `data`
41070
+ # @return [Array<Google::Apis::ComputeBeta::ReservationSubBlocksListResponse::Warning::Datum>]
41071
+ attr_accessor :data
41072
+
41073
+ # [Output Only] A human-readable description of the warning code.
41074
+ # Corresponds to the JSON property `message`
41075
+ # @return [String]
41076
+ attr_accessor :message
41077
+
41078
+ def initialize(**args)
41079
+ update!(**args)
41080
+ end
41081
+
41082
+ # Update properties of this object
41083
+ def update!(**args)
41084
+ @code = args[:code] if args.key?(:code)
41085
+ @data = args[:data] if args.key?(:data)
41086
+ @message = args[:message] if args.key?(:message)
41087
+ end
41088
+
41089
+ #
41090
+ class Datum
41091
+ include Google::Apis::Core::Hashable
41092
+
41093
+ # [Output Only] A key that provides more detail on the warning being returned.
41094
+ # For example, for warnings where there are no results in a list request for a
41095
+ # particular zone, this key might be scope and the key value might be the zone
41096
+ # name. Other examples might be a key indicating a deprecated resource and a
41097
+ # suggested replacement, or a warning about invalid network settings (for
41098
+ # example, if an instance attempts to perform IP forwarding but is not enabled
41099
+ # for IP forwarding).
41100
+ # Corresponds to the JSON property `key`
41101
+ # @return [String]
41102
+ attr_accessor :key
41103
+
41104
+ # [Output Only] A warning data value corresponding to the key.
41105
+ # Corresponds to the JSON property `value`
41106
+ # @return [String]
41107
+ attr_accessor :value
41108
+
41109
+ def initialize(**args)
41110
+ update!(**args)
41111
+ end
41112
+
41113
+ # Update properties of this object
41114
+ def update!(**args)
41115
+ @key = args[:key] if args.key?(:key)
41116
+ @value = args[:value] if args.key?(:value)
41117
+ end
41118
+ end
41119
+ end
41120
+ end
41121
+
40596
41122
  #
40597
41123
  class ReservationsBlocksPerformMaintenanceRequest
40598
41124
  include Google::Apis::Core::Hashable
@@ -42567,6 +43093,11 @@ module Google
42567
43093
  # @return [String]
42568
43094
  attr_accessor :network
42569
43095
 
43096
+ # Additional router parameters.
43097
+ # Corresponds to the JSON property `params`
43098
+ # @return [Google::Apis::ComputeBeta::RouterParams]
43099
+ attr_accessor :params
43100
+
42570
43101
  # [Output Only] URI of the region where the router resides. You must specify
42571
43102
  # this field as part of the HTTP request URL. It is not settable as a field in
42572
43103
  # the request body.
@@ -42598,6 +43129,7 @@ module Google
42598
43129
  @nats = args[:nats] if args.key?(:nats)
42599
43130
  @ncc_gateway = args[:ncc_gateway] if args.key?(:ncc_gateway)
42600
43131
  @network = args[:network] if args.key?(:network)
43132
+ @params = args[:params] if args.key?(:params)
42601
43133
  @region = args[:region] if args.key?(:region)
42602
43134
  @self_link = args[:self_link] if args.key?(:self_link)
42603
43135
  end
@@ -43714,6 +44246,33 @@ module Google
43714
44246
  end
43715
44247
  end
43716
44248
 
44249
+ # Additional router parameters.
44250
+ class RouterParams
44251
+ include Google::Apis::Core::Hashable
44252
+
44253
+ # Tag keys/values directly bound to this resource. Tag keys and values have the
44254
+ # same definition as resource manager tags. The field is allowed for INSERT only.
44255
+ # The keys/values to set on the resource should be specified in either ID ` : `
44256
+ # or Namespaced format ` : `. For example the following are valid inputs: * `"
44257
+ # tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"` * `"123/
44258
+ # environment" : "production", "345/abc" : "xyz"` Note: * Invalid combinations
44259
+ # of ID & namespaced format is not supported. For instance: `"123/environment" :
44260
+ # "tagValues/444"` is invalid. * Inconsistent format is not supported. For
44261
+ # instance: `"tagKeys/333" : "tagValues/444", "123/env" : "prod"` is invalid.
44262
+ # Corresponds to the JSON property `resourceManagerTags`
44263
+ # @return [Hash<String,String>]
44264
+ attr_accessor :resource_manager_tags
44265
+
44266
+ def initialize(**args)
44267
+ update!(**args)
44268
+ end
44269
+
44270
+ # Update properties of this object
44271
+ def update!(**args)
44272
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
44273
+ end
44274
+ end
44275
+
43717
44276
  #
43718
44277
  class RouterStatus
43719
44278
  include Google::Apis::Core::Hashable
@@ -44837,6 +45396,13 @@ module Google
44837
45396
  # @return [String]
44838
45397
  attr_accessor :provisioning_model
44839
45398
 
45399
+ # Default is false and there will be 120 seconds between GCE ACPI G2 Soft Off
45400
+ # and ACPI G3 Mechanical Off for Standard VMs and 30 seconds for Spot VMs.
45401
+ # Corresponds to the JSON property `skipGuestOsShutdown`
45402
+ # @return [Boolean]
45403
+ attr_accessor :skip_guest_os_shutdown
45404
+ alias_method :skip_guest_os_shutdown?, :skip_guest_os_shutdown
45405
+
44840
45406
  # Specifies the timestamp, when the instance will be terminated, in RFC3339 text
44841
45407
  # format. If specified, the instance termination action will be performed at the
44842
45408
  # termination time.
@@ -44866,6 +45432,7 @@ module Google
44866
45432
  @on_instance_stop_action = args[:on_instance_stop_action] if args.key?(:on_instance_stop_action)
44867
45433
  @preemptible = args[:preemptible] if args.key?(:preemptible)
44868
45434
  @provisioning_model = args[:provisioning_model] if args.key?(:provisioning_model)
45435
+ @skip_guest_os_shutdown = args[:skip_guest_os_shutdown] if args.key?(:skip_guest_os_shutdown)
44869
45436
  @termination_time = args[:termination_time] if args.key?(:termination_time)
44870
45437
  end
44871
45438
  end
@@ -58086,6 +58653,12 @@ module Google
58086
58653
  class VpnTunnel
58087
58654
  include Google::Apis::Core::Hashable
58088
58655
 
58656
+ # User specified list of ciphers to use for the phase 1 and phase 2 of the IKE
58657
+ # protocol.
58658
+ # Corresponds to the JSON property `cipherSuite`
58659
+ # @return [Google::Apis::ComputeBeta::VpnTunnelCipherSuite]
58660
+ attr_accessor :cipher_suite
58661
+
58089
58662
  # [Output Only] Creation timestamp in RFC3339 text format.
58090
58663
  # Corresponds to the JSON property `creationTimestamp`
58091
58664
  # @return [String]
@@ -58271,6 +58844,7 @@ module Google
58271
58844
 
58272
58845
  # Update properties of this object
58273
58846
  def update!(**args)
58847
+ @cipher_suite = args[:cipher_suite] if args.key?(:cipher_suite)
58274
58848
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
58275
58849
  @description = args[:description] if args.key?(:description)
58276
58850
  @detailed_status = args[:detailed_status] if args.key?(:detailed_status)
@@ -58421,6 +58995,31 @@ module Google
58421
58995
  end
58422
58996
  end
58423
58997
 
58998
+ #
58999
+ class VpnTunnelCipherSuite
59000
+ include Google::Apis::Core::Hashable
59001
+
59002
+ #
59003
+ # Corresponds to the JSON property `phase1`
59004
+ # @return [Google::Apis::ComputeBeta::VpnTunnelPhase1Algorithms]
59005
+ attr_accessor :phase1
59006
+
59007
+ #
59008
+ # Corresponds to the JSON property `phase2`
59009
+ # @return [Google::Apis::ComputeBeta::VpnTunnelPhase2Algorithms]
59010
+ attr_accessor :phase2
59011
+
59012
+ def initialize(**args)
59013
+ update!(**args)
59014
+ end
59015
+
59016
+ # Update properties of this object
59017
+ def update!(**args)
59018
+ @phase1 = args[:phase1] if args.key?(:phase1)
59019
+ @phase2 = args[:phase2] if args.key?(:phase2)
59020
+ end
59021
+ end
59022
+
58424
59023
  # Contains a list of VpnTunnel resources.
58425
59024
  class VpnTunnelList
58426
59025
  include Google::Apis::Core::Hashable
@@ -58538,6 +59137,74 @@ module Google
58538
59137
  end
58539
59138
  end
58540
59139
 
59140
+ #
59141
+ class VpnTunnelPhase1Algorithms
59142
+ include Google::Apis::Core::Hashable
59143
+
59144
+ #
59145
+ # Corresponds to the JSON property `dh`
59146
+ # @return [Array<String>]
59147
+ attr_accessor :dh
59148
+
59149
+ #
59150
+ # Corresponds to the JSON property `encryption`
59151
+ # @return [Array<String>]
59152
+ attr_accessor :encryption
59153
+
59154
+ #
59155
+ # Corresponds to the JSON property `integrity`
59156
+ # @return [Array<String>]
59157
+ attr_accessor :integrity
59158
+
59159
+ #
59160
+ # Corresponds to the JSON property `prf`
59161
+ # @return [Array<String>]
59162
+ attr_accessor :prf
59163
+
59164
+ def initialize(**args)
59165
+ update!(**args)
59166
+ end
59167
+
59168
+ # Update properties of this object
59169
+ def update!(**args)
59170
+ @dh = args[:dh] if args.key?(:dh)
59171
+ @encryption = args[:encryption] if args.key?(:encryption)
59172
+ @integrity = args[:integrity] if args.key?(:integrity)
59173
+ @prf = args[:prf] if args.key?(:prf)
59174
+ end
59175
+ end
59176
+
59177
+ #
59178
+ class VpnTunnelPhase2Algorithms
59179
+ include Google::Apis::Core::Hashable
59180
+
59181
+ #
59182
+ # Corresponds to the JSON property `encryption`
59183
+ # @return [Array<String>]
59184
+ attr_accessor :encryption
59185
+
59186
+ #
59187
+ # Corresponds to the JSON property `integrity`
59188
+ # @return [Array<String>]
59189
+ attr_accessor :integrity
59190
+
59191
+ #
59192
+ # Corresponds to the JSON property `pfs`
59193
+ # @return [Array<String>]
59194
+ attr_accessor :pfs
59195
+
59196
+ def initialize(**args)
59197
+ update!(**args)
59198
+ end
59199
+
59200
+ # Update properties of this object
59201
+ def update!(**args)
59202
+ @encryption = args[:encryption] if args.key?(:encryption)
59203
+ @integrity = args[:integrity] if args.key?(:integrity)
59204
+ @pfs = args[:pfs] if args.key?(:pfs)
59205
+ end
59206
+ end
59207
+
58541
59208
  #
58542
59209
  class VpnTunnelsScopedList
58543
59210
  include Google::Apis::Core::Hashable
@@ -58861,6 +59528,12 @@ module Google
58861
59528
  # @return [String]
58862
59529
  attr_accessor :name
58863
59530
 
59531
+ # [Output Only] Indicates whether there are wire changes yet to be processed.
59532
+ # Corresponds to the JSON property `reconciling`
59533
+ # @return [Boolean]
59534
+ attr_accessor :reconciling
59535
+ alias_method :reconciling?, :reconciling
59536
+
58864
59537
  # [Output Only] Server-defined URL for the resource.
58865
59538
  # Corresponds to the JSON property `selfLink`
58866
59539
  # @return [String]
@@ -58900,6 +59573,7 @@ module Google
58900
59573
  @id = args[:id] if args.key?(:id)
58901
59574
  @kind = args[:kind] if args.key?(:kind)
58902
59575
  @name = args[:name] if args.key?(:name)
59576
+ @reconciling = args[:reconciling] if args.key?(:reconciling)
58903
59577
  @self_link = args[:self_link] if args.key?(:self_link)
58904
59578
  @topology = args[:topology] if args.key?(:topology)
58905
59579
  @wire_group_properties = args[:wire_group_properties] if args.key?(:wire_group_properties)