google-apis-compute_beta 0.3.0 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: eeedce7a61ada297430e4625ea77907ed5d53aa6d70e0d3d6b02ce008b8e90c3
4
- data.tar.gz: ea987d7fd72d5b5b2ccf702e71c728c16955d6a63bb5558f60ada394bb7d0a8a
3
+ metadata.gz: 9b87476b50fc20714995b90ed9c0e60aaeca8a38f649d38c2150119c6746e746
4
+ data.tar.gz: 5d7ff87732fb1a641ae79f5f683ba66c18b33bc5048e15a6ef4177c72d6f610f
5
5
  SHA512:
6
- metadata.gz: 2f035356394b34c2cbaa0c6b18a00c3c79a4cbe8de8cea86a7ce42e45caf4a27ac396272570effb695bca213e042481eda9408909c1665c5875f2e10d42acd51
7
- data.tar.gz: afa5533378d6ee06dbdac55cd9e8c1e1329508955d707892301999405bf6fbd0f803bdb6a2ebb6e2864c6c7751ab85c5666a3e1640826e36ed16cc24c2e1ac2b
6
+ metadata.gz: a350bc3e15ef55bcb053789287bd6c694c1dc71b8b870f12b53bd09f3e19870a804675dde99d2ea669e0e8b5ac4375b8b7c48a3faefc44876604c881c957407f
7
+ data.tar.gz: 71b612bb64cbc55b3cbbcbe24e60bf5cfb927bd89173b9249708537321dc2bb52c5a2a321b51dcd625d27b22d28316d250c8a43d9196e96138921d97480b7d6c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,26 @@
1
1
  # Release history for google-apis-compute_beta
2
2
 
3
+ ### v0.8.0 (2021-03-30)
4
+
5
+ * Regenerated from discovery document revision 20210316
6
+
7
+ ### v0.7.0 (2021-03-19)
8
+
9
+ * Regenerated from discovery document revision 20210310
10
+
11
+ ### v0.6.0 (2021-03-10)
12
+
13
+ * Regenerated from discovery document revision 20210301
14
+ * Regenerated using generator version 0.2.0
15
+
16
+ ### v0.5.0 (2021-03-04)
17
+
18
+ * Unspecified changes
19
+
20
+ ### v0.4.0 (2021-02-24)
21
+
22
+ * Regenerated from discovery document revision 20210209
23
+
3
24
  ### v0.3.0 (2021-02-16)
4
25
 
5
26
  * Regenerated from discovery document revision 20210129
@@ -29,7 +29,7 @@ module Google
29
29
  # This is NOT the gem version.
30
30
  VERSION = 'Beta'
31
31
 
32
- # View and manage your data across Google Cloud Platform services
32
+ # See, edit, configure, and delete your Google Cloud Platform data
33
33
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
34
34
 
35
35
  # View and manage your Google Compute Engine resources
@@ -636,7 +636,7 @@ module Google
636
636
  # @return [String]
637
637
  attr_accessor :network_tier
638
638
 
639
- # The prefix length if the resource reprensents an IP range.
639
+ # The prefix length if the resource represents an IP range.
640
640
  # Corresponds to the JSON property `prefixLength`
641
641
  # @return [Fixnum]
642
642
  attr_accessor :prefix_length
@@ -649,7 +649,7 @@ module Google
649
649
  # - `NAT_AUTO` for addresses that are external IP addresses automatically
650
650
  # reserved for Cloud NAT.
651
651
  # - `IPSEC_INTERCONNECT` for addresses created from a private IP range that are
652
- # reserved for a VLAN attachment in an IPsec encrypted Interconnect
652
+ # reserved for a VLAN attachment in an IPsec-encrypted Cloud Interconnect
653
653
  # configuration. These addresses are regional resources.
654
654
  # Corresponds to the JSON property `purpose`
655
655
  # @return [String]
@@ -2736,10 +2736,15 @@ module Google
2736
2736
  # @return [String]
2737
2737
  attr_accessor :cache_mode
2738
2738
 
2739
- # Specifies a separate client (e.g. browser client) TTL, separate from the TTL
2740
- # for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL
2741
- # for both Cloud CDN and the client-facing response. The maximum allowed value
2742
- # is 86400s (1 day).
2739
+ # Specifies a separate client (e.g. browser client) maximum TTL. This is used to
2740
+ # clamp the max-age (or Expires) value sent to the client. With FORCE_CACHE_ALL,
2741
+ # the lesser of client_ttl and default_ttl is used for the response max-age
2742
+ # directive, along with a "public" directive. For cacheable content in
2743
+ # CACHE_ALL_STATIC mode, client_ttl clamps the max-age from the origin (if
2744
+ # specified), or else sets the response max-age directive to the lesser of the
2745
+ # client_ttl and default_ttl, and also ensures a "public" cache-control
2746
+ # directive is present. If a client TTL is not specified, a default value (1
2747
+ # hour) will be used. The maximum allowed value is 86400s (1 day).
2743
2748
  # Corresponds to the JSON property `clientTtl`
2744
2749
  # @return [Fixnum]
2745
2750
  attr_accessor :client_ttl
@@ -2878,8 +2883,8 @@ module Google
2878
2883
  include Google::Apis::Core::Hashable
2879
2884
 
2880
2885
  # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
2881
- # 308, 404, 405, 410, 421, 451 and 501 are can be specified as values, and you
2882
- # cannot specify a status code more than once.
2886
+ # 302, 307, 308, 404, 405, 410, 421, 451 and 501 are can be specified as values,
2887
+ # and you cannot specify a status code more than once.
2883
2888
  # Corresponds to the JSON property `code`
2884
2889
  # @return [Fixnum]
2885
2890
  attr_accessor :code
@@ -3205,6 +3210,14 @@ module Google
3205
3210
  # @return [Google::Apis::ComputeBeta::BackendServiceLogConfig]
3206
3211
  attr_accessor :log_config
3207
3212
 
3213
+ # A Duration represents a fixed-length span of time represented as a count of
3214
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
3215
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
3216
+ # 000 years.
3217
+ # Corresponds to the JSON property `maxStreamDuration`
3218
+ # @return [Google::Apis::ComputeBeta::Duration]
3219
+ attr_accessor :max_stream_duration
3220
+
3208
3221
  # Name of the resource. Provided by the client when the resource is created. The
3209
3222
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
3210
3223
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -3284,7 +3297,7 @@ module Google
3284
3297
 
3285
3298
  # Type of session affinity to use. The default is NONE.
3286
3299
  # When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the
3287
- # possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.
3300
+ # possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.
3288
3301
  # * For all other load balancers that use loadBalancingScheme=EXTERNAL, the
3289
3302
  # possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use
3290
3303
  # GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS.
@@ -3299,6 +3312,11 @@ module Google
3299
3312
  # @return [String]
3300
3313
  attr_accessor :session_affinity
3301
3314
 
3315
+ # Subsetting options to make L4 ILB support any number of backend instances
3316
+ # Corresponds to the JSON property `subsetting`
3317
+ # @return [Google::Apis::ComputeBeta::Subsetting]
3318
+ attr_accessor :subsetting
3319
+
3302
3320
  # The backend service timeout has a different meaning depending on the type of
3303
3321
  # load balancer. For more information see, Backend service settings The default
3304
3322
  # is 30 seconds. The full range of timeout values allowed is 1 - 2,147,483,647
@@ -3334,6 +3352,7 @@ module Google
3334
3352
  @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme)
3335
3353
  @locality_lb_policy = args[:locality_lb_policy] if args.key?(:locality_lb_policy)
3336
3354
  @log_config = args[:log_config] if args.key?(:log_config)
3355
+ @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration)
3337
3356
  @name = args[:name] if args.key?(:name)
3338
3357
  @network = args[:network] if args.key?(:network)
3339
3358
  @outlier_detection = args[:outlier_detection] if args.key?(:outlier_detection)
@@ -3345,6 +3364,7 @@ module Google
3345
3364
  @security_settings = args[:security_settings] if args.key?(:security_settings)
3346
3365
  @self_link = args[:self_link] if args.key?(:self_link)
3347
3366
  @session_affinity = args[:session_affinity] if args.key?(:session_affinity)
3367
+ @subsetting = args[:subsetting] if args.key?(:subsetting)
3348
3368
  @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
3349
3369
  end
3350
3370
  end
@@ -3506,10 +3526,15 @@ module Google
3506
3526
  # @return [String]
3507
3527
  attr_accessor :cache_mode
3508
3528
 
3509
- # Specifies a separate client (e.g. browser client) TTL, separate from the TTL
3510
- # for Cloud CDN's edge caches. Leaving this empty will use the same cache TTL
3511
- # for both Cloud CDN and the client-facing response. The maximum allowed value
3512
- # is 86400s (1 day).
3529
+ # Specifies a separate client (e.g. browser client) maximum TTL. This is used to
3530
+ # clamp the max-age (or Expires) value sent to the client. With FORCE_CACHE_ALL,
3531
+ # the lesser of client_ttl and default_ttl is used for the response max-age
3532
+ # directive, along with a "public" directive. For cacheable content in
3533
+ # CACHE_ALL_STATIC mode, client_ttl clamps the max-age from the origin (if
3534
+ # specified), or else sets the response max-age directive to the lesser of the
3535
+ # client_ttl and default_ttl, and also ensures a "public" cache-control
3536
+ # directive is present. If a client TTL is not specified, a default value (1
3537
+ # hour) will be used. The maximum allowed value is 86400s (1 day).
3513
3538
  # Corresponds to the JSON property `clientTtl`
3514
3539
  # @return [Fixnum]
3515
3540
  attr_accessor :client_ttl
@@ -3649,8 +3674,8 @@ module Google
3649
3674
  include Google::Apis::Core::Hashable
3650
3675
 
3651
3676
  # The HTTP status code to define a TTL against. Only HTTP status codes 300, 301,
3652
- # 308, 404, 405, 410, 421, 451 and 501 are can be specified as values, and you
3653
- # cannot specify a status code more than once.
3677
+ # 302, 307, 308, 404, 405, 410, 421, 451 and 501 are can be specified as values,
3678
+ # and you cannot specify a status code more than once.
3654
3679
  # Corresponds to the JSON property `code`
3655
3680
  # @return [Fixnum]
3656
3681
  attr_accessor :code
@@ -4445,6 +4470,105 @@ module Google
4445
4470
  end
4446
4471
  end
4447
4472
 
4473
+ #
4474
+ class BulkInsertInstanceResource
4475
+ include Google::Apis::Core::Hashable
4476
+
4477
+ # The maximum number of instances to create.
4478
+ # Corresponds to the JSON property `count`
4479
+ # @return [Fixnum]
4480
+ attr_accessor :count
4481
+
4482
+ #
4483
+ # Corresponds to the JSON property `instanceProperties`
4484
+ # @return [Google::Apis::ComputeBeta::InstanceProperties]
4485
+ attr_accessor :instance_properties
4486
+
4487
+ # Configuration for location policy among multiple possible locations (e.g.
4488
+ # preferences for zone selection among zones in a single region).
4489
+ # Corresponds to the JSON property `locationPolicy`
4490
+ # @return [Google::Apis::ComputeBeta::LocationPolicy]
4491
+ attr_accessor :location_policy
4492
+
4493
+ # The minimum number of instances to create. If no min_count is specified then
4494
+ # count is used as the default value. If min_count instances cannot be created,
4495
+ # then no instances will be created.
4496
+ # Corresponds to the JSON property `minCount`
4497
+ # @return [Fixnum]
4498
+ attr_accessor :min_count
4499
+
4500
+ # The string pattern used for the names of the VMs. Either name_pattern or
4501
+ # predefined_names must be set. The pattern should contain one consecutive
4502
+ # sequence of placeholder hash characters (#) with each character corresponding
4503
+ # to one digit of the generated instance name. Example: name_pattern of inst-####
4504
+ # will generate instance names like inst-0001, inst-0002, ... . If there
4505
+ # already exist instance(s) whose names match the name pattern in the same
4506
+ # project and zone, then the generated instance numbers will start after the
4507
+ # biggest existing number. For example, if there exists an instance with name
4508
+ # inst-0050, then instance names generated using the pattern inst-#### will be
4509
+ # inst-0051, inst-0052, etc. The name pattern placeholder #...# can contain up
4510
+ # to 18 characters.
4511
+ # Corresponds to the JSON property `namePattern`
4512
+ # @return [String]
4513
+ attr_accessor :name_pattern
4514
+
4515
+ # Per-instance properties to be set on individual instances. Keys of this map
4516
+ # specify requested instance names. Can be empty if name_pattern is used.
4517
+ # Corresponds to the JSON property `perInstanceProperties`
4518
+ # @return [Hash<String,Google::Apis::ComputeBeta::BulkInsertInstanceResourcePerInstanceProperties>]
4519
+ attr_accessor :per_instance_properties
4520
+
4521
+ # Specifies the instance template from which to create instances. You may
4522
+ # combine sourceInstanceTemplate with instanceProperties to override specific
4523
+ # values from an existing instance template. Bulk API follows the semantics of
4524
+ # JSON Merge Patch described by RFC 7396.
4525
+ # It can be a full or partial URL. For example, the following are all valid URLs
4526
+ # to an instance template:
4527
+ # - https://www.googleapis.com/compute/v1/projects/project/global/
4528
+ # instanceTemplates/instanceTemplate
4529
+ # - projects/project/global/instanceTemplates/instanceTemplate
4530
+ # - global/instanceTemplates/instanceTemplate
4531
+ # This field is optional.
4532
+ # Corresponds to the JSON property `sourceInstanceTemplate`
4533
+ # @return [String]
4534
+ attr_accessor :source_instance_template
4535
+
4536
+ def initialize(**args)
4537
+ update!(**args)
4538
+ end
4539
+
4540
+ # Update properties of this object
4541
+ def update!(**args)
4542
+ @count = args[:count] if args.key?(:count)
4543
+ @instance_properties = args[:instance_properties] if args.key?(:instance_properties)
4544
+ @location_policy = args[:location_policy] if args.key?(:location_policy)
4545
+ @min_count = args[:min_count] if args.key?(:min_count)
4546
+ @name_pattern = args[:name_pattern] if args.key?(:name_pattern)
4547
+ @per_instance_properties = args[:per_instance_properties] if args.key?(:per_instance_properties)
4548
+ @source_instance_template = args[:source_instance_template] if args.key?(:source_instance_template)
4549
+ end
4550
+ end
4551
+
4552
+ # Per-instance properties to be set on individual instances. To be extended in
4553
+ # the future.
4554
+ class BulkInsertInstanceResourcePerInstanceProperties
4555
+ include Google::Apis::Core::Hashable
4556
+
4557
+ # This field is only temporary. It will be removed. Do not use it.
4558
+ # Corresponds to the JSON property `name`
4559
+ # @return [String]
4560
+ attr_accessor :name
4561
+
4562
+ def initialize(**args)
4563
+ update!(**args)
4564
+ end
4565
+
4566
+ # Update properties of this object
4567
+ def update!(**args)
4568
+ @name = args[:name] if args.key?(:name)
4569
+ end
4570
+ end
4571
+
4448
4572
  #
4449
4573
  class CacheInvalidationRule
4450
4574
  include Google::Apis::Core::Hashable
@@ -5614,8 +5738,13 @@ module Google
5614
5738
  # The source disk used to create this disk. You can provide this as a partial or
5615
5739
  # full URL to the resource. For example, the following are valid values:
5616
5740
  # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
5741
+ #
5742
+ # - https://www.googleapis.com/compute/v1/projects/project/regions/region/disks/
5743
+ # disk
5617
5744
  # - projects/project/zones/zone/disks/disk
5745
+ # - projects/project/regions/region/disks/disk
5618
5746
  # - zones/zone/disks/disk
5747
+ # - regions/region/disks/disk
5619
5748
  # Corresponds to the JSON property `sourceDisk`
5620
5749
  # @return [String]
5621
5750
  attr_accessor :source_disk
@@ -7748,13 +7877,14 @@ module Google
7748
7877
  # @return [String]
7749
7878
  attr_accessor :description
7750
7879
 
7751
- # User-provided name of the Organization firewall plicy. The name should be
7752
- # unique in the organization in which the firewall policy is created. The name
7753
- # must be 1-63 characters long, and comply with RFC1035. Specifically, the name
7754
- # must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*
7755
- # [a-z0-9])?` which means the first character must be a lowercase letter, and
7756
- # all following characters must be a dash, lowercase letter, or digit, except
7757
- # the last character, which cannot be a dash.
7880
+ # Depreacted, please use short name instead. User-provided name of the
7881
+ # Organization firewall plicy. The name should be unique in the organization in
7882
+ # which the firewall policy is created. The name must be 1-63 characters long,
7883
+ # and comply with RFC1035. Specifically, the name must be 1-63 characters long
7884
+ # and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the
7885
+ # first character must be a lowercase letter, and all following characters must
7886
+ # be a dash, lowercase letter, or digit, except the last character, which cannot
7887
+ # be a dash.
7758
7888
  # Corresponds to the JSON property `displayName`
7759
7889
  # @return [String]
7760
7890
  attr_accessor :display_name
@@ -7818,6 +7948,17 @@ module Google
7818
7948
  # @return [String]
7819
7949
  attr_accessor :self_link_with_id
7820
7950
 
7951
+ # User-provided name of the Organization firewall plicy. The name should be
7952
+ # unique in the organization in which the firewall policy is created. The name
7953
+ # must be 1-63 characters long, and comply with RFC1035. Specifically, the name
7954
+ # must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*
7955
+ # [a-z0-9])?` which means the first character must be a lowercase letter, and
7956
+ # all following characters must be a dash, lowercase letter, or digit, except
7957
+ # the last character, which cannot be a dash.
7958
+ # Corresponds to the JSON property `shortName`
7959
+ # @return [String]
7960
+ attr_accessor :short_name
7961
+
7821
7962
  def initialize(**args)
7822
7963
  update!(**args)
7823
7964
  end
@@ -7837,6 +7978,7 @@ module Google
7837
7978
  @rules = args[:rules] if args.key?(:rules)
7838
7979
  @self_link = args[:self_link] if args.key?(:self_link)
7839
7980
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
7981
+ @short_name = args[:short_name] if args.key?(:short_name)
7840
7982
  end
7841
7983
  end
7842
7984
 
@@ -7849,7 +7991,8 @@ module Google
7849
7991
  # @return [String]
7850
7992
  attr_accessor :attachment_target
7851
7993
 
7852
- # [Output Only] The display name of the firewall policy of the association.
7994
+ # [Output Only] Deprecated, please use short name instead. The display name of
7995
+ # the firewall policy of the association.
7853
7996
  # Corresponds to the JSON property `displayName`
7854
7997
  # @return [String]
7855
7998
  attr_accessor :display_name
@@ -7864,6 +8007,11 @@ module Google
7864
8007
  # @return [String]
7865
8008
  attr_accessor :name
7866
8009
 
8010
+ # [Output Only] The short name of the firewall policy of the association.
8011
+ # Corresponds to the JSON property `shortName`
8012
+ # @return [String]
8013
+ attr_accessor :short_name
8014
+
7867
8015
  def initialize(**args)
7868
8016
  update!(**args)
7869
8017
  end
@@ -7874,6 +8022,7 @@ module Google
7874
8022
  @display_name = args[:display_name] if args.key?(:display_name)
7875
8023
  @firewall_policy_id = args[:firewall_policy_id] if args.key?(:firewall_policy_id)
7876
8024
  @name = args[:name] if args.key?(:name)
8025
+ @short_name = args[:short_name] if args.key?(:short_name)
7877
8026
  end
7878
8027
  end
7879
8028
 
@@ -8243,6 +8392,8 @@ module Google
8243
8392
  # ip_address_specifications).
8244
8393
  # Must be set to `0.0.0.0` when the target is targetGrpcProxy that has
8245
8394
  # validateForProxyless field set to true.
8395
+ # For Private Service Connect forwarding rules that forward traffic to Google
8396
+ # APIs, IP address must be provided.
8246
8397
  # Corresponds to the JSON property `IPAddress`
8247
8398
  # @return [String]
8248
8399
  attr_accessor :ip_address
@@ -8415,6 +8566,8 @@ module Google
8415
8566
  # For Internal TCP/UDP Load Balancing, this field identifies the network that
8416
8567
  # the load balanced IP should belong to for this Forwarding Rule. If this field
8417
8568
  # is not specified, the default network will be used.
8569
+ # For Private Service Connect forwarding rules that forward traffic to Google
8570
+ # APIs, a network must be provided.
8418
8571
  # Corresponds to the JSON property `network`
8419
8572
  # @return [String]
8420
8573
  attr_accessor :network
@@ -8519,12 +8672,7 @@ module Google
8519
8672
  # @return [String]
8520
8673
  attr_accessor :subnetwork
8521
8674
 
8522
- # The URL of the target resource to receive the matched traffic. For regional
8523
- # forwarding rules, this target must be in the same region as the forwarding
8524
- # rule. For global forwarding rules, this target must be a global load balancing
8525
- # resource. The forwarded traffic must be of a type appropriate to the target
8526
- # object. For more information, see the "Target" column in [Port specifications](
8527
- # /load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).
8675
+ #
8528
8676
  # Corresponds to the JSON property `target`
8529
8677
  # @return [String]
8530
8678
  attr_accessor :target
@@ -9617,11 +9765,12 @@ module Google
9617
9765
  attr_accessor :log_config
9618
9766
 
9619
9767
  # Name of the resource. Provided by the client when the resource is created. The
9620
- # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
9621
- # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
9622
- # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
9623
- # and all following characters must be a dash, lowercase letter, or digit,
9624
- # except the last character, which cannot be a dash.
9768
+ # name must be 1-63 characters long, and comply with RFC1035. For example, a
9769
+ # name that is 1-63 characters long, matches the regular expression `[a-z]([-a-
9770
+ # z0-9]*[a-z0-9])?`, and otherwise complies with RFC1035. This regular
9771
+ # expression describes a name where the first character is a lowercase letter,
9772
+ # and all following characters are a dash, lowercase letter, or digit, except
9773
+ # the last character, which isn't a dash.
9625
9774
  # Corresponds to the JSON property `name`
9626
9775
  # @return [String]
9627
9776
  attr_accessor :name
@@ -10358,6 +10507,16 @@ module Google
10358
10507
  # @return [Hash<String,String>]
10359
10508
  attr_accessor :annotations
10360
10509
 
10510
+ # URL of the forwarding rule associated with the health status of the instance.
10511
+ # Corresponds to the JSON property `forwardingRule`
10512
+ # @return [String]
10513
+ attr_accessor :forwarding_rule
10514
+
10515
+ # A forwarding rule IP address assigned to this instance.
10516
+ # Corresponds to the JSON property `forwardingRuleIp`
10517
+ # @return [String]
10518
+ attr_accessor :forwarding_rule_ip
10519
+
10361
10520
  # Health state of the instance.
10362
10521
  # Corresponds to the JSON property `healthState`
10363
10522
  # @return [String]
@@ -10398,6 +10557,8 @@ module Google
10398
10557
  # Update properties of this object
10399
10558
  def update!(**args)
10400
10559
  @annotations = args[:annotations] if args.key?(:annotations)
10560
+ @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
10561
+ @forwarding_rule_ip = args[:forwarding_rule_ip] if args.key?(:forwarding_rule_ip)
10401
10562
  @health_state = args[:health_state] if args.key?(:health_state)
10402
10563
  @instance = args[:instance] if args.key?(:instance)
10403
10564
  @ip_address = args[:ip_address] if args.key?(:ip_address)
@@ -11232,6 +11393,14 @@ module Google
11232
11393
  # @return [Google::Apis::ComputeBeta::HttpFaultInjection]
11233
11394
  attr_accessor :fault_injection_policy
11234
11395
 
11396
+ # A Duration represents a fixed-length span of time represented as a count of
11397
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
11398
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
11399
+ # 000 years.
11400
+ # Corresponds to the JSON property `maxStreamDuration`
11401
+ # @return [Google::Apis::ComputeBeta::Duration]
11402
+ attr_accessor :max_stream_duration
11403
+
11235
11404
  # A policy that specifies how requests intended for the route's backends are
11236
11405
  # shadowed to a separate mirrored backend service. Loadbalancer does not wait
11237
11406
  # for responses from the shadow service. Prior to sending traffic to the shadow
@@ -11280,6 +11449,7 @@ module Google
11280
11449
  def update!(**args)
11281
11450
  @cors_policy = args[:cors_policy] if args.key?(:cors_policy)
11282
11451
  @fault_injection_policy = args[:fault_injection_policy] if args.key?(:fault_injection_policy)
11452
+ @max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration)
11283
11453
  @request_mirror_policy = args[:request_mirror_policy] if args.key?(:request_mirror_policy)
11284
11454
  @retry_policy = args[:retry_policy] if args.key?(:retry_policy)
11285
11455
  @timeout = args[:timeout] if args.key?(:timeout)
@@ -12012,6 +12182,27 @@ module Google
12012
12182
  end
12013
12183
  end
12014
12184
 
12185
+ #
12186
+ class ImageFamilyView
12187
+ include Google::Apis::Core::Hashable
12188
+
12189
+ # Represents an Image resource.
12190
+ # You can use images to create boot disks for your VM instances. For more
12191
+ # information, read Images. (== resource_for `$api_version`.images ==)
12192
+ # Corresponds to the JSON property `image`
12193
+ # @return [Google::Apis::ComputeBeta::Image]
12194
+ attr_accessor :image
12195
+
12196
+ def initialize(**args)
12197
+ update!(**args)
12198
+ end
12199
+
12200
+ # Update properties of this object
12201
+ def update!(**args)
12202
+ @image = args[:image] if args.key?(:image)
12203
+ end
12204
+ end
12205
+
12015
12206
  # Contains a list of images.
12016
12207
  class ImageList
12017
12208
  include Google::Apis::Core::Hashable
@@ -12355,6 +12546,11 @@ module Google
12355
12546
  # @return [Google::Apis::ComputeBeta::NetworkPerformanceConfig]
12356
12547
  attr_accessor :network_performance_config
12357
12548
 
12549
+ # PostKeyRevocationActionType of the instance.
12550
+ # Corresponds to the JSON property `postKeyRevocationActionType`
12551
+ # @return [String]
12552
+ attr_accessor :post_key_revocation_action_type
12553
+
12358
12554
  # The private IPv6 google access type for the VM. If not specified, use
12359
12555
  # INHERIT_FROM_SUBNETWORK as default.
12360
12556
  # Corresponds to the JSON property `privateIpv6GoogleAccess`
@@ -12377,7 +12573,7 @@ module Google
12377
12573
  attr_accessor :satisfies_pzs
12378
12574
  alias_method :satisfies_pzs?, :satisfies_pzs
12379
12575
 
12380
- # Sets the scheduling options for an Instance. NextID: 17
12576
+ # Sets the scheduling options for an Instance. NextID: 20
12381
12577
  # Corresponds to the JSON property `scheduling`
12382
12578
  # @return [Google::Apis::ComputeBeta::Scheduling]
12383
12579
  attr_accessor :scheduling
@@ -12423,7 +12619,8 @@ module Google
12423
12619
  # @return [String]
12424
12620
  attr_accessor :source_machine_image
12425
12621
 
12426
- # Source GMI encryption key when creating an instance from GMI.
12622
+ # Source machine image encryption key when creating an instance from a machine
12623
+ # image.
12427
12624
  # Corresponds to the JSON property `sourceMachineImageEncryptionKey`
12428
12625
  # @return [Google::Apis::ComputeBeta::CustomerEncryptionKey]
12429
12626
  attr_accessor :source_machine_image_encryption_key
@@ -12492,6 +12689,7 @@ module Google
12492
12689
  @name = args[:name] if args.key?(:name)
12493
12690
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
12494
12691
  @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
12692
+ @post_key_revocation_action_type = args[:post_key_revocation_action_type] if args.key?(:post_key_revocation_action_type)
12495
12693
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
12496
12694
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
12497
12695
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
@@ -15137,7 +15335,7 @@ module Google
15137
15335
  # @return [Array<String>]
15138
15336
  attr_accessor :resource_policies
15139
15337
 
15140
- # Sets the scheduling options for an Instance. NextID: 17
15338
+ # Sets the scheduling options for an Instance. NextID: 20
15141
15339
  # Corresponds to the JSON property `scheduling`
15142
15340
  # @return [Google::Apis::ComputeBeta::Scheduling]
15143
15341
  attr_accessor :scheduling
@@ -15503,7 +15701,8 @@ module Google
15503
15701
  class InstancesGetEffectiveFirewallsResponseEffectiveFirewallPolicy
15504
15702
  include Google::Apis::Core::Hashable
15505
15703
 
15506
- # [Output Only] The display name of the firewall policy.
15704
+ # [Output Only] Deprecated, please use short name instead. The display name of
15705
+ # the firewall policy.
15507
15706
  # Corresponds to the JSON property `displayName`
15508
15707
  # @return [String]
15509
15708
  attr_accessor :display_name
@@ -15518,6 +15717,11 @@ module Google
15518
15717
  # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRule>]
15519
15718
  attr_accessor :rules
15520
15719
 
15720
+ # [Output Only] The short name of the firewall policy.
15721
+ # Corresponds to the JSON property `shortName`
15722
+ # @return [String]
15723
+ attr_accessor :short_name
15724
+
15521
15725
  # [Output Only] The type of the firewall policy.
15522
15726
  # Corresponds to the JSON property `type`
15523
15727
  # @return [String]
@@ -15532,6 +15736,7 @@ module Google
15532
15736
  @display_name = args[:display_name] if args.key?(:display_name)
15533
15737
  @name = args[:name] if args.key?(:name)
15534
15738
  @rules = args[:rules] if args.key?(:rules)
15739
+ @short_name = args[:short_name] if args.key?(:short_name)
15535
15740
  @type = args[:type] if args.key?(:type)
15536
15741
  end
15537
15742
  end
@@ -16197,6 +16402,19 @@ module Google
16197
16402
  # @return [String]
16198
16403
  attr_accessor :edge_availability_domain
16199
16404
 
16405
+ # Indicates the user-supplied encryption option of this interconnect attachment:
16406
+ # - NONE is the default value, which means that the attachment carries
16407
+ # unencrypted traffic. VMs can send traffic to, or receive traffic from, this
16408
+ # type of attachment.
16409
+ # - IPSEC indicates that the attachment carries only traffic encrypted by an
16410
+ # IPsec device such as an HA VPN gateway. VMs cannot directly send traffic to,
16411
+ # or receive traffic from, such an attachment. To use IPsec-encrypted Cloud
16412
+ # Interconnect, create the attachment using this option.
16413
+ # Not currently available in all Interconnect locations.
16414
+ # Corresponds to the JSON property `encryption`
16415
+ # @return [String]
16416
+ attr_accessor :encryption
16417
+
16200
16418
  # [Output Only] Google reference ID, to be used when raising support tickets
16201
16419
  # with Google or otherwise to debug backend connectivity issues. [Deprecated]
16202
16420
  # This field is not used.
@@ -16216,6 +16434,23 @@ module Google
16216
16434
  # @return [String]
16217
16435
  attr_accessor :interconnect
16218
16436
 
16437
+ # URL of addresses that have been reserved for the interconnect attachment, Used
16438
+ # only for interconnect attachment that has the encryption option as IPSEC. The
16439
+ # addresses must be RFC 1918 IP address ranges. When creating HA VPN gateway
16440
+ # over the interconnect attachment, if the attachment is configured to use an
16441
+ # RFC 1918 IP address, then the VPN gateway?s IP address will be allocated from
16442
+ # the IP address range specified here. For example, if the HA VPN gateway?s
16443
+ # interface 0 is paired to this interconnect attachment, then an RFC 1918 IP
16444
+ # address for the VPN gateway interface 0 will be allocated from the IP address
16445
+ # specified for this interconnect attachment. If this field is not specified for
16446
+ # interconnect attachment that has encryption option as IPSEC, later on when
16447
+ # creating HA VPN gateway on this interconnect attachment, the HA VPN gateway's
16448
+ # IP address will be allocated from regional external IP address pool.
16449
+ # Not currently available in all Interconnect locations.
16450
+ # Corresponds to the JSON property `ipsecInternalAddresses`
16451
+ # @return [Array<String>]
16452
+ attr_accessor :ipsec_internal_addresses
16453
+
16219
16454
  # [Output Only] Type of the resource. Always compute#interconnectAttachment for
16220
16455
  # interconnect attachments.
16221
16456
  # Corresponds to the JSON property `kind`
@@ -16370,9 +16605,11 @@ module Google
16370
16605
  @dataplane_version = args[:dataplane_version] if args.key?(:dataplane_version)
16371
16606
  @description = args[:description] if args.key?(:description)
16372
16607
  @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
16608
+ @encryption = args[:encryption] if args.key?(:encryption)
16373
16609
  @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id)
16374
16610
  @id = args[:id] if args.key?(:id)
16375
16611
  @interconnect = args[:interconnect] if args.key?(:interconnect)
16612
+ @ipsec_internal_addresses = args[:ipsec_internal_addresses] if args.key?(:ipsec_internal_addresses)
16376
16613
  @kind = args[:kind] if args.key?(:kind)
16377
16614
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
16378
16615
  @labels = args[:labels] if args.key?(:labels)
@@ -17878,6 +18115,47 @@ module Google
17878
18115
  end
17879
18116
  end
17880
18117
 
18118
+ # Configuration for location policy among multiple possible locations (e.g.
18119
+ # preferences for zone selection among zones in a single region).
18120
+ class LocationPolicy
18121
+ include Google::Apis::Core::Hashable
18122
+
18123
+ # Location configurations mapped by location name. Currently only zone names are
18124
+ # supported and must be represented as valid internal URLs, like: zones/us-
18125
+ # central1-a.
18126
+ # Corresponds to the JSON property `locations`
18127
+ # @return [Hash<String,Google::Apis::ComputeBeta::LocationPolicyLocation>]
18128
+ attr_accessor :locations
18129
+
18130
+ def initialize(**args)
18131
+ update!(**args)
18132
+ end
18133
+
18134
+ # Update properties of this object
18135
+ def update!(**args)
18136
+ @locations = args[:locations] if args.key?(:locations)
18137
+ end
18138
+ end
18139
+
18140
+ #
18141
+ class LocationPolicyLocation
18142
+ include Google::Apis::Core::Hashable
18143
+
18144
+ #
18145
+ # Corresponds to the JSON property `preference`
18146
+ # @return [String]
18147
+ attr_accessor :preference
18148
+
18149
+ def initialize(**args)
18150
+ update!(**args)
18151
+ end
18152
+
18153
+ # Update properties of this object
18154
+ def update!(**args)
18155
+ @preference = args[:preference] if args.key?(:preference)
18156
+ end
18157
+ end
18158
+
17881
18159
  # Specifies what kind of log the caller must write
17882
18160
  class LogConfig
17883
18161
  include Google::Apis::Core::Hashable
@@ -20214,8 +20492,9 @@ module Google
20214
20492
 
20215
20493
  # Fingerprint hash of contents stored in this network interface. This field will
20216
20494
  # be ignored when inserting an Instance or adding a NetworkInterface. An up-to-
20217
- # date fingerprint must be provided in order to update the NetworkInterface,
20218
- # otherwise the request will fail with error 412 conditionNotMet.
20495
+ # date fingerprint must be provided in order to update the NetworkInterface. The
20496
+ # request will fail with error 400 Bad Request if the fingerprint is not
20497
+ # provided, or 412 Precondition Failed if the fingerprint is out of date.
20219
20498
  # Corresponds to the JSON property `fingerprint`
20220
20499
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
20221
20500
  # @return [String]
@@ -20648,7 +20927,8 @@ module Google
20648
20927
  class NetworksGetEffectiveFirewallsResponseEffectiveFirewallPolicy
20649
20928
  include Google::Apis::Core::Hashable
20650
20929
 
20651
- # [Output Only] The display name of the firewall policy.
20930
+ # [Output Only] Deprecated, please use short name instead. The display name of
20931
+ # the firewall policy.
20652
20932
  # Corresponds to the JSON property `displayName`
20653
20933
  # @return [String]
20654
20934
  attr_accessor :display_name
@@ -20663,6 +20943,11 @@ module Google
20663
20943
  # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRule>]
20664
20944
  attr_accessor :rules
20665
20945
 
20946
+ # [Output Only] The short name of the firewall policy.
20947
+ # Corresponds to the JSON property `shortName`
20948
+ # @return [String]
20949
+ attr_accessor :short_name
20950
+
20666
20951
  # [Output Only] The type of the firewall policy.
20667
20952
  # Corresponds to the JSON property `type`
20668
20953
  # @return [String]
@@ -20677,6 +20962,7 @@ module Google
20677
20962
  @display_name = args[:display_name] if args.key?(:display_name)
20678
20963
  @name = args[:name] if args.key?(:name)
20679
20964
  @rules = args[:rules] if args.key?(:rules)
20965
+ @short_name = args[:short_name] if args.key?(:short_name)
20680
20966
  @type = args[:type] if args.key?(:type)
20681
20967
  end
20682
20968
  end
@@ -22772,6 +23058,12 @@ module Google
22772
23058
  # @return [String]
22773
23059
  attr_accessor :name
22774
23060
 
23061
+ # [Output Only] An ID that represents a group of operations, such as when a
23062
+ # group of operations results from a `bulkInsert` API request.
23063
+ # Corresponds to the JSON property `operationGroupId`
23064
+ # @return [String]
23065
+ attr_accessor :operation_group_id
23066
+
22775
23067
  # [Output Only] The type of operation, such as `insert`, `update`, or `delete`,
22776
23068
  # and so on.
22777
23069
  # Corresponds to the JSON property `operationType`
@@ -22863,6 +23155,7 @@ module Google
22863
23155
  @insert_time = args[:insert_time] if args.key?(:insert_time)
22864
23156
  @kind = args[:kind] if args.key?(:kind)
22865
23157
  @name = args[:name] if args.key?(:name)
23158
+ @operation_group_id = args[:operation_group_id] if args.key?(:operation_group_id)
22866
23159
  @operation_type = args[:operation_type] if args.key?(:operation_type)
22867
23160
  @progress = args[:progress] if args.key?(:progress)
22868
23161
  @region = args[:region] if args.key?(:region)
@@ -28890,6 +29183,14 @@ module Google
28890
29183
  # @return [String]
28891
29184
  attr_accessor :description
28892
29185
 
29186
+ # Field to indicate if a router is dedicated to use with encrypted Interconnect
29187
+ # Attachment (IPsec-encrypted Cloud Interconnect feature).
29188
+ # Not currently available in all Interconnect locations.
29189
+ # Corresponds to the JSON property `encryptedInterconnectRouter`
29190
+ # @return [Boolean]
29191
+ attr_accessor :encrypted_interconnect_router
29192
+ alias_method :encrypted_interconnect_router?, :encrypted_interconnect_router
29193
+
28893
29194
  # [Output Only] The unique identifier for the resource. This identifier is
28894
29195
  # defined by the server.
28895
29196
  # Corresponds to the JSON property `id`
@@ -28950,6 +29251,7 @@ module Google
28950
29251
  @bgp_peers = args[:bgp_peers] if args.key?(:bgp_peers)
28951
29252
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
28952
29253
  @description = args[:description] if args.key?(:description)
29254
+ @encrypted_interconnect_router = args[:encrypted_interconnect_router] if args.key?(:encrypted_interconnect_router)
28953
29255
  @id = args[:id] if args.key?(:id)
28954
29256
  @interfaces = args[:interfaces] if args.key?(:interfaces)
28955
29257
  @kind = args[:kind] if args.key?(:kind)
@@ -29150,7 +29452,7 @@ module Google
29150
29452
  # successive keepalive messages that BGP receives from a peer.
29151
29453
  # BGP will use the smaller of either the local hold time value or the peer's
29152
29454
  # hold time value as the hold time for the BGP connection between the two peers.
29153
- # If set, this value must be between 1 and 120. The default is 20.
29455
+ # If set, this value must be between 20 and 60. The default is 20.
29154
29456
  # Corresponds to the JSON property `keepaliveInterval`
29155
29457
  # @return [Fixnum]
29156
29458
  attr_accessor :keepalive_interval
@@ -29181,12 +29483,11 @@ module Google
29181
29483
  # User-specified list of prefix groups to advertise in custom mode, which can
29182
29484
  # take one of the following options:
29183
29485
  # - ALL_SUBNETS: Advertises all available subnets, including peer VPC subnets.
29184
- # - ALL_VPC_SUBNETS: Advertises the router's own VPC subnets.
29185
- # - ALL_PEER_VPC_SUBNETS: Advertises peer subnets of the router's VPC network.
29186
- # Note that this field can only be populated if advertise_mode is CUSTOM and
29187
- # overrides the list defined for the router (in the "bgp" message). These groups
29188
- # are advertised in addition to any specified prefixes. Leave this field blank
29189
- # to advertise no custom groups.
29486
+ # - ALL_VPC_SUBNETS: Advertises the router's own VPC subnets. Note that this
29487
+ # field can only be populated if advertise_mode is CUSTOM and overrides the list
29488
+ # defined for the router (in the "bgp" message). These groups are advertised in
29489
+ # addition to any specified prefixes. Leave this field blank to advertise no
29490
+ # custom groups.
29190
29491
  # Corresponds to the JSON property `advertisedGroups`
29191
29492
  # @return [Array<String>]
29192
29493
  attr_accessor :advertised_groups
@@ -29266,6 +29567,14 @@ module Google
29266
29567
  # @return [String]
29267
29568
  attr_accessor :peer_ip_address
29268
29569
 
29570
+ # URI of the VM instance that is used as third-party router appliances such as
29571
+ # Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance
29572
+ # must be located in zones contained in the same region as this Cloud Router.
29573
+ # The VM instance is the peer side of the BGP session.
29574
+ # Corresponds to the JSON property `routerApplianceInstance`
29575
+ # @return [String]
29576
+ attr_accessor :router_appliance_instance
29577
+
29269
29578
  def initialize(**args)
29270
29579
  update!(**args)
29271
29580
  end
@@ -29284,6 +29593,7 @@ module Google
29284
29593
  @name = args[:name] if args.key?(:name)
29285
29594
  @peer_asn = args[:peer_asn] if args.key?(:peer_asn)
29286
29595
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
29596
+ @router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance)
29287
29597
  end
29288
29598
  end
29289
29599
 
@@ -29391,6 +29701,35 @@ module Google
29391
29701
  # @return [String]
29392
29702
  attr_accessor :name
29393
29703
 
29704
+ # The regional private internal IP address that is used to establish BGP
29705
+ # sessions to a VM instance acting as a third-party Router Appliance, such as a
29706
+ # Next Gen Firewall, a Virtual Router, or an SD-WAN VM.
29707
+ # Corresponds to the JSON property `privateIpAddress`
29708
+ # @return [String]
29709
+ attr_accessor :private_ip_address
29710
+
29711
+ # Name of the interface that will be redundant with the current interface you
29712
+ # are creating. The redundantInterface must belong to the same Cloud Router as
29713
+ # the interface here. To establish the BGP session to a Router Appliance VM, you
29714
+ # must create two BGP peers. The two BGP peers must be attached to two separate
29715
+ # interfaces that are redundant with each other. The redundant_interface must be
29716
+ # 1-63 characters long, and comply with RFC1035. Specifically, the
29717
+ # redundant_interface must be 1-63 characters long and match the regular
29718
+ # expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must
29719
+ # be a lowercase letter, and all following characters must be a dash, lowercase
29720
+ # letter, or digit, except the last character, which cannot be a dash.
29721
+ # Corresponds to the JSON property `redundantInterface`
29722
+ # @return [String]
29723
+ attr_accessor :redundant_interface
29724
+
29725
+ # The URL of the subnetwork resource that this interface belongs to, which must
29726
+ # be in the same region as the Cloud Router. When you establish a BGP session to
29727
+ # a VM instance using this interface, the VM instance must belong to the same
29728
+ # subnetwork as the subnetwork specified here.
29729
+ # Corresponds to the JSON property `subnetwork`
29730
+ # @return [String]
29731
+ attr_accessor :subnetwork
29732
+
29394
29733
  def initialize(**args)
29395
29734
  update!(**args)
29396
29735
  end
@@ -29402,6 +29741,9 @@ module Google
29402
29741
  @linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel)
29403
29742
  @management_type = args[:management_type] if args.key?(:management_type)
29404
29743
  @name = args[:name] if args.key?(:name)
29744
+ @private_ip_address = args[:private_ip_address] if args.key?(:private_ip_address)
29745
+ @redundant_interface = args[:redundant_interface] if args.key?(:redundant_interface)
29746
+ @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
29405
29747
  end
29406
29748
  end
29407
29749
 
@@ -29792,6 +30134,13 @@ module Google
29792
30134
  # @return [String]
29793
30135
  attr_accessor :peer_ip_address
29794
30136
 
30137
+ # [Output only] URI of the VM instance that is used as third-party router
30138
+ # appliances such as Next Gen Firewalls, Virtual Routers, or Router Appliances.
30139
+ # The VM instance is the peer side of the BGP session.
30140
+ # Corresponds to the JSON property `routerApplianceInstance`
30141
+ # @return [String]
30142
+ attr_accessor :router_appliance_instance
30143
+
29795
30144
  # BGP state as specified in RFC1771.
29796
30145
  # Corresponds to the JSON property `state`
29797
30146
  # @return [String]
@@ -29826,6 +30175,7 @@ module Google
29826
30175
  @name = args[:name] if args.key?(:name)
29827
30176
  @num_learned_routes = args[:num_learned_routes] if args.key?(:num_learned_routes)
29828
30177
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
30178
+ @router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance)
29829
30179
  @state = args[:state] if args.key?(:state)
29830
30180
  @status = args[:status] if args.key?(:status)
29831
30181
  @uptime = args[:uptime] if args.key?(:uptime)
@@ -30319,7 +30669,7 @@ module Google
30319
30669
  end
30320
30670
  end
30321
30671
 
30322
- # Sets the scheduling options for an Instance. NextID: 17
30672
+ # Sets the scheduling options for an Instance. NextID: 20
30323
30673
  class Scheduling
30324
30674
  include Google::Apis::Core::Hashable
30325
30675
 
@@ -30853,7 +31203,7 @@ module Google
30853
31203
  class SecurityPolicyRule
30854
31204
  include Google::Apis::Core::Hashable
30855
31205
 
30856
- # The Action to preform when the client connection triggers the rule. Can
31206
+ # The Action to perform when the client connection triggers the rule. Can
30857
31207
  # currently be either "allow" or "deny()" where valid values for status are 403,
30858
31208
  # 404, and 502.
30859
31209
  # Corresponds to the JSON property `action`
@@ -31224,7 +31574,7 @@ module Google
31224
31574
  # A service attachment represents a service that a producer has exposed. It
31225
31575
  # encapsulates the load balancer which fronts the service runs and a list of NAT
31226
31576
  # IP ranges that the producers uses to represent the consumers connecting to the
31227
- # service. next tag = 16
31577
+ # service. next tag = 17
31228
31578
  class ServiceAttachment
31229
31579
  include Google::Apis::Core::Hashable
31230
31580
 
@@ -32401,7 +32751,7 @@ module Google
32401
32751
  # @return [String]
32402
32752
  attr_accessor :post_key_revocation_action_type
32403
32753
 
32404
- # Sets the scheduling options for an Instance. NextID: 17
32754
+ # Sets the scheduling options for an Instance. NextID: 20
32405
32755
  # Corresponds to the JSON property `scheduling`
32406
32756
  # @return [Google::Apis::ComputeBeta::Scheduling]
32407
32757
  attr_accessor :scheduling
@@ -33425,9 +33775,9 @@ module Google
33425
33775
  # The range of internal addresses that are owned by this subnetwork. Provide
33426
33776
  # this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.
33427
33777
  # 64.0.0/10. Ranges must be unique and non-overlapping within a network. Only
33428
- # IPv4 is supported. This field is set at resource creation time. This may be a
33429
- # RFC 1918 IP range, or a privately routed, non-RFC 1918 IP range, not belonging
33430
- # to Google. The range can be expanded after creation using expandIpCidrRange.
33778
+ # IPv4 is supported. This field is set at resource creation time. The range can
33779
+ # be any range listed in the Valid ranges list. The range can be expanded after
33780
+ # creation using expandIpCidrRange.
33431
33781
  # Corresponds to the JSON property `ipCidrRange`
33432
33782
  # @return [String]
33433
33783
  attr_accessor :ip_cidr_range
@@ -33843,7 +34193,7 @@ module Google
33843
34193
 
33844
34194
  # Can only be specified if VPC flow logs for this subnetwork is enabled.
33845
34195
  # Configures whether all, none or a subset of metadata fields should be added to
33846
- # the reported VPC flow logs. Default is INCLUDE_ALL_METADATA.
34196
+ # the reported VPC flow logs. Default is EXCLUDE_ALL_METADATA.
33847
34197
  # Corresponds to the JSON property `metadata`
33848
34198
  # @return [String]
33849
34199
  attr_accessor :metadata
@@ -33876,8 +34226,8 @@ module Google
33876
34226
  # The range of IP addresses belonging to this subnetwork secondary range.
33877
34227
  # Provide this property when you create the subnetwork. Ranges must be unique
33878
34228
  # and non-overlapping with all primary and secondary IP ranges within a network.
33879
- # Only IPv4 is supported. This may be a RFC 1918 IP range, or a privately, non-
33880
- # RFC 1918 IP range, not belonging to Google.
34229
+ # Only IPv4 is supported. The range can be any range listed in the Valid ranges
34230
+ # list.
33881
34231
  # Corresponds to the JSON property `ipCidrRange`
33882
34232
  # @return [String]
33883
34233
  attr_accessor :ip_cidr_range
@@ -34031,6 +34381,25 @@ module Google
34031
34381
  end
34032
34382
  end
34033
34383
 
34384
+ # Subsetting options to make L4 ILB support any number of backend instances
34385
+ class Subsetting
34386
+ include Google::Apis::Core::Hashable
34387
+
34388
+ #
34389
+ # Corresponds to the JSON property `policy`
34390
+ # @return [String]
34391
+ attr_accessor :policy
34392
+
34393
+ def initialize(**args)
34394
+ update!(**args)
34395
+ end
34396
+
34397
+ # Update properties of this object
34398
+ def update!(**args)
34399
+ @policy = args[:policy] if args.key?(:policy)
34400
+ end
34401
+ end
34402
+
34034
34403
  #
34035
34404
  class TcpHealthCheck
34036
34405
  include Google::Apis::Core::Hashable
@@ -34980,6 +35349,17 @@ module Google
34980
35349
  # @return [String]
34981
35350
  attr_accessor :description
34982
35351
 
35352
+ # Fingerprint of this resource. A hash of the contents stored in this object.
35353
+ # This field is used in optimistic locking. This field will be ignored when
35354
+ # inserting a TargetHttpsProxy. An up-to-date fingerprint must be provided in
35355
+ # order to patch the TargetHttpsProxy; otherwise, the request will fail with
35356
+ # error 412 conditionNotMet. To see the latest fingerprint, make a get() request
35357
+ # to retrieve the TargetHttpsProxy.
35358
+ # Corresponds to the JSON property `fingerprint`
35359
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
35360
+ # @return [String]
35361
+ attr_accessor :fingerprint
35362
+
34983
35363
  # URLs to networkservices.HttpFilter resources enabled for xDS clients using
34984
35364
  # this configuration. For example, https://networkservices.googleapis.com/beta/
34985
35365
  # projects/project/locations/locationhttpFilters/httpFilter Only filters that
@@ -35099,6 +35479,7 @@ module Google
35099
35479
  @authorization_policy = args[:authorization_policy] if args.key?(:authorization_policy)
35100
35480
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
35101
35481
  @description = args[:description] if args.key?(:description)
35482
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
35102
35483
  @http_filters = args[:http_filters] if args.key?(:http_filters)
35103
35484
  @id = args[:id] if args.key?(:id)
35104
35485
  @kind = args[:kind] if args.key?(:kind)
@@ -39072,6 +39453,15 @@ module Google
39072
39453
  # @return [Fixnum]
39073
39454
  attr_accessor :id
39074
39455
 
39456
+ # URL of the interconnect attachment resource. When the value of this field is
39457
+ # present, the VPN Gateway will be used for IPsec-encrypted Cloud Interconnect;
39458
+ # all Egress or Ingress traffic for this VPN Gateway interface will go through
39459
+ # the specified interconnect attachment resource.
39460
+ # Not currently available in all Interconnect locations.
39461
+ # Corresponds to the JSON property `interconnectAttachment`
39462
+ # @return [String]
39463
+ attr_accessor :interconnect_attachment
39464
+
39075
39465
  # [Output Only] The external IP address for this VPN gateway interface.
39076
39466
  # Corresponds to the JSON property `ipAddress`
39077
39467
  # @return [String]
@@ -39084,6 +39474,7 @@ module Google
39084
39474
  # Update properties of this object
39085
39475
  def update!(**args)
39086
39476
  @id = args[:id] if args.key?(:id)
39477
+ @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment)
39087
39478
  @ip_address = args[:ip_address] if args.key?(:ip_address)
39088
39479
  end
39089
39480
  end
@@ -39349,8 +39740,8 @@ module Google
39349
39740
  # - DEPROVISIONING: Resources are being deallocated for the VPN tunnel.
39350
39741
  # - FAILED: Tunnel creation has failed and the tunnel is not ready to be used.
39351
39742
  # - NO_INCOMING_PACKETS: No incoming packets from peer.
39352
- # - REJECTED: Tunnel configuration was rejected, can be result of being
39353
- # blacklisted.
39743
+ # - REJECTED: Tunnel configuration was rejected, can be result of being denied
39744
+ # access.
39354
39745
  # - ALLOCATING_RESOURCES: Cloud VPN is in the process of allocating all required
39355
39746
  # resources.
39356
39747
  # - STOPPED: Tunnel is stopped due to its Forwarding Rules being deleted for