google-apis-compute_beta 0.17.0 → 0.18.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d1819daf0e7477afc6963e03a4d46068f643cfddae7f1e1352e8347febce1b07
4
- data.tar.gz: 4ae3d84690880e35a0aaa8ffee89720afdeebfac0c40efbd5275d532f31d9784
3
+ metadata.gz: c455e69ae61c89396d3d562a32849a96432d0b41f78654b17af7545936263b2f
4
+ data.tar.gz: 53dac566659bc1a69475ea2bfdb9ec2b027087dca69beb92773ad28cc33c280b
5
5
  SHA512:
6
- metadata.gz: 6f78ef9c3e156d832aa972c3809e794a891602ddbed699550a0aed3249afde310ef4960e6bf6b5ffd5fc488619d7c96801497f1fa524c450b896dbf0f6274e3e
7
- data.tar.gz: 44041f1ea4ea5d46d30c8a9cef51557a4e9205a3aef9bd37bf7fee0292fe810de9ad87b44ae0b99607da87c602e26b17fe0cf6f36e2ea05f254e01c7e35c4ec9
6
+ metadata.gz: 3182d9c9456f82a1ad22cd5af08eb674b4abd0627a23abe59cac1b5f90f013d101473df59f59c486e3de3f5c1b7953e070a00d41a001dc90d7e59f0015fb5889
7
+ data.tar.gz: 32ee72b009abe0cb49b4d5f096f44408248b7596c9a3c7ee0f067a8b69fbaf12669a9e2f52ee2cc15b514ed3d98b3552db7b6853aaf70f28ee64ea4bee6209cc
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-compute_beta
2
2
 
3
+ ### v0.18.0 (2021-10-01)
4
+
5
+ * Regenerated from discovery document revision 20210920
6
+
3
7
  ### v0.17.0 (2021-09-13)
4
8
 
5
9
  * Regenerated from discovery document revision 20210907
@@ -3774,8 +3774,8 @@ module Google
3774
3774
  # @return [String]
3775
3775
  attr_accessor :connection_persistence_on_unhealthy_backends
3776
3776
 
3777
- # Enable Strong Session Affinity. This is only available in External TCP/UDP
3778
- # load balancer.
3777
+ # Enable Strong Session Affinity for Network Load Balancing. This option is not
3778
+ # available publicly.
3779
3779
  # Corresponds to the JSON property `enableStrongAffinity`
3780
3780
  # @return [Boolean]
3781
3781
  attr_accessor :enable_strong_affinity
@@ -3783,9 +3783,9 @@ module Google
3783
3783
 
3784
3784
  # Specifies how long to keep a Connection Tracking entry while there is no
3785
3785
  # matching traffic (in seconds). For L4 ILB the minimum(default) is 10 minutes
3786
- # and maximum is 16 hours. For NLB the minimum(default) is 60 seconds and the
3787
- # maximum is 16 hours. This field will be supported only if the Connection
3788
- # Tracking key is less than 5-tuple.
3786
+ # and maximum is 16 hours. For Network Load Balancer the default is 60 seconds.
3787
+ # This option is not available publicly. This field will be supported only if
3788
+ # the Connection Tracking key is less than 5-tuple.
3789
3789
  # Corresponds to the JSON property `idleTimeoutSec`
3790
3790
  # @return [Fixnum]
3791
3791
  attr_accessor :idle_timeout_sec
@@ -5482,30 +5482,39 @@ module Google
5482
5482
  class CustomerEncryptionKey
5483
5483
  include Google::Apis::Core::Hashable
5484
5484
 
5485
- # The name of the encryption key that is stored in Google Cloud KMS.
5485
+ # The name of the encryption key that is stored in Google Cloud KMS. For example:
5486
+ # "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/ key_region/
5487
+ # cryptoKeys/key
5486
5488
  # Corresponds to the JSON property `kmsKeyName`
5487
5489
  # @return [String]
5488
5490
  attr_accessor :kms_key_name
5489
5491
 
5490
5492
  # The service account being used for the encryption request for the given KMS
5491
- # key. If absent, the Compute Engine default service account is used.
5493
+ # key. If absent, the Compute Engine default service account is used. For
5494
+ # example: "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
5492
5495
  # Corresponds to the JSON property `kmsKeyServiceAccount`
5493
5496
  # @return [String]
5494
5497
  attr_accessor :kms_key_service_account
5495
5498
 
5496
5499
  # Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648
5497
- # base64 to either encrypt or decrypt this resource.
5500
+ # base64 to either encrypt or decrypt this resource. You can provide either the
5501
+ # rawKey or the rsaEncryptedKey. For example: "rawKey": "
5502
+ # SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
5498
5503
  # Corresponds to the JSON property `rawKey`
5499
5504
  # @return [String]
5500
5505
  attr_accessor :raw_key
5501
5506
 
5502
5507
  # Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied
5503
- # encryption key to either encrypt or decrypt this resource. The key must meet
5504
- # the following requirements before you can provide it to Compute Engine: 1. The
5505
- # key is wrapped using a RSA public key certificate provided by Google. 2. After
5506
- # being wrapped, the key must be encoded in RFC 4648 base64 encoding. Gets the
5507
- # RSA public key certificate provided by Google at: https://cloud-certs.storage.
5508
- # googleapis.com/google-cloud-csek-ingress.pem
5508
+ # encryption key to either encrypt or decrypt this resource. You can provide
5509
+ # either the rawKey or the rsaEncryptedKey. For example: "rsaEncryptedKey": "
5510
+ # ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
5511
+ # z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
5512
+ # D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe==" The
5513
+ # key must meet the following requirements before you can provide it to Compute
5514
+ # Engine: 1. The key is wrapped using a RSA public key certificate provided by
5515
+ # Google. 2. After being wrapped, the key must be encoded in RFC 4648 base64
5516
+ # encoding. Gets the RSA public key certificate provided by Google at: https://
5517
+ # cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
5509
5518
  # Corresponds to the JSON property `rsaEncryptedKey`
5510
5519
  # @return [String]
5511
5520
  attr_accessor :rsa_encrypted_key
@@ -5540,7 +5549,8 @@ module Google
5540
5549
  attr_accessor :disk_encryption_key
5541
5550
 
5542
5551
  # Specifies a valid partial or full URL to an existing Persistent Disk resource.
5543
- # This field is only applicable for persistent disks.
5552
+ # This field is only applicable for persistent disks. For example: "source": "/
5553
+ # compute/v1/projects/project_id/zones/zone/disks/ disk_name
5544
5554
  # Corresponds to the JSON property `source`
5545
5555
  # @return [String]
5546
5556
  attr_accessor :source
@@ -7572,7 +7582,7 @@ module Google
7572
7582
 
7573
7583
  # Name of the resource; provided by the client when the resource is created. The
7574
7584
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
7575
- # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
7585
+ # name must be 1-63 characters long and match the regular expression [a-z]([-a-
7576
7586
  # z0-9]*[a-z0-9])?. The first character must be a lowercase letter, and all
7577
7587
  # following characters (except for the last character) must be a dash, lowercase
7578
7588
  # letter, or digit. The last character must be a lowercase letter or digit.
@@ -15323,7 +15333,7 @@ module Google
15323
15333
  # @return [Google::Apis::ComputeBeta::NetworkPerformanceConfig]
15324
15334
  attr_accessor :network_performance_config
15325
15335
 
15326
- # PostKeyRevocationActionType of the instance.
15336
+ # PostKeyRevocationActionType of the instance.(will be deprecated soon)
15327
15337
  # Corresponds to the JSON property `postKeyRevocationActionType`
15328
15338
  # @return [String]
15329
15339
  attr_accessor :post_key_revocation_action_type
@@ -16264,6 +16274,14 @@ module Google
16264
16274
  # @return [Fixnum]
16265
16275
  attr_accessor :requested_link_count
16266
16276
 
16277
+ # [Output Only] Set to true if the resource satisfies the zone separation
16278
+ # organization policy constraints and false otherwise. Defaults to false if the
16279
+ # field is not present.
16280
+ # Corresponds to the JSON property `satisfiesPzs`
16281
+ # @return [Boolean]
16282
+ attr_accessor :satisfies_pzs
16283
+ alias_method :satisfies_pzs?, :satisfies_pzs
16284
+
16267
16285
  # [Output Only] Server-defined URL for the resource.
16268
16286
  # Corresponds to the JSON property `selfLink`
16269
16287
  # @return [String]
@@ -16308,6 +16326,7 @@ module Google
16308
16326
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
16309
16327
  @provisioned_link_count = args[:provisioned_link_count] if args.key?(:provisioned_link_count)
16310
16328
  @requested_link_count = args[:requested_link_count] if args.key?(:requested_link_count)
16329
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
16311
16330
  @self_link = args[:self_link] if args.key?(:self_link)
16312
16331
  @state = args[:state] if args.key?(:state)
16313
16332
  end
@@ -16533,6 +16552,14 @@ module Google
16533
16552
  # @return [String]
16534
16553
  attr_accessor :router
16535
16554
 
16555
+ # [Output Only] Set to true if the resource satisfies the zone separation
16556
+ # organization policy constraints and false otherwise. Defaults to false if the
16557
+ # field is not present.
16558
+ # Corresponds to the JSON property `satisfiesPzs`
16559
+ # @return [Boolean]
16560
+ attr_accessor :satisfies_pzs
16561
+ alias_method :satisfies_pzs?, :satisfies_pzs
16562
+
16536
16563
  # [Output Only] Server-defined URL for the resource.
16537
16564
  # Corresponds to the JSON property `selfLink`
16538
16565
  # @return [String]
@@ -16604,6 +16631,7 @@ module Google
16604
16631
  @private_interconnect_info = args[:private_interconnect_info] if args.key?(:private_interconnect_info)
16605
16632
  @region = args[:region] if args.key?(:region)
16606
16633
  @router = args[:router] if args.key?(:router)
16634
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
16607
16635
  @self_link = args[:self_link] if args.key?(:self_link)
16608
16636
  @state = args[:state] if args.key?(:state)
16609
16637
  @type = args[:type] if args.key?(:type)
@@ -17431,6 +17459,13 @@ module Google
17431
17459
  # @return [String]
17432
17460
  attr_accessor :status
17433
17461
 
17462
+ # [Output Only] Set to true for locations that support physical zone separation.
17463
+ # Defaults to false if the field is not present.
17464
+ # Corresponds to the JSON property `supportsPzs`
17465
+ # @return [Boolean]
17466
+ attr_accessor :supports_pzs
17467
+ alias_method :supports_pzs?, :supports_pzs
17468
+
17434
17469
  def initialize(**args)
17435
17470
  update!(**args)
17436
17471
  end
@@ -17452,6 +17487,7 @@ module Google
17452
17487
  @region_infos = args[:region_infos] if args.key?(:region_infos)
17453
17488
  @self_link = args[:self_link] if args.key?(:self_link)
17454
17489
  @status = args[:status] if args.key?(:status)
17490
+ @supports_pzs = args[:supports_pzs] if args.key?(:supports_pzs)
17455
17491
  end
17456
17492
  end
17457
17493
 
@@ -28829,6 +28865,11 @@ module Google
28829
28865
  class Route
28830
28866
  include Google::Apis::Core::Hashable
28831
28867
 
28868
+ # [Output Only] AS path.
28869
+ # Corresponds to the JSON property `asPaths`
28870
+ # @return [Array<Google::Apis::ComputeBeta::RouteAsPath>]
28871
+ attr_accessor :as_paths
28872
+
28832
28873
  # [Output Only] Creation timestamp in RFC3339 text format.
28833
28874
  # Corresponds to the JSON property `creationTimestamp`
28834
28875
  # @return [String]
@@ -28933,6 +28974,15 @@ module Google
28933
28974
  # @return [Fixnum]
28934
28975
  attr_accessor :priority
28935
28976
 
28977
+ # [Output Only] The type of this route, which can be one of the following values:
28978
+ # - 'TRANSIT' for a transit route that this router learned from another Cloud
28979
+ # Router and will readvertise to one of its BGP peers - 'SUBNET' for a route
28980
+ # from a subnet of the VPC - 'BGP' for a route learned from a BGP peer of this
28981
+ # router - 'STATIC' for a static route
28982
+ # Corresponds to the JSON property `routeType`
28983
+ # @return [String]
28984
+ attr_accessor :route_type
28985
+
28936
28986
  # [Output Only] Server-defined fully-qualified URL for this resource.
28937
28987
  # Corresponds to the JSON property `selfLink`
28938
28988
  # @return [String]
@@ -28955,6 +29005,7 @@ module Google
28955
29005
 
28956
29006
  # Update properties of this object
28957
29007
  def update!(**args)
29008
+ @as_paths = args[:as_paths] if args.key?(:as_paths)
28958
29009
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
28959
29010
  @description = args[:description] if args.key?(:description)
28960
29011
  @dest_range = args[:dest_range] if args.key?(:dest_range)
@@ -28971,6 +29022,7 @@ module Google
28971
29022
  @next_hop_peering = args[:next_hop_peering] if args.key?(:next_hop_peering)
28972
29023
  @next_hop_vpn_tunnel = args[:next_hop_vpn_tunnel] if args.key?(:next_hop_vpn_tunnel)
28973
29024
  @priority = args[:priority] if args.key?(:priority)
29025
+ @route_type = args[:route_type] if args.key?(:route_type)
28974
29026
  @self_link = args[:self_link] if args.key?(:self_link)
28975
29027
  @tags = args[:tags] if args.key?(:tags)
28976
29028
  @warnings = args[:warnings] if args.key?(:warnings)
@@ -29041,6 +29093,37 @@ module Google
29041
29093
  end
29042
29094
  end
29043
29095
 
29096
+ #
29097
+ class RouteAsPath
29098
+ include Google::Apis::Core::Hashable
29099
+
29100
+ # [Output Only] The AS numbers of the AS Path.
29101
+ # Corresponds to the JSON property `asLists`
29102
+ # @return [Array<Fixnum>]
29103
+ attr_accessor :as_lists
29104
+
29105
+ # [Output Only] The type of the AS Path, which can be one of the following
29106
+ # values: - 'AS_SET': unordered set of autonomous systems that the route in has
29107
+ # traversed - 'AS_SEQUENCE': ordered set of autonomous systems that the route
29108
+ # has traversed - 'AS_CONFED_SEQUENCE': ordered set of Member Autonomous Systems
29109
+ # in the local confederation that the route has traversed - 'AS_CONFED_SET':
29110
+ # unordered set of Member Autonomous Systems in the local confederation that the
29111
+ # route has traversed
29112
+ # Corresponds to the JSON property `pathSegmentType`
29113
+ # @return [String]
29114
+ attr_accessor :path_segment_type
29115
+
29116
+ def initialize(**args)
29117
+ update!(**args)
29118
+ end
29119
+
29120
+ # Update properties of this object
29121
+ def update!(**args)
29122
+ @as_lists = args[:as_lists] if args.key?(:as_lists)
29123
+ @path_segment_type = args[:path_segment_type] if args.key?(:path_segment_type)
29124
+ end
29125
+ end
29126
+
29044
29127
  # Contains a list of Route resources.
29045
29128
  class RouteList
29046
29129
  include Google::Apis::Core::Hashable
@@ -29913,6 +29996,11 @@ module Google
29913
29996
  # @return [Array<String>]
29914
29997
  attr_accessor :nat_ips
29915
29998
 
29999
+ # A list of rules associated with this NAT.
30000
+ # Corresponds to the JSON property `rules`
30001
+ # @return [Array<Google::Apis::ComputeBeta::RouterNatRule>]
30002
+ attr_accessor :rules
30003
+
29916
30004
  # Specify the Nat option, which can take one of the following values: -
29917
30005
  # ALL_SUBNETWORKS_ALL_IP_RANGES: All of the IP ranges in every Subnetwork are
29918
30006
  # allowed to Nat. - ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES: All of the primary IP
@@ -29939,6 +30027,12 @@ module Google
29939
30027
  # @return [Fixnum]
29940
30028
  attr_accessor :tcp_established_idle_timeout_sec
29941
30029
 
30030
+ # Timeout (in seconds) for TCP connections that are in TIME_WAIT state. Defaults
30031
+ # to 120s if not set.
30032
+ # Corresponds to the JSON property `tcpTimeWaitTimeoutSec`
30033
+ # @return [Fixnum]
30034
+ attr_accessor :tcp_time_wait_timeout_sec
30035
+
29942
30036
  # Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not
29943
30037
  # set.
29944
30038
  # Corresponds to the JSON property `tcpTransitoryIdleTimeoutSec`
@@ -29964,9 +30058,11 @@ module Google
29964
30058
  @name = args[:name] if args.key?(:name)
29965
30059
  @nat_ip_allocate_option = args[:nat_ip_allocate_option] if args.key?(:nat_ip_allocate_option)
29966
30060
  @nat_ips = args[:nat_ips] if args.key?(:nat_ips)
30061
+ @rules = args[:rules] if args.key?(:rules)
29967
30062
  @source_subnetwork_ip_ranges_to_nat = args[:source_subnetwork_ip_ranges_to_nat] if args.key?(:source_subnetwork_ip_ranges_to_nat)
29968
30063
  @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
29969
30064
  @tcp_established_idle_timeout_sec = args[:tcp_established_idle_timeout_sec] if args.key?(:tcp_established_idle_timeout_sec)
30065
+ @tcp_time_wait_timeout_sec = args[:tcp_time_wait_timeout_sec] if args.key?(:tcp_time_wait_timeout_sec)
29970
30066
  @tcp_transitory_idle_timeout_sec = args[:tcp_transitory_idle_timeout_sec] if args.key?(:tcp_transitory_idle_timeout_sec)
29971
30067
  @udp_idle_timeout_sec = args[:udp_idle_timeout_sec] if args.key?(:udp_idle_timeout_sec)
29972
30068
  end
@@ -30002,6 +30098,80 @@ module Google
30002
30098
  end
30003
30099
  end
30004
30100
 
30101
+ #
30102
+ class RouterNatRule
30103
+ include Google::Apis::Core::Hashable
30104
+
30105
+ # The action to be enforced for traffic that matches this rule.
30106
+ # Corresponds to the JSON property `action`
30107
+ # @return [Google::Apis::ComputeBeta::RouterNatRuleAction]
30108
+ attr_accessor :action
30109
+
30110
+ # An optional description of this rule.
30111
+ # Corresponds to the JSON property `description`
30112
+ # @return [String]
30113
+ attr_accessor :description
30114
+
30115
+ # CEL expression that specifies the match condition that egress traffic from a
30116
+ # VM is evaluated against. If it evaluates to true, the corresponding `action`
30117
+ # is enforced. The following examples are valid match expressions for public NAT:
30118
+ # "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
30119
+ # 0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The
30120
+ # following example is a valid match expression for private NAT: "nexthop.hub ==
30121
+ # '/projects/my-project/global/hub/hub-1'"
30122
+ # Corresponds to the JSON property `match`
30123
+ # @return [String]
30124
+ attr_accessor :match
30125
+
30126
+ # An integer uniquely identifying a rule in the list. The rule number must be a
30127
+ # positive value between 0 and 65000, and must be unique among rules within a
30128
+ # NAT.
30129
+ # Corresponds to the JSON property `ruleNumber`
30130
+ # @return [Fixnum]
30131
+ attr_accessor :rule_number
30132
+
30133
+ def initialize(**args)
30134
+ update!(**args)
30135
+ end
30136
+
30137
+ # Update properties of this object
30138
+ def update!(**args)
30139
+ @action = args[:action] if args.key?(:action)
30140
+ @description = args[:description] if args.key?(:description)
30141
+ @match = args[:match] if args.key?(:match)
30142
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
30143
+ end
30144
+ end
30145
+
30146
+ #
30147
+ class RouterNatRuleAction
30148
+ include Google::Apis::Core::Hashable
30149
+
30150
+ # A list of URLs of the IP resources used for this NAT rule. These IP addresses
30151
+ # must be valid static external IP addresses assigned to the project. This field
30152
+ # is used for public NAT.
30153
+ # Corresponds to the JSON property `sourceNatActiveIps`
30154
+ # @return [Array<String>]
30155
+ attr_accessor :source_nat_active_ips
30156
+
30157
+ # A list of URLs of the IP resources to be drained. These IPs must be valid
30158
+ # static external IPs that have been assigned to the NAT. These IPs should be
30159
+ # used for updating/patching a NAT rule only. This field is used for public NAT.
30160
+ # Corresponds to the JSON property `sourceNatDrainIps`
30161
+ # @return [Array<String>]
30162
+ attr_accessor :source_nat_drain_ips
30163
+
30164
+ def initialize(**args)
30165
+ update!(**args)
30166
+ end
30167
+
30168
+ # Update properties of this object
30169
+ def update!(**args)
30170
+ @source_nat_active_ips = args[:source_nat_active_ips] if args.key?(:source_nat_active_ips)
30171
+ @source_nat_drain_ips = args[:source_nat_drain_ips] if args.key?(:source_nat_drain_ips)
30172
+ end
30173
+ end
30174
+
30005
30175
  # Defines the IP ranges that want to use NAT for a subnetwork.
30006
30176
  class RouterNatSubnetworkToNat
30007
30177
  include Google::Apis::Core::Hashable
@@ -30207,6 +30377,11 @@ module Google
30207
30377
  # @return [Fixnum]
30208
30378
  attr_accessor :num_vm_endpoints_with_nat_mappings
30209
30379
 
30380
+ # Status of rules in this NAT.
30381
+ # Corresponds to the JSON property `ruleStatus`
30382
+ # @return [Array<Google::Apis::ComputeBeta::RouterStatusNatStatusNatRuleStatus>]
30383
+ attr_accessor :rule_status
30384
+
30210
30385
  # A list of fully qualified URLs of reserved IP address resources.
30211
30386
  # Corresponds to the JSON property `userAllocatedNatIpResources`
30212
30387
  # @return [Array<String>]
@@ -30230,11 +30405,58 @@ module Google
30230
30405
  @min_extra_nat_ips_needed = args[:min_extra_nat_ips_needed] if args.key?(:min_extra_nat_ips_needed)
30231
30406
  @name = args[:name] if args.key?(:name)
30232
30407
  @num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
30408
+ @rule_status = args[:rule_status] if args.key?(:rule_status)
30233
30409
  @user_allocated_nat_ip_resources = args[:user_allocated_nat_ip_resources] if args.key?(:user_allocated_nat_ip_resources)
30234
30410
  @user_allocated_nat_ips = args[:user_allocated_nat_ips] if args.key?(:user_allocated_nat_ips)
30235
30411
  end
30236
30412
  end
30237
30413
 
30414
+ # Status of a NAT Rule contained in this NAT.
30415
+ class RouterStatusNatStatusNatRuleStatus
30416
+ include Google::Apis::Core::Hashable
30417
+
30418
+ # A list of active IPs for NAT. Example: ["1.1.1.1", "179.12.26.133"].
30419
+ # Corresponds to the JSON property `activeNatIps`
30420
+ # @return [Array<String>]
30421
+ attr_accessor :active_nat_ips
30422
+
30423
+ # A list of IPs for NAT that are in drain mode. Example: ["1.1.1.1", "179.12.26.
30424
+ # 133"].
30425
+ # Corresponds to the JSON property `drainNatIps`
30426
+ # @return [Array<String>]
30427
+ attr_accessor :drain_nat_ips
30428
+
30429
+ # The number of extra IPs to allocate. This will be greater than 0 only if the
30430
+ # existing IPs in this NAT Rule are NOT enough to allow all configured VMs to
30431
+ # use NAT.
30432
+ # Corresponds to the JSON property `minExtraIpsNeeded`
30433
+ # @return [Fixnum]
30434
+ attr_accessor :min_extra_ips_needed
30435
+
30436
+ # Number of VM endpoints (i.e., NICs) that have NAT Mappings from this NAT Rule.
30437
+ # Corresponds to the JSON property `numVmEndpointsWithNatMappings`
30438
+ # @return [Fixnum]
30439
+ attr_accessor :num_vm_endpoints_with_nat_mappings
30440
+
30441
+ # Rule number of the rule.
30442
+ # Corresponds to the JSON property `ruleNumber`
30443
+ # @return [Fixnum]
30444
+ attr_accessor :rule_number
30445
+
30446
+ def initialize(**args)
30447
+ update!(**args)
30448
+ end
30449
+
30450
+ # Update properties of this object
30451
+ def update!(**args)
30452
+ @active_nat_ips = args[:active_nat_ips] if args.key?(:active_nat_ips)
30453
+ @drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
30454
+ @min_extra_ips_needed = args[:min_extra_ips_needed] if args.key?(:min_extra_ips_needed)
30455
+ @num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
30456
+ @rule_number = args[:rule_number] if args.key?(:rule_number)
30457
+ end
30458
+ end
30459
+
30238
30460
  #
30239
30461
  class RouterStatusResponse
30240
30462
  include Google::Apis::Core::Hashable
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module ComputeBeta
18
18
  # Version of the google-apis-compute_beta gem
19
- GEM_VERSION = "0.17.0"
19
+ GEM_VERSION = "0.18.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.4.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20210907"
25
+ REVISION = "20210920"
26
26
  end
27
27
  end
28
28
  end
@@ -3808,6 +3808,12 @@ module Google
3808
3808
  include Google::Apis::Core::JsonObjectSupport
3809
3809
  end
3810
3810
 
3811
+ class RouteAsPath
3812
+ class Representation < Google::Apis::Core::JsonRepresentation; end
3813
+
3814
+ include Google::Apis::Core::JsonObjectSupport
3815
+ end
3816
+
3811
3817
  class RouteList
3812
3818
  class Representation < Google::Apis::Core::JsonRepresentation; end
3813
3819
 
@@ -3910,6 +3916,18 @@ module Google
3910
3916
  include Google::Apis::Core::JsonObjectSupport
3911
3917
  end
3912
3918
 
3919
+ class RouterNatRule
3920
+ class Representation < Google::Apis::Core::JsonRepresentation; end
3921
+
3922
+ include Google::Apis::Core::JsonObjectSupport
3923
+ end
3924
+
3925
+ class RouterNatRuleAction
3926
+ class Representation < Google::Apis::Core::JsonRepresentation; end
3927
+
3928
+ include Google::Apis::Core::JsonObjectSupport
3929
+ end
3930
+
3913
3931
  class RouterNatSubnetworkToNat
3914
3932
  class Representation < Google::Apis::Core::JsonRepresentation; end
3915
3933
 
@@ -3934,6 +3952,12 @@ module Google
3934
3952
  include Google::Apis::Core::JsonObjectSupport
3935
3953
  end
3936
3954
 
3955
+ class RouterStatusNatStatusNatRuleStatus
3956
+ class Representation < Google::Apis::Core::JsonRepresentation; end
3957
+
3958
+ include Google::Apis::Core::JsonObjectSupport
3959
+ end
3960
+
3937
3961
  class RouterStatusResponse
3938
3962
  class Representation < Google::Apis::Core::JsonRepresentation; end
3939
3963
 
@@ -9277,6 +9301,7 @@ module Google
9277
9301
  property :peer_ip_address, as: 'peerIpAddress'
9278
9302
  property :provisioned_link_count, as: 'provisionedLinkCount'
9279
9303
  property :requested_link_count, as: 'requestedLinkCount'
9304
+ property :satisfies_pzs, as: 'satisfiesPzs'
9280
9305
  property :self_link, as: 'selfLink'
9281
9306
  property :state, as: 'state'
9282
9307
  end
@@ -9313,6 +9338,7 @@ module Google
9313
9338
 
9314
9339
  property :region, as: 'region'
9315
9340
  property :router, as: 'router'
9341
+ property :satisfies_pzs, as: 'satisfiesPzs'
9316
9342
  property :self_link, as: 'selfLink'
9317
9343
  property :state, as: 'state'
9318
9344
  property :type, as: 'type'
@@ -9541,6 +9567,7 @@ module Google
9541
9567
 
9542
9568
  property :self_link, as: 'selfLink'
9543
9569
  property :status, as: 'status'
9570
+ property :supports_pzs, as: 'supportsPzs'
9544
9571
  end
9545
9572
  end
9546
9573
 
@@ -12523,6 +12550,8 @@ module Google
12523
12550
  class Route
12524
12551
  # @private
12525
12552
  class Representation < Google::Apis::Core::JsonRepresentation
12553
+ collection :as_paths, as: 'asPaths', class: Google::Apis::ComputeBeta::RouteAsPath, decorator: Google::Apis::ComputeBeta::RouteAsPath::Representation
12554
+
12526
12555
  property :creation_timestamp, as: 'creationTimestamp'
12527
12556
  property :description, as: 'description'
12528
12557
  property :dest_range, as: 'destRange'
@@ -12539,6 +12568,7 @@ module Google
12539
12568
  property :next_hop_peering, as: 'nextHopPeering'
12540
12569
  property :next_hop_vpn_tunnel, as: 'nextHopVpnTunnel'
12541
12570
  property :priority, as: 'priority'
12571
+ property :route_type, as: 'routeType'
12542
12572
  property :self_link, as: 'selfLink'
12543
12573
  collection :tags, as: 'tags'
12544
12574
  collection :warnings, as: 'warnings', class: Google::Apis::ComputeBeta::Route::Warning, decorator: Google::Apis::ComputeBeta::Route::Warning::Representation
@@ -12564,6 +12594,14 @@ module Google
12564
12594
  end
12565
12595
  end
12566
12596
 
12597
+ class RouteAsPath
12598
+ # @private
12599
+ class Representation < Google::Apis::Core::JsonRepresentation
12600
+ collection :as_lists, as: 'asLists'
12601
+ property :path_segment_type, as: 'pathSegmentType'
12602
+ end
12603
+ end
12604
+
12567
12605
  class RouteList
12568
12606
  # @private
12569
12607
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -12761,10 +12799,13 @@ module Google
12761
12799
  property :name, as: 'name'
12762
12800
  property :nat_ip_allocate_option, as: 'natIpAllocateOption'
12763
12801
  collection :nat_ips, as: 'natIps'
12802
+ collection :rules, as: 'rules', class: Google::Apis::ComputeBeta::RouterNatRule, decorator: Google::Apis::ComputeBeta::RouterNatRule::Representation
12803
+
12764
12804
  property :source_subnetwork_ip_ranges_to_nat, as: 'sourceSubnetworkIpRangesToNat'
12765
12805
  collection :subnetworks, as: 'subnetworks', class: Google::Apis::ComputeBeta::RouterNatSubnetworkToNat, decorator: Google::Apis::ComputeBeta::RouterNatSubnetworkToNat::Representation
12766
12806
 
12767
12807
  property :tcp_established_idle_timeout_sec, as: 'tcpEstablishedIdleTimeoutSec'
12808
+ property :tcp_time_wait_timeout_sec, as: 'tcpTimeWaitTimeoutSec'
12768
12809
  property :tcp_transitory_idle_timeout_sec, as: 'tcpTransitoryIdleTimeoutSec'
12769
12810
  property :udp_idle_timeout_sec, as: 'udpIdleTimeoutSec'
12770
12811
  end
@@ -12778,6 +12819,25 @@ module Google
12778
12819
  end
12779
12820
  end
12780
12821
 
12822
+ class RouterNatRule
12823
+ # @private
12824
+ class Representation < Google::Apis::Core::JsonRepresentation
12825
+ property :action, as: 'action', class: Google::Apis::ComputeBeta::RouterNatRuleAction, decorator: Google::Apis::ComputeBeta::RouterNatRuleAction::Representation
12826
+
12827
+ property :description, as: 'description'
12828
+ property :match, as: 'match'
12829
+ property :rule_number, as: 'ruleNumber'
12830
+ end
12831
+ end
12832
+
12833
+ class RouterNatRuleAction
12834
+ # @private
12835
+ class Representation < Google::Apis::Core::JsonRepresentation
12836
+ collection :source_nat_active_ips, as: 'sourceNatActiveIps'
12837
+ collection :source_nat_drain_ips, as: 'sourceNatDrainIps'
12838
+ end
12839
+ end
12840
+
12781
12841
  class RouterNatSubnetworkToNat
12782
12842
  # @private
12783
12843
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -12831,11 +12891,24 @@ module Google
12831
12891
  property :min_extra_nat_ips_needed, as: 'minExtraNatIpsNeeded'
12832
12892
  property :name, as: 'name'
12833
12893
  property :num_vm_endpoints_with_nat_mappings, as: 'numVmEndpointsWithNatMappings'
12894
+ collection :rule_status, as: 'ruleStatus', class: Google::Apis::ComputeBeta::RouterStatusNatStatusNatRuleStatus, decorator: Google::Apis::ComputeBeta::RouterStatusNatStatusNatRuleStatus::Representation
12895
+
12834
12896
  collection :user_allocated_nat_ip_resources, as: 'userAllocatedNatIpResources'
12835
12897
  collection :user_allocated_nat_ips, as: 'userAllocatedNatIps'
12836
12898
  end
12837
12899
  end
12838
12900
 
12901
+ class RouterStatusNatStatusNatRuleStatus
12902
+ # @private
12903
+ class Representation < Google::Apis::Core::JsonRepresentation
12904
+ collection :active_nat_ips, as: 'activeNatIps'
12905
+ collection :drain_nat_ips, as: 'drainNatIps'
12906
+ property :min_extra_ips_needed, as: 'minExtraIpsNeeded'
12907
+ property :num_vm_endpoints_with_nat_mappings, as: 'numVmEndpointsWithNatMappings'
12908
+ property :rule_number, as: 'ruleNumber'
12909
+ end
12910
+ end
12911
+
12839
12912
  class RouterStatusResponse
12840
12913
  # @private
12841
12914
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -6502,8 +6502,7 @@ module Google
6502
6502
  execute_or_queue_command(command, &block)
6503
6503
  end
6504
6504
 
6505
- # Retrieves the specified Operations resource. Gets a list of operations by
6506
- # making a `list()` request.
6505
+ # Retrieves the specified Operations resource.
6507
6506
  # @param [String] project
6508
6507
  # Project ID for this request.
6509
6508
  # @param [String] operation
@@ -9568,7 +9567,11 @@ module Google
9568
9567
  # the instances in the group are still in the process of being patched. You must
9569
9568
  # separately verify the status of the individual instances with the
9570
9569
  # listManagedInstances method. This method supports PATCH semantics and uses the
9571
- # JSON merge patch format and processing rules.
9570
+ # JSON merge patch format and processing rules. If you update your group to
9571
+ # specify a new template or instance configuration, it's possible that your
9572
+ # intended specification for each VM in the group is different from the current
9573
+ # state of that VM. To learn how to apply an updated configuration to the VMs in
9574
+ # a MIG, see Updating instances in a MIG.
9572
9575
  # @param [String] project
9573
9576
  # Project ID for this request.
9574
9577
  # @param [String] zone
@@ -10086,7 +10089,11 @@ module Google
10086
10089
  # request. This operation is marked as DONE when the group is updated even if
10087
10090
  # the instances in the group have not yet been updated. You must separately
10088
10091
  # verify the status of the individual instances with the listManagedInstances
10089
- # method.
10092
+ # method. If you update your group to specify a new template or instance
10093
+ # configuration, it's possible that your intended specification for each VM in
10094
+ # the group is different from the current state of that VM. To learn how to
10095
+ # apply an updated configuration to the VMs in a MIG, see Updating instances in
10096
+ # a MIG.
10090
10097
  # @param [String] project
10091
10098
  # Project ID for this request.
10092
10099
  # @param [String] zone
@@ -11228,8 +11235,9 @@ module Google
11228
11235
  execute_or_queue_command(command, &block)
11229
11236
  end
11230
11237
 
11231
- # Retrieves aggregated list of all of the instances in your project across all
11232
- # regions and zones.
11238
+ # Retrieves an aggregated list of all of the instances in your project across
11239
+ # all regions and zones. The performance of this method degrades when a filter
11240
+ # is specified on a project that has a very large number of instances.
11233
11241
  # @param [String] project
11234
11242
  # Project ID for this request.
11235
11243
  # @param [String] filter
@@ -23888,7 +23896,11 @@ module Google
23888
23896
  # the instances in the group are still in the process of being patched. You must
23889
23897
  # separately verify the status of the individual instances with the
23890
23898
  # listmanagedinstances method. This method supports PATCH semantics and uses the
23891
- # JSON merge patch format and processing rules.
23899
+ # JSON merge patch format and processing rules. If you update your group to
23900
+ # specify a new template or instance configuration, it's possible that your
23901
+ # intended specification for each VM in the group is different from the current
23902
+ # state of that VM. To learn how to apply an updated configuration to the VMs in
23903
+ # a MIG, see Updating instances in a MIG.
23892
23904
  # @param [String] project
23893
23905
  # Project ID for this request.
23894
23906
  # @param [String] region
@@ -24328,7 +24340,11 @@ module Google
24328
24340
  # request. This operation is marked as DONE when the group is updated even if
24329
24341
  # the instances in the group have not yet been updated. You must separately
24330
24342
  # verify the status of the individual instances with the listmanagedinstances
24331
- # method.
24343
+ # method. If you update your group to specify a new template or instance
24344
+ # configuration, it's possible that your intended specification for each VM in
24345
+ # the group is different from the current state of that VM. To learn how to
24346
+ # apply an updated configuration to the VMs in a MIG, see Updating instances in
24347
+ # a MIG.
24332
24348
  # @param [String] project
24333
24349
  # Project ID for this request.
24334
24350
  # @param [String] region
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-compute_beta
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-20 00:00:00.000000000 Z
11
+ date: 2021-10-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-compute_beta/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-compute_beta/v0.17.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-compute_beta/v0.18.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/master/generated/google-apis-compute_beta
63
63
  post_install_message:
64
64
  rdoc_options: []