google-apis-compute_beta 0.31.0 → 0.34.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.
@@ -1328,9 +1328,10 @@ module Google
1328
1328
 
1329
1329
  # [Input Only] Specifies the parameters for a new disk that will be created
1330
1330
  # alongside the new instance. Use initialization parameters to create boot disks
1331
- # or local SSDs attached to the new instance. This property is mutually
1332
- # exclusive with the source property; you can only define one or the other, but
1333
- # not both.
1331
+ # or local SSDs attached to the new instance. This field is persisted and
1332
+ # returned for instanceTemplate and not returned in the context of instance.
1333
+ # This property is mutually exclusive with the source property; you can only
1334
+ # define one or the other, but not both.
1334
1335
  # Corresponds to the JSON property `initializeParams`
1335
1336
  # @return [Google::Apis::ComputeBeta::AttachedDiskInitializeParams]
1336
1337
  attr_accessor :initialize_params
@@ -1430,9 +1431,10 @@ module Google
1430
1431
 
1431
1432
  # [Input Only] Specifies the parameters for a new disk that will be created
1432
1433
  # alongside the new instance. Use initialization parameters to create boot disks
1433
- # or local SSDs attached to the new instance. This property is mutually
1434
- # exclusive with the source property; you can only define one or the other, but
1435
- # not both.
1434
+ # or local SSDs attached to the new instance. This field is persisted and
1435
+ # returned for instanceTemplate and not returned in the context of instance.
1436
+ # This property is mutually exclusive with the source property; you can only
1437
+ # define one or the other, but not both.
1436
1438
  class AttachedDiskInitializeParams
1437
1439
  include Google::Apis::Core::Hashable
1438
1440
 
@@ -2952,9 +2954,9 @@ module Google
2952
2954
  # @return [Array<String>]
2953
2955
  attr_accessor :include_http_headers
2954
2956
 
2955
- # Names of query string parameters to include in cache keys. All other
2956
- # parameters will be excluded. '&' and '=' will be percent encoded and not
2957
- # treated as delimiters.
2957
+ # Names of query string parameters to include in cache keys. Default parameters
2958
+ # are always included. '&' and '=' will be percent encoded and not treated as
2959
+ # delimiters.
2958
2960
  # Corresponds to the JSON property `queryStringWhitelist`
2959
2961
  # @return [Array<String>]
2960
2962
  attr_accessor :query_string_whitelist
@@ -4628,7 +4630,7 @@ module Google
4628
4630
  # @return [Google::Apis::ComputeBeta::Expr]
4629
4631
  attr_accessor :condition
4630
4632
 
4631
- # Specifies the principals requesting access for a Cloud Platform resource. `
4633
+ # Specifies the principals requesting access for a Google Cloud resource. `
4632
4634
  # members` can have the following values: * `allUsers`: A special identifier
4633
4635
  # that represents anyone who is on the internet; with or without a Google
4634
4636
  # account. * `allAuthenticatedUsers`: A special identifier that represents
@@ -8523,6 +8525,12 @@ module Google
8523
8525
  class FirewallPolicyRuleMatcher
8524
8526
  include Google::Apis::Core::Hashable
8525
8527
 
8528
+ # Address groups which should be matched against the traffic destination.
8529
+ # Maximum number of destination address groups is 10.
8530
+ # Corresponds to the JSON property `destAddressGroups`
8531
+ # @return [Array<String>]
8532
+ attr_accessor :dest_address_groups
8533
+
8526
8534
  # CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is
8527
8535
  # 5000.
8528
8536
  # Corresponds to the JSON property `destIpRanges`
@@ -8548,6 +8556,12 @@ module Google
8548
8556
  # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRuleMatcherLayer4Config>]
8549
8557
  attr_accessor :layer4_configs
8550
8558
 
8559
+ # Address groups which should be matched against the traffic source. Maximum
8560
+ # number of source address groups is 10.
8561
+ # Corresponds to the JSON property `srcAddressGroups`
8562
+ # @return [Array<String>]
8563
+ attr_accessor :src_address_groups
8564
+
8551
8565
  # CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 5000.
8552
8566
  # Corresponds to the JSON property `srcIpRanges`
8553
8567
  # @return [Array<String>]
@@ -8580,10 +8594,12 @@ module Google
8580
8594
 
8581
8595
  # Update properties of this object
8582
8596
  def update!(**args)
8597
+ @dest_address_groups = args[:dest_address_groups] if args.key?(:dest_address_groups)
8583
8598
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
8584
8599
  @dest_region_codes = args[:dest_region_codes] if args.key?(:dest_region_codes)
8585
8600
  @dest_threat_intelligences = args[:dest_threat_intelligences] if args.key?(:dest_threat_intelligences)
8586
8601
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
8602
+ @src_address_groups = args[:src_address_groups] if args.key?(:src_address_groups)
8587
8603
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
8588
8604
  @src_region_codes = args[:src_region_codes] if args.key?(:src_region_codes)
8589
8605
  @src_secure_tags = args[:src_secure_tags] if args.key?(:src_secure_tags)
@@ -8697,21 +8713,26 @@ module Google
8697
8713
  class ForwardingRule
8698
8714
  include Google::Apis::Core::Hashable
8699
8715
 
8700
- # IP address that this forwarding rule serves. When a client sends traffic to
8701
- # this IP address, the forwarding rule directs the traffic to the target that
8702
- # you specify in the forwarding rule. If you don't specify a reserved IP address,
8703
- # an ephemeral IP address is assigned. Methods for specifying an IP address: *
8704
- # IPv4 dotted decimal, as in `100.1.2.3` * Full URL, as in https://www.
8705
- # googleapis.com/compute/v1/projects/project_id/regions/region /addresses/
8706
- # address-name * Partial URL or by name, as in: - projects/project_id/regions/
8707
- # region/addresses/address-name - regions/region/addresses/address-name - global/
8708
- # addresses/address-name - address-name The loadBalancingScheme and the
8709
- # forwarding rule's target determine the type of IP address that you can use.
8710
- # For detailed information, see [IP address specifications](https://cloud.google.
8711
- # com/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).
8712
- # Must be set to `0.0.0.0` when the target is targetGrpcProxy that has
8713
- # validateForProxyless field set to true. For Private Service Connect forwarding
8714
- # rules that forward traffic to Google APIs, IP address must be provided.
8716
+ # IP address for which this forwarding rule accepts traffic. When a client sends
8717
+ # traffic to this IP address, the forwarding rule directs the traffic to the
8718
+ # referenced target or backendService. While creating a forwarding rule,
8719
+ # specifying an IPAddress is required under the following circumstances: - When
8720
+ # the target is set to targetGrpcProxy and validateForProxyless is set to true,
8721
+ # the IPAddress should be set to 0.0.0.0. - When the target is a Private Service
8722
+ # Connect Google APIs bundle, you must specify an IPAddress. Otherwise, you can
8723
+ # optionally specify an IP address that references an existing static (reserved)
8724
+ # IP address resource. When omitted, Google Cloud assigns an ephemeral IP
8725
+ # address. Use one of the following formats to specify an IP address while
8726
+ # creating a forwarding rule: * IP address number, as in `100.1.2.3` * Full
8727
+ # resource URL, as in https://www.googleapis.com/compute/v1/projects/project_id/
8728
+ # regions/region /addresses/address-name * Partial URL or by name, as in: -
8729
+ # projects/project_id/regions/region/addresses/address-name - regions/region/
8730
+ # addresses/address-name - global/addresses/address-name - address-name The
8731
+ # forwarding rule's target or backendService, and in most cases, also the
8732
+ # loadBalancingScheme, determine the type of IP address that you can use. For
8733
+ # detailed information, see [IP address specifications](https://cloud.google.com/
8734
+ # load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). When
8735
+ # reading an IPAddress, the API always returns the IP address number.
8715
8736
  # Corresponds to the JSON property `IPAddress`
8716
8737
  # @return [String]
8717
8738
  attr_accessor :ip_address
@@ -8879,6 +8900,14 @@ module Google
8879
8900
  # @return [String]
8880
8901
  attr_accessor :network_tier
8881
8902
 
8903
+ # This is used in PSC consumer ForwardingRule to control whether it should try
8904
+ # to auto-generate a DNS zone or not. Non-PSC forwarding rules do not use this
8905
+ # field.
8906
+ # Corresponds to the JSON property `noAutomateDnsZone`
8907
+ # @return [Boolean]
8908
+ attr_accessor :no_automate_dns_zone
8909
+ alias_method :no_automate_dns_zone?, :no_automate_dns_zone
8910
+
8882
8911
  # This field can be used only if: - Load balancing scheme is one of EXTERNAL,
8883
8912
  # INTERNAL_SELF_MANAGED or INTERNAL_MANAGED - IPProtocol is one of TCP, UDP, or
8884
8913
  # SCTP. Packets addressed to ports in the specified range will be forwarded to
@@ -9000,6 +9029,7 @@ module Google
9000
9029
  @name = args[:name] if args.key?(:name)
9001
9030
  @network = args[:network] if args.key?(:network)
9002
9031
  @network_tier = args[:network_tier] if args.key?(:network_tier)
9032
+ @no_automate_dns_zone = args[:no_automate_dns_zone] if args.key?(:no_automate_dns_zone)
9003
9033
  @port_range = args[:port_range] if args.key?(:port_range)
9004
9034
  @ports = args[:ports] if args.key?(:ports)
9005
9035
  @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
@@ -10911,10 +10941,10 @@ module Google
10911
10941
 
10912
10942
  # The list of host patterns to match. They must be valid hostnames with optional
10913
10943
  # port numbers in the format host:port. * matches any string of ([a-z0-9-.]*).
10914
- # In that case, * must be the first character and must be followed in the
10915
- # pattern by either - or .. * based matching is not supported when the URL map
10916
- # is bound to a target gRPC proxy that has the validateForProxyless field set to
10917
- # true.
10944
+ # In that case, * must be the first character, and if followed by anything, the
10945
+ # immediate following character must be either - or .. * based matching is not
10946
+ # supported when the URL map is bound to a target gRPC proxy that has the
10947
+ # validateForProxyless field set to true.
10918
10948
  # Corresponds to the JSON property `hosts`
10919
10949
  # @return [Array<String>]
10920
10950
  attr_accessor :hosts
@@ -12742,6 +12772,12 @@ module Google
12742
12772
  # @return [Fixnum]
12743
12773
  attr_accessor :id
12744
12774
 
12775
+ # KeyRevocationActionType of the instance. Supported options are "STOP" and "
12776
+ # NONE". The default value is "NONE" if it is not specified.
12777
+ # Corresponds to the JSON property `keyRevocationActionType`
12778
+ # @return [String]
12779
+ attr_accessor :key_revocation_action_type
12780
+
12745
12781
  # [Output Only] Type of the resource. Always compute#instance for instances.
12746
12782
  # Corresponds to the JSON property `kind`
12747
12783
  # @return [String]
@@ -12965,6 +13001,7 @@ module Google
12965
13001
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
12966
13002
  @hostname = args[:hostname] if args.key?(:hostname)
12967
13003
  @id = args[:id] if args.key?(:id)
13004
+ @key_revocation_action_type = args[:key_revocation_action_type] if args.key?(:key_revocation_action_type)
12968
13005
  @kind = args[:kind] if args.key?(:kind)
12969
13006
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
12970
13007
  @labels = args[:labels] if args.key?(:labels)
@@ -13553,6 +13590,12 @@ module Google
13553
13590
  class InstanceGroupManager
13554
13591
  include Google::Apis::Core::Hashable
13555
13592
 
13593
+ # Specifies configuration that overrides the instance template configuration for
13594
+ # the group.
13595
+ # Corresponds to the JSON property `allInstancesConfig`
13596
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerAllInstancesConfig]
13597
+ attr_accessor :all_instances_config
13598
+
13556
13599
  # The autohealing policy for this managed instance group. You can specify only
13557
13600
  # one value.
13558
13601
  # Corresponds to the JSON property `autoHealingPolicies`
@@ -13716,6 +13759,7 @@ module Google
13716
13759
 
13717
13760
  # Update properties of this object
13718
13761
  def update!(**args)
13762
+ @all_instances_config = args[:all_instances_config] if args.key?(:all_instances_config)
13719
13763
  @auto_healing_policies = args[:auto_healing_policies] if args.key?(:auto_healing_policies)
13720
13764
  @base_instance_name = args[:base_instance_name] if args.key?(:base_instance_name)
13721
13765
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
@@ -13982,6 +14026,25 @@ module Google
13982
14026
  end
13983
14027
  end
13984
14028
 
14029
+ #
14030
+ class InstanceGroupManagerAllInstancesConfig
14031
+ include Google::Apis::Core::Hashable
14032
+
14033
+ # Represents the change that you want to make to the instance properties.
14034
+ # Corresponds to the JSON property `properties`
14035
+ # @return [Google::Apis::ComputeBeta::InstancePropertiesPatch]
14036
+ attr_accessor :properties
14037
+
14038
+ def initialize(**args)
14039
+ update!(**args)
14040
+ end
14041
+
14042
+ # Update properties of this object
14043
+ def update!(**args)
14044
+ @properties = args[:properties] if args.key?(:properties)
14045
+ end
14046
+ end
14047
+
13985
14048
  #
13986
14049
  class InstanceGroupManagerAutoHealingPolicy
13987
14050
  include Google::Apis::Core::Hashable
@@ -14134,6 +14197,11 @@ module Google
14134
14197
  class InstanceGroupManagerStatus
14135
14198
  include Google::Apis::Core::Hashable
14136
14199
 
14200
+ # [Output only] Status of all-instances configuration on the group.
14201
+ # Corresponds to the JSON property `allInstancesConfig`
14202
+ # @return [Google::Apis::ComputeBeta::InstanceGroupManagerStatusAllInstancesConfig]
14203
+ attr_accessor :all_instances_config
14204
+
14137
14205
  # [Output Only] The URL of the Autoscaler that targets this instance group
14138
14206
  # manager.
14139
14207
  # Corresponds to the JSON property `autoscaler`
@@ -14168,6 +14236,7 @@ module Google
14168
14236
 
14169
14237
  # Update properties of this object
14170
14238
  def update!(**args)
14239
+ @all_instances_config = args[:all_instances_config] if args.key?(:all_instances_config)
14171
14240
  @autoscaler = args[:autoscaler] if args.key?(:autoscaler)
14172
14241
  @is_stable = args[:is_stable] if args.key?(:is_stable)
14173
14242
  @stateful = args[:stateful] if args.key?(:stateful)
@@ -14175,6 +14244,34 @@ module Google
14175
14244
  end
14176
14245
  end
14177
14246
 
14247
+ #
14248
+ class InstanceGroupManagerStatusAllInstancesConfig
14249
+ include Google::Apis::Core::Hashable
14250
+
14251
+ # [Output Only] Current all-instances configuration revision. This value is in
14252
+ # RFC3339 text format.
14253
+ # Corresponds to the JSON property `currentRevision`
14254
+ # @return [String]
14255
+ attr_accessor :current_revision
14256
+
14257
+ # [Output Only] A bit indicating whether this configuration has been applied to
14258
+ # all managed instances in the group.
14259
+ # Corresponds to the JSON property `effective`
14260
+ # @return [Boolean]
14261
+ attr_accessor :effective
14262
+ alias_method :effective?, :effective
14263
+
14264
+ def initialize(**args)
14265
+ update!(**args)
14266
+ end
14267
+
14268
+ # Update properties of this object
14269
+ def update!(**args)
14270
+ @current_revision = args[:current_revision] if args.key?(:current_revision)
14271
+ @effective = args[:effective] if args.key?(:effective)
14272
+ end
14273
+ end
14274
+
14178
14275
  #
14179
14276
  class InstanceGroupManagerStatusStateful
14180
14277
  include Google::Apis::Core::Hashable
@@ -14182,8 +14279,9 @@ module Google
14182
14279
  # [Output Only] A bit indicating whether the managed instance group has stateful
14183
14280
  # configuration, that is, if you have configured any items in a stateful policy
14184
14281
  # or in per-instance configs. The group might report that it has no stateful
14185
- # config even when there is still some preserved state on a managed instance,
14186
- # for example, if you have deleted all PICs but not yet applied those deletions.
14282
+ # configuration even when there is still some preserved state on a managed
14283
+ # instance, for example, if you have deleted all PICs but not yet applied those
14284
+ # deletions.
14187
14285
  # Corresponds to the JSON property `hasStatefulConfig`
14188
14286
  # @return [Boolean]
14189
14287
  attr_accessor :has_stateful_config
@@ -14192,15 +14290,15 @@ module Google
14192
14290
  # [Output Only] A bit indicating whether the managed instance group has stateful
14193
14291
  # configuration, that is, if you have configured any items in a stateful policy
14194
14292
  # or in per-instance configs. The group might report that it has no stateful
14195
- # config even when there is still some preserved state on a managed instance,
14196
- # for example, if you have deleted all PICs but not yet applied those deletions.
14197
- # This field is deprecated in favor of has_stateful_config.
14293
+ # configuration even when there is still some preserved state on a managed
14294
+ # instance, for example, if you have deleted all PICs but not yet applied those
14295
+ # deletions. This field is deprecated in favor of has_stateful_config.
14198
14296
  # Corresponds to the JSON property `isStateful`
14199
14297
  # @return [Boolean]
14200
14298
  attr_accessor :is_stateful
14201
14299
  alias_method :is_stateful?, :is_stateful
14202
14300
 
14203
- # [Output Only] Status of per-instance configs on the instance.
14301
+ # [Output Only] Status of per-instance configurations on the instance.
14204
14302
  # Corresponds to the JSON property `perInstanceConfigs`
14205
14303
  # @return [Google::Apis::ComputeBeta::InstanceGroupManagerStatusStatefulPerInstanceConfigs]
14206
14304
  attr_accessor :per_instance_configs
@@ -14221,9 +14319,9 @@ module Google
14221
14319
  class InstanceGroupManagerStatusStatefulPerInstanceConfigs
14222
14320
  include Google::Apis::Core::Hashable
14223
14321
 
14224
- # A bit indicating if all of the group's per-instance configs (listed in the
14225
- # output of a listPerInstanceConfigs API call) have status EFFECTIVE or there
14226
- # are no per-instance-configs.
14322
+ # A bit indicating if all of the group's per-instance configurations (listed in
14323
+ # the output of a listPerInstanceConfigs API call) have status EFFECTIVE or
14324
+ # there are no per-instance-configs.
14227
14325
  # Corresponds to the JSON property `allEffective`
14228
14326
  # @return [Boolean]
14229
14327
  attr_accessor :all_effective
@@ -14290,12 +14388,16 @@ module Google
14290
14388
  # @return [Fixnum]
14291
14389
  attr_accessor :min_ready_sec
14292
14390
 
14293
- # Minimal action to be taken on an instance. You can specify either RESTART to
14294
- # restart existing instances or REPLACE to delete and create new instances from
14295
- # the target template. If you specify a RESTART, the Updater will attempt to
14296
- # perform that action only. However, if the Updater determines that the minimal
14297
- # action you specify is not enough to perform the update, it might perform a
14298
- # more disruptive action.
14391
+ # Minimal action to be taken on an instance. Use this option to minimize
14392
+ # disruption as much as possible or to apply a more disruptive action than is
14393
+ # necessary. - To limit disruption as much as possible, set the minimal action
14394
+ # to REFRESH. If your update requires a more disruptive action, Compute Engine
14395
+ # performs the necessary action to execute the update. - To apply a more
14396
+ # disruptive action than is strictly necessary, set the minimal action to
14397
+ # RESTART or REPLACE. For example, Compute Engine does not need to restart a VM
14398
+ # to change its metadata. But if your application reads instance metadata only
14399
+ # when a VM is restarted, you can set the minimal action to RESTART in order to
14400
+ # pick up metadata changes.
14299
14401
  # Corresponds to the JSON property `minimalAction`
14300
14402
  # @return [String]
14301
14403
  attr_accessor :minimal_action
@@ -14684,8 +14786,8 @@ module Google
14684
14786
  class InstanceGroupManagersPatchPerInstanceConfigsReq
14685
14787
  include Google::Apis::Core::Hashable
14686
14788
 
14687
- # The list of per-instance configs to insert or patch on this managed instance
14688
- # group.
14789
+ # The list of per-instance configurations to insert or patch on this managed
14790
+ # instance group.
14689
14791
  # Corresponds to the JSON property `perInstanceConfigs`
14690
14792
  # @return [Array<Google::Apis::ComputeBeta::PerInstanceConfig>]
14691
14793
  attr_accessor :per_instance_configs
@@ -14932,8 +15034,8 @@ module Google
14932
15034
  class InstanceGroupManagersUpdatePerInstanceConfigsReq
14933
15035
  include Google::Apis::Core::Hashable
14934
15036
 
14935
- # The list of per-instance configs to insert or patch on this managed instance
14936
- # group.
15037
+ # The list of per-instance configurations to insert or patch on this managed
15038
+ # instance group.
14937
15039
  # Corresponds to the JSON property `perInstanceConfigs`
14938
15040
  # @return [Array<Google::Apis::ComputeBeta::PerInstanceConfig>]
14939
15041
  attr_accessor :per_instance_configs
@@ -15685,6 +15787,12 @@ module Google
15685
15787
  # @return [Array<Google::Apis::ComputeBeta::AcceleratorConfig>]
15686
15788
  attr_accessor :guest_accelerators
15687
15789
 
15790
+ # KeyRevocationActionType of the instance. Supported options are "STOP" and "
15791
+ # NONE". The default value is "NONE" if it is not specified.
15792
+ # Corresponds to the JSON property `keyRevocationActionType`
15793
+ # @return [String]
15794
+ attr_accessor :key_revocation_action_type
15795
+
15688
15796
  # Labels to apply to instances that are created from these properties.
15689
15797
  # Corresponds to the JSON property `labels`
15690
15798
  # @return [Hash<String,String>]
@@ -15791,6 +15899,7 @@ module Google
15791
15899
  @disks = args[:disks] if args.key?(:disks)
15792
15900
  @display_device = args[:display_device] if args.key?(:display_device)
15793
15901
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
15902
+ @key_revocation_action_type = args[:key_revocation_action_type] if args.key?(:key_revocation_action_type)
15794
15903
  @labels = args[:labels] if args.key?(:labels)
15795
15904
  @machine_type = args[:machine_type] if args.key?(:machine_type)
15796
15905
  @metadata = args[:metadata] if args.key?(:metadata)
@@ -15810,6 +15919,32 @@ module Google
15810
15919
  end
15811
15920
  end
15812
15921
 
15922
+ # Represents the change that you want to make to the instance properties.
15923
+ class InstancePropertiesPatch
15924
+ include Google::Apis::Core::Hashable
15925
+
15926
+ # The label key-value pairs that you want to patch onto the instance.
15927
+ # Corresponds to the JSON property `labels`
15928
+ # @return [Hash<String,String>]
15929
+ attr_accessor :labels
15930
+
15931
+ # The metadata key-value pairs that you want to patch onto the instance. For
15932
+ # more information, see Project and instance metadata.
15933
+ # Corresponds to the JSON property `metadata`
15934
+ # @return [Hash<String,String>]
15935
+ attr_accessor :metadata
15936
+
15937
+ def initialize(**args)
15938
+ update!(**args)
15939
+ end
15940
+
15941
+ # Update properties of this object
15942
+ def update!(**args)
15943
+ @labels = args[:labels] if args.key?(:labels)
15944
+ @metadata = args[:metadata] if args.key?(:metadata)
15945
+ end
15946
+ end
15947
+
15813
15948
  #
15814
15949
  class InstanceReference
15815
15950
  include Google::Apis::Core::Hashable
@@ -18594,6 +18729,11 @@ module Google
18594
18729
  class LocationPolicyLocation
18595
18730
  include Google::Apis::Core::Hashable
18596
18731
 
18732
+ # Per-zone constraints on location policy for this zone.
18733
+ # Corresponds to the JSON property `constraints`
18734
+ # @return [Google::Apis::ComputeBeta::LocationPolicyLocationConstraints]
18735
+ attr_accessor :constraints
18736
+
18597
18737
  # Preference for a given location.
18598
18738
  # Corresponds to the JSON property `preference`
18599
18739
  # @return [String]
@@ -18605,10 +18745,31 @@ module Google
18605
18745
 
18606
18746
  # Update properties of this object
18607
18747
  def update!(**args)
18748
+ @constraints = args[:constraints] if args.key?(:constraints)
18608
18749
  @preference = args[:preference] if args.key?(:preference)
18609
18750
  end
18610
18751
  end
18611
18752
 
18753
+ # Per-zone constraints on location policy for this zone.
18754
+ class LocationPolicyLocationConstraints
18755
+ include Google::Apis::Core::Hashable
18756
+
18757
+ # Maximum number of items that are allowed to be placed in this zone. The value
18758
+ # must be non-negative.
18759
+ # Corresponds to the JSON property `maxCount`
18760
+ # @return [Fixnum]
18761
+ attr_accessor :max_count
18762
+
18763
+ def initialize(**args)
18764
+ update!(**args)
18765
+ end
18766
+
18767
+ # Update properties of this object
18768
+ def update!(**args)
18769
+ @max_count = args[:max_count] if args.key?(:max_count)
18770
+ end
18771
+ end
18772
+
18612
18773
  # This is deprecated and has no effect. Do not use.
18613
18774
  class LogConfig
18614
18775
  include Google::Apis::Core::Hashable
@@ -19473,6 +19634,12 @@ module Google
19473
19634
  class ManagedInstance
19474
19635
  include Google::Apis::Core::Hashable
19475
19636
 
19637
+ # [Output Only] Current all-instances configuration revision applied to this
19638
+ # instance.
19639
+ # Corresponds to the JSON property `allInstancesConfig`
19640
+ # @return [Google::Apis::ComputeBeta::ManagedInstanceAllInstancesConfig]
19641
+ attr_accessor :all_instances_config
19642
+
19476
19643
  # [Output Only] The current action that the managed instance group has scheduled
19477
19644
  # for the instance. Possible values: - NONE The instance is running, and the
19478
19645
  # managed instance group does not have any scheduled actions for this instance. -
@@ -19545,6 +19712,7 @@ module Google
19545
19712
 
19546
19713
  # Update properties of this object
19547
19714
  def update!(**args)
19715
+ @all_instances_config = args[:all_instances_config] if args.key?(:all_instances_config)
19548
19716
  @current_action = args[:current_action] if args.key?(:current_action)
19549
19717
  @id = args[:id] if args.key?(:id)
19550
19718
  @instance = args[:instance] if args.key?(:instance)
@@ -19557,6 +19725,26 @@ module Google
19557
19725
  end
19558
19726
  end
19559
19727
 
19728
+ #
19729
+ class ManagedInstanceAllInstancesConfig
19730
+ include Google::Apis::Core::Hashable
19731
+
19732
+ # [Output Only] Current all-instances configuration revision. This value is in
19733
+ # RFC3339 text format.
19734
+ # Corresponds to the JSON property `revision`
19735
+ # @return [String]
19736
+ attr_accessor :revision
19737
+
19738
+ def initialize(**args)
19739
+ update!(**args)
19740
+ end
19741
+
19742
+ # Update properties of this object
19743
+ def update!(**args)
19744
+ @revision = args[:revision] if args.key?(:revision)
19745
+ end
19746
+ end
19747
+
19560
19748
  #
19561
19749
  class ManagedInstanceInstanceHealth
19562
19750
  include Google::Apis::Core::Hashable
@@ -20452,7 +20640,8 @@ module Google
20452
20640
  attr_accessor :network_endpoint_type
20453
20641
 
20454
20642
  # The target service url used to set up private service connection to a Google
20455
- # API. An example value is: "asia-northeast3-cloudkms.googleapis.com"
20643
+ # API or a PSC Producer Service Attachment. An example value is: "asia-
20644
+ # northeast3-cloudkms.googleapis.com"
20456
20645
  # Corresponds to the JSON property `pscTargetService`
20457
20646
  # @return [String]
20458
20647
  attr_accessor :psc_target_service
@@ -21625,6 +21814,12 @@ module Google
21625
21814
  # @return [Fixnum]
21626
21815
  attr_accessor :peer_mtu
21627
21816
 
21817
+ # Which IP version(s) of traffic and routes are allowed to be imported or
21818
+ # exported between peer networks. The default value is IPV4_ONLY.
21819
+ # Corresponds to the JSON property `stackType`
21820
+ # @return [String]
21821
+ attr_accessor :stack_type
21822
+
21628
21823
  # [Output Only] State for the peering, either `ACTIVE` or `INACTIVE`. The
21629
21824
  # peering is `ACTIVE` when there's a matching configuration in the peer network.
21630
21825
  # Corresponds to the JSON property `state`
@@ -21651,6 +21846,7 @@ module Google
21651
21846
  @name = args[:name] if args.key?(:name)
21652
21847
  @network = args[:network] if args.key?(:network)
21653
21848
  @peer_mtu = args[:peer_mtu] if args.key?(:peer_mtu)
21849
+ @stack_type = args[:stack_type] if args.key?(:stack_type)
21654
21850
  @state = args[:state] if args.key?(:state)
21655
21851
  @state_details = args[:state_details] if args.key?(:state_details)
21656
21852
  end
@@ -25450,18 +25646,18 @@ module Google
25450
25646
  # Fingerprint of this per-instance config. This field can be used in optimistic
25451
25647
  # locking. It is ignored when inserting a per-instance config. An up-to-date
25452
25648
  # fingerprint must be provided in order to update an existing per-instance
25453
- # config or the field needs to be unset.
25649
+ # configuration or the field needs to be unset.
25454
25650
  # Corresponds to the JSON property `fingerprint`
25455
25651
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
25456
25652
  # @return [String]
25457
25653
  attr_accessor :fingerprint
25458
25654
 
25459
- # The name of a per-instance config and its corresponding instance. Serves as a
25460
- # merge key during UpdatePerInstanceConfigs operations, that is, if a per-
25461
- # instance config with the same name exists then it will be updated, otherwise a
25462
- # new one will be created for the VM instance with the same name. An attempt to
25463
- # create a per-instance config for a VM instance that either doesn't exist or is
25464
- # not part of the group will result in an error.
25655
+ # The name of a per-instance configuration and its corresponding instance.
25656
+ # Serves as a merge key during UpdatePerInstanceConfigs operations, that is, if
25657
+ # a per-instance configuration with the same name exists then it will be updated,
25658
+ # otherwise a new one will be created for the VM instance with the same name.
25659
+ # An attempt to create a per-instance configconfiguration for a VM instance that
25660
+ # either doesn't exist or is not part of the group will result in an error.
25465
25661
  # Corresponds to the JSON property `name`
25466
25662
  # @return [String]
25467
25663
  attr_accessor :name
@@ -25471,8 +25667,8 @@ module Google
25471
25667
  # @return [Google::Apis::ComputeBeta::PreservedState]
25472
25668
  attr_accessor :preserved_state
25473
25669
 
25474
- # The status of applying this per-instance config on the corresponding managed
25475
- # instance.
25670
+ # The status of applying this per-instance configuration on the corresponding
25671
+ # managed instance.
25476
25672
  # Corresponds to the JSON property `status`
25477
25673
  # @return [String]
25478
25674
  attr_accessor :status
@@ -27475,8 +27671,8 @@ module Google
27475
27671
  class RegionInstanceGroupManagerPatchInstanceConfigReq
27476
27672
  include Google::Apis::Core::Hashable
27477
27673
 
27478
- # The list of per-instance configs to insert or patch on this managed instance
27479
- # group.
27674
+ # The list of per-instance configurations to insert or patch on this managed
27675
+ # instance group.
27480
27676
  # Corresponds to the JSON property `perInstanceConfigs`
27481
27677
  # @return [Array<Google::Apis::ComputeBeta::PerInstanceConfig>]
27482
27678
  attr_accessor :per_instance_configs
@@ -27495,8 +27691,8 @@ module Google
27495
27691
  class RegionInstanceGroupManagerUpdateInstanceConfigReq
27496
27692
  include Google::Apis::Core::Hashable
27497
27693
 
27498
- # The list of per-instance configs to insert or patch on this managed instance
27499
- # group.
27694
+ # The list of per-instance configurations to insert or patch on this managed
27695
+ # instance group.
27500
27696
  # Corresponds to the JSON property `perInstanceConfigs`
27501
27697
  # @return [Array<Google::Apis::ComputeBeta::PerInstanceConfig>]
27502
27698
  attr_accessor :per_instance_configs
@@ -29360,9 +29556,9 @@ module Google
29360
29556
  class ResourcePolicyGroupPlacementPolicy
29361
29557
  include Google::Apis::Core::Hashable
29362
29558
 
29363
- # The number of availability domains instances will be spread across. If two
29364
- # instances are in different availability domain, they will not be put in the
29365
- # same low latency network
29559
+ # The number of availability domains to spread instances across. If two
29560
+ # instances are in different availability domain, they are not in the same low
29561
+ # latency network.
29366
29562
  # Corresponds to the JSON property `availabilityDomainCount`
29367
29563
  # @return [Fixnum]
29368
29564
  attr_accessor :availability_domain_count
@@ -29372,7 +29568,9 @@ module Google
29372
29568
  # @return [String]
29373
29569
  attr_accessor :collocation
29374
29570
 
29375
- # Number of vms in this placement group
29571
+ # Number of VMs in this placement group. Google does not recommend that you use
29572
+ # this field unless you use a compact policy and you want your policy to work
29573
+ # only if it contains this exact number of VMs.
29376
29574
  # Corresponds to the JSON property `vmCount`
29377
29575
  # @return [Fixnum]
29378
29576
  attr_accessor :vm_count
@@ -30317,6 +30515,11 @@ module Google
30317
30515
  # @return [String]
30318
30516
  attr_accessor :kind
30319
30517
 
30518
+ # Keys used for MD5 authentication.
30519
+ # Corresponds to the JSON property `md5AuthenticationKeys`
30520
+ # @return [Array<Google::Apis::ComputeBeta::RouterMd5AuthenticationKey>]
30521
+ attr_accessor :md5_authentication_keys
30522
+
30320
30523
  # Name of the resource. Provided by the client when the resource is created. The
30321
30524
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
30322
30525
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -30363,6 +30566,7 @@ module Google
30363
30566
  @id = args[:id] if args.key?(:id)
30364
30567
  @interfaces = args[:interfaces] if args.key?(:interfaces)
30365
30568
  @kind = args[:kind] if args.key?(:kind)
30569
+ @md5_authentication_keys = args[:md5_authentication_keys] if args.key?(:md5_authentication_keys)
30366
30570
  @name = args[:name] if args.key?(:name)
30367
30571
  @nats = args[:nats] if args.key?(:nats)
30368
30572
  @network = args[:network] if args.key?(:network)
@@ -30658,6 +30862,13 @@ module Google
30658
30862
  # @return [String]
30659
30863
  attr_accessor :management_type
30660
30864
 
30865
+ # Present if MD5 authentication is enabled for the peering. Must be the name of
30866
+ # one of the entries in the Router.md5_authentication_keys. The field must
30867
+ # comply with RFC1035.
30868
+ # Corresponds to the JSON property `md5AuthenticationKeyName`
30869
+ # @return [String]
30870
+ attr_accessor :md5_authentication_key_name
30871
+
30661
30872
  # Name of this BGP peer. The name must be 1-63 characters long, and comply with
30662
30873
  # RFC1035. Specifically, the name must be 1-63 characters long and match the
30663
30874
  # regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first
@@ -30710,6 +30921,7 @@ module Google
30710
30921
  @ip_address = args[:ip_address] if args.key?(:ip_address)
30711
30922
  @ipv6_nexthop_address = args[:ipv6_nexthop_address] if args.key?(:ipv6_nexthop_address)
30712
30923
  @management_type = args[:management_type] if args.key?(:management_type)
30924
+ @md5_authentication_key_name = args[:md5_authentication_key_name] if args.key?(:md5_authentication_key_name)
30713
30925
  @name = args[:name] if args.key?(:name)
30714
30926
  @peer_asn = args[:peer_asn] if args.key?(:peer_asn)
30715
30927
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
@@ -30978,6 +31190,35 @@ module Google
30978
31190
  end
30979
31191
  end
30980
31192
 
31193
+ #
31194
+ class RouterMd5AuthenticationKey
31195
+ include Google::Apis::Core::Hashable
31196
+
31197
+ # [Input only] Value of the key. For patch and update calls, it can be skipped
31198
+ # to copy the value from the previous configuration. This is allowed if the key
31199
+ # with the same name existed before the operation. Maximum length is 80
31200
+ # characters. Can only contain printable ASCII characters.
31201
+ # Corresponds to the JSON property `key`
31202
+ # @return [String]
31203
+ attr_accessor :key
31204
+
31205
+ # Name used to identify the key. Must be unique within a router. Must be
31206
+ # referenced by at least one bgpPeer. Must comply with RFC1035.
31207
+ # Corresponds to the JSON property `name`
31208
+ # @return [String]
31209
+ attr_accessor :name
31210
+
31211
+ def initialize(**args)
31212
+ update!(**args)
31213
+ end
31214
+
31215
+ # Update properties of this object
31216
+ def update!(**args)
31217
+ @key = args[:key] if args.key?(:key)
31218
+ @name = args[:name] if args.key?(:name)
31219
+ end
31220
+ end
31221
+
30981
31222
  # Represents a Nat resource. It enables the VMs within the specified subnetworks
30982
31223
  # to access Internet without external IP addresses. It specifies a list of
30983
31224
  # subnetworks (and the ranges within) that want to use NAT. Customers can also
@@ -31010,6 +31251,12 @@ module Google
31010
31251
  attr_accessor :enable_endpoint_independent_mapping
31011
31252
  alias_method :enable_endpoint_independent_mapping?, :enable_endpoint_independent_mapping
31012
31253
 
31254
+ # List of NAT-ted endpoint types supported by the Nat Gateway. If the list is
31255
+ # empty, then it will be equivalent to include ENDPOINT_TYPE_VM
31256
+ # Corresponds to the JSON property `endpointTypes`
31257
+ # @return [Array<String>]
31258
+ attr_accessor :endpoint_types
31259
+
31013
31260
  # Timeout (in seconds) for ICMP connections. Defaults to 30s if not set.
31014
31261
  # Corresponds to the JSON property `icmpIdleTimeoutSec`
31015
31262
  # @return [Fixnum]
@@ -31117,6 +31364,7 @@ module Google
31117
31364
  @drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
31118
31365
  @enable_dynamic_port_allocation = args[:enable_dynamic_port_allocation] if args.key?(:enable_dynamic_port_allocation)
31119
31366
  @enable_endpoint_independent_mapping = args[:enable_endpoint_independent_mapping] if args.key?(:enable_endpoint_independent_mapping)
31367
+ @endpoint_types = args[:endpoint_types] if args.key?(:endpoint_types)
31120
31368
  @icmp_idle_timeout_sec = args[:icmp_idle_timeout_sec] if args.key?(:icmp_idle_timeout_sec)
31121
31369
  @log_config = args[:log_config] if args.key?(:log_config)
31122
31370
  @max_ports_per_vm = args[:max_ports_per_vm] if args.key?(:max_ports_per_vm)
@@ -31342,6 +31590,12 @@ module Google
31342
31590
  # @return [String]
31343
31591
  attr_accessor :linked_vpn_tunnel
31344
31592
 
31593
+ # Informs whether MD5 authentication is enabled on this BGP peer.
31594
+ # Corresponds to the JSON property `md5AuthEnabled`
31595
+ # @return [Boolean]
31596
+ attr_accessor :md5_auth_enabled
31597
+ alias_method :md5_auth_enabled?, :md5_auth_enabled
31598
+
31345
31599
  # Name of this BGP peer. Unique within the Routers resource.
31346
31600
  # Corresponds to the JSON property `name`
31347
31601
  # @return [String]
@@ -31375,6 +31629,11 @@ module Google
31375
31629
  # @return [String]
31376
31630
  attr_accessor :status
31377
31631
 
31632
+ # Indicates why particular status was returned.
31633
+ # Corresponds to the JSON property `statusReason`
31634
+ # @return [String]
31635
+ attr_accessor :status_reason
31636
+
31378
31637
  # Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours,
31379
31638
  # 59 minutes, 59 seconds
31380
31639
  # Corresponds to the JSON property `uptime`
@@ -31396,12 +31655,14 @@ module Google
31396
31655
  @bfd_status = args[:bfd_status] if args.key?(:bfd_status)
31397
31656
  @ip_address = args[:ip_address] if args.key?(:ip_address)
31398
31657
  @linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel)
31658
+ @md5_auth_enabled = args[:md5_auth_enabled] if args.key?(:md5_auth_enabled)
31399
31659
  @name = args[:name] if args.key?(:name)
31400
31660
  @num_learned_routes = args[:num_learned_routes] if args.key?(:num_learned_routes)
31401
31661
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
31402
31662
  @router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance)
31403
31663
  @state = args[:state] if args.key?(:state)
31404
31664
  @status = args[:status] if args.key?(:status)
31665
+ @status_reason = args[:status_reason] if args.key?(:status_reason)
31405
31666
  @uptime = args[:uptime] if args.key?(:uptime)
31406
31667
  @uptime_seconds = args[:uptime_seconds] if args.key?(:uptime_seconds)
31407
31668
  end
@@ -34717,6 +34978,12 @@ module Google
34717
34978
  # @return [Array<Google::Apis::ComputeBeta::AcceleratorConfig>]
34718
34979
  attr_accessor :guest_accelerators
34719
34980
 
34981
+ # KeyRevocationActionType of the instance. Supported options are "STOP" and "
34982
+ # NONE". The default value is "NONE" if it is not specified.
34983
+ # Corresponds to the JSON property `keyRevocationActionType`
34984
+ # @return [String]
34985
+ attr_accessor :key_revocation_action_type
34986
+
34720
34987
  # Labels to apply to instances that are created from this machine image.
34721
34988
  # Corresponds to the JSON property `labels`
34722
34989
  # @return [Hash<String,String>]
@@ -34780,6 +35047,7 @@ module Google
34780
35047
  @description = args[:description] if args.key?(:description)
34781
35048
  @disks = args[:disks] if args.key?(:disks)
34782
35049
  @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
35050
+ @key_revocation_action_type = args[:key_revocation_action_type] if args.key?(:key_revocation_action_type)
34783
35051
  @labels = args[:labels] if args.key?(:labels)
34784
35052
  @machine_type = args[:machine_type] if args.key?(:machine_type)
34785
35053
  @metadata = args[:metadata] if args.key?(:metadata)
@@ -35309,6 +35577,136 @@ module Google
35309
35577
  end
35310
35578
  end
35311
35579
 
35580
+ #
35581
+ class SslPoliciesAggregatedList
35582
+ include Google::Apis::Core::Hashable
35583
+
35584
+ #
35585
+ # Corresponds to the JSON property `etag`
35586
+ # @return [String]
35587
+ attr_accessor :etag
35588
+
35589
+ # [Output Only] Unique identifier for the resource; defined by the server.
35590
+ # Corresponds to the JSON property `id`
35591
+ # @return [String]
35592
+ attr_accessor :id
35593
+
35594
+ # A list of SslPoliciesScopedList resources.
35595
+ # Corresponds to the JSON property `items`
35596
+ # @return [Hash<String,Google::Apis::ComputeBeta::SslPoliciesScopedList>]
35597
+ attr_accessor :items
35598
+
35599
+ # [Output Only] Type of resource. Always compute#sslPolicyAggregatedList for
35600
+ # lists of SSL Policies.
35601
+ # Corresponds to the JSON property `kind`
35602
+ # @return [String]
35603
+ attr_accessor :kind
35604
+
35605
+ # [Output Only] This token allows you to get the next page of results for list
35606
+ # requests. If the number of results is larger than maxResults, use the
35607
+ # nextPageToken as a value for the query parameter pageToken in the next list
35608
+ # request. Subsequent list requests will have their own nextPageToken to
35609
+ # continue paging through the results.
35610
+ # Corresponds to the JSON property `nextPageToken`
35611
+ # @return [String]
35612
+ attr_accessor :next_page_token
35613
+
35614
+ # [Output Only] Server-defined URL for this resource.
35615
+ # Corresponds to the JSON property `selfLink`
35616
+ # @return [String]
35617
+ attr_accessor :self_link
35618
+
35619
+ # [Output Only] Unreachable resources.
35620
+ # Corresponds to the JSON property `unreachables`
35621
+ # @return [Array<String>]
35622
+ attr_accessor :unreachables
35623
+
35624
+ # [Output Only] Informational warning message.
35625
+ # Corresponds to the JSON property `warning`
35626
+ # @return [Google::Apis::ComputeBeta::SslPoliciesAggregatedList::Warning]
35627
+ attr_accessor :warning
35628
+
35629
+ def initialize(**args)
35630
+ update!(**args)
35631
+ end
35632
+
35633
+ # Update properties of this object
35634
+ def update!(**args)
35635
+ @etag = args[:etag] if args.key?(:etag)
35636
+ @id = args[:id] if args.key?(:id)
35637
+ @items = args[:items] if args.key?(:items)
35638
+ @kind = args[:kind] if args.key?(:kind)
35639
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
35640
+ @self_link = args[:self_link] if args.key?(:self_link)
35641
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
35642
+ @warning = args[:warning] if args.key?(:warning)
35643
+ end
35644
+
35645
+ # [Output Only] Informational warning message.
35646
+ class Warning
35647
+ include Google::Apis::Core::Hashable
35648
+
35649
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
35650
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
35651
+ # Corresponds to the JSON property `code`
35652
+ # @return [String]
35653
+ attr_accessor :code
35654
+
35655
+ # [Output Only] Metadata about this warning in key: value format. For example: "
35656
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
35657
+ # Corresponds to the JSON property `data`
35658
+ # @return [Array<Google::Apis::ComputeBeta::SslPoliciesAggregatedList::Warning::Datum>]
35659
+ attr_accessor :data
35660
+
35661
+ # [Output Only] A human-readable description of the warning code.
35662
+ # Corresponds to the JSON property `message`
35663
+ # @return [String]
35664
+ attr_accessor :message
35665
+
35666
+ def initialize(**args)
35667
+ update!(**args)
35668
+ end
35669
+
35670
+ # Update properties of this object
35671
+ def update!(**args)
35672
+ @code = args[:code] if args.key?(:code)
35673
+ @data = args[:data] if args.key?(:data)
35674
+ @message = args[:message] if args.key?(:message)
35675
+ end
35676
+
35677
+ #
35678
+ class Datum
35679
+ include Google::Apis::Core::Hashable
35680
+
35681
+ # [Output Only] A key that provides more detail on the warning being returned.
35682
+ # For example, for warnings where there are no results in a list request for a
35683
+ # particular zone, this key might be scope and the key value might be the zone
35684
+ # name. Other examples might be a key indicating a deprecated resource and a
35685
+ # suggested replacement, or a warning about invalid network settings (for
35686
+ # example, if an instance attempts to perform IP forwarding but is not enabled
35687
+ # for IP forwarding).
35688
+ # Corresponds to the JSON property `key`
35689
+ # @return [String]
35690
+ attr_accessor :key
35691
+
35692
+ # [Output Only] A warning data value corresponding to the key.
35693
+ # Corresponds to the JSON property `value`
35694
+ # @return [String]
35695
+ attr_accessor :value
35696
+
35697
+ def initialize(**args)
35698
+ update!(**args)
35699
+ end
35700
+
35701
+ # Update properties of this object
35702
+ def update!(**args)
35703
+ @key = args[:key] if args.key?(:key)
35704
+ @value = args[:value] if args.key?(:value)
35705
+ end
35706
+ end
35707
+ end
35708
+ end
35709
+
35312
35710
  #
35313
35711
  class SslPoliciesList
35314
35712
  include Google::Apis::Core::Hashable
@@ -35446,6 +35844,97 @@ module Google
35446
35844
  end
35447
35845
  end
35448
35846
 
35847
+ #
35848
+ class SslPoliciesScopedList
35849
+ include Google::Apis::Core::Hashable
35850
+
35851
+ # A list of SslPolicies contained in this scope.
35852
+ # Corresponds to the JSON property `sslPolicies`
35853
+ # @return [Array<Google::Apis::ComputeBeta::SslPolicy>]
35854
+ attr_accessor :ssl_policies
35855
+
35856
+ # Informational warning which replaces the list of SSL policies when the list is
35857
+ # empty.
35858
+ # Corresponds to the JSON property `warning`
35859
+ # @return [Google::Apis::ComputeBeta::SslPoliciesScopedList::Warning]
35860
+ attr_accessor :warning
35861
+
35862
+ def initialize(**args)
35863
+ update!(**args)
35864
+ end
35865
+
35866
+ # Update properties of this object
35867
+ def update!(**args)
35868
+ @ssl_policies = args[:ssl_policies] if args.key?(:ssl_policies)
35869
+ @warning = args[:warning] if args.key?(:warning)
35870
+ end
35871
+
35872
+ # Informational warning which replaces the list of SSL policies when the list is
35873
+ # empty.
35874
+ class Warning
35875
+ include Google::Apis::Core::Hashable
35876
+
35877
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
35878
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
35879
+ # Corresponds to the JSON property `code`
35880
+ # @return [String]
35881
+ attr_accessor :code
35882
+
35883
+ # [Output Only] Metadata about this warning in key: value format. For example: "
35884
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
35885
+ # Corresponds to the JSON property `data`
35886
+ # @return [Array<Google::Apis::ComputeBeta::SslPoliciesScopedList::Warning::Datum>]
35887
+ attr_accessor :data
35888
+
35889
+ # [Output Only] A human-readable description of the warning code.
35890
+ # Corresponds to the JSON property `message`
35891
+ # @return [String]
35892
+ attr_accessor :message
35893
+
35894
+ def initialize(**args)
35895
+ update!(**args)
35896
+ end
35897
+
35898
+ # Update properties of this object
35899
+ def update!(**args)
35900
+ @code = args[:code] if args.key?(:code)
35901
+ @data = args[:data] if args.key?(:data)
35902
+ @message = args[:message] if args.key?(:message)
35903
+ end
35904
+
35905
+ #
35906
+ class Datum
35907
+ include Google::Apis::Core::Hashable
35908
+
35909
+ # [Output Only] A key that provides more detail on the warning being returned.
35910
+ # For example, for warnings where there are no results in a list request for a
35911
+ # particular zone, this key might be scope and the key value might be the zone
35912
+ # name. Other examples might be a key indicating a deprecated resource and a
35913
+ # suggested replacement, or a warning about invalid network settings (for
35914
+ # example, if an instance attempts to perform IP forwarding but is not enabled
35915
+ # for IP forwarding).
35916
+ # Corresponds to the JSON property `key`
35917
+ # @return [String]
35918
+ attr_accessor :key
35919
+
35920
+ # [Output Only] A warning data value corresponding to the key.
35921
+ # Corresponds to the JSON property `value`
35922
+ # @return [String]
35923
+ attr_accessor :value
35924
+
35925
+ def initialize(**args)
35926
+ update!(**args)
35927
+ end
35928
+
35929
+ # Update properties of this object
35930
+ def update!(**args)
35931
+ @key = args[:key] if args.key?(:key)
35932
+ @value = args[:value] if args.key?(:value)
35933
+ end
35934
+ end
35935
+ end
35936
+ end
35937
+
35449
35938
  # Represents an SSL Policy resource. Use SSL policies to control the SSL
35450
35939
  # features, such as versions and cipher suites, offered by an HTTPS or SSL Proxy
35451
35940
  # load balancer. For more information, read SSL Policy Concepts.
@@ -35522,6 +36011,12 @@ module Google
35522
36011
  # @return [String]
35523
36012
  attr_accessor :profile
35524
36013
 
36014
+ # [Output Only] URL of the region where the regional SSL policy resides. This
36015
+ # field is not applicable to global SSL policies.
36016
+ # Corresponds to the JSON property `region`
36017
+ # @return [String]
36018
+ attr_accessor :region
36019
+
35525
36020
  # [Output Only] Server-defined URL for the resource.
35526
36021
  # Corresponds to the JSON property `selfLink`
35527
36022
  # @return [String]
@@ -35549,6 +36044,7 @@ module Google
35549
36044
  @min_tls_version = args[:min_tls_version] if args.key?(:min_tls_version)
35550
36045
  @name = args[:name] if args.key?(:name)
35551
36046
  @profile = args[:profile] if args.key?(:profile)
36047
+ @region = args[:region] if args.key?(:region)
35552
36048
  @self_link = args[:self_link] if args.key?(:self_link)
35553
36049
  @warnings = args[:warnings] if args.key?(:warnings)
35554
36050
  end
@@ -39235,6 +39731,12 @@ module Google
39235
39731
  # @return [String]
39236
39732
  attr_accessor :proxy_header
39237
39733
 
39734
+ # [Output Only] URL of the region where the regional TCP proxy resides. This
39735
+ # field is not applicable to global TCP proxy.
39736
+ # Corresponds to the JSON property `region`
39737
+ # @return [String]
39738
+ attr_accessor :region
39739
+
39238
39740
  # [Output Only] Server-defined URL for the resource.
39239
39741
  # Corresponds to the JSON property `selfLink`
39240
39742
  # @return [String]
@@ -39258,6 +39760,7 @@ module Google
39258
39760
  @name = args[:name] if args.key?(:name)
39259
39761
  @proxy_bind = args[:proxy_bind] if args.key?(:proxy_bind)
39260
39762
  @proxy_header = args[:proxy_header] if args.key?(:proxy_header)
39763
+ @region = args[:region] if args.key?(:region)
39261
39764
  @self_link = args[:self_link] if args.key?(:self_link)
39262
39765
  @service = args[:service] if args.key?(:service)
39263
39766
  end