google-apis-compute_beta 0.15.0 → 0.19.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +17 -0
- data/OVERVIEW.md +2 -2
- data/lib/google/apis/compute_beta/classes.rb +585 -103
- data/lib/google/apis/compute_beta/gem_version.rb +2 -2
- data/lib/google/apis/compute_beta/representations.rb +139 -0
- data/lib/google/apis/compute_beta/service.rb +208 -20
- data/lib/google/apis/compute_beta.rb +3 -3
- metadata +5 -5
@@ -510,13 +510,17 @@ module Google
|
|
510
510
|
attr_accessor :network_tier
|
511
511
|
|
512
512
|
# The DNS domain name for the public PTR record. You can set this field only if
|
513
|
-
# the `setPublicPtr` field is enabled.
|
513
|
+
# the `setPublicPtr` field is enabled in accessConfig. If this field is
|
514
|
+
# unspecified in ipv6AccessConfig, a default PTR record will be createc for
|
515
|
+
# first IP in associated external IPv6 range.
|
514
516
|
# Corresponds to the JSON property `publicPtrDomainName`
|
515
517
|
# @return [String]
|
516
518
|
attr_accessor :public_ptr_domain_name
|
517
519
|
|
518
520
|
# Specifies whether a public DNS 'PTR' record should be created to map the
|
519
|
-
# external IP address of the instance to a DNS domain name.
|
521
|
+
# external IP address of the instance to a DNS domain name. This field is not
|
522
|
+
# used in ipv6AccessConfig. A default PTR record will be created if the VM has
|
523
|
+
# external IPv6 range associated.
|
520
524
|
# Corresponds to the JSON property `setPublicPtr`
|
521
525
|
# @return [Boolean]
|
522
526
|
attr_accessor :set_public_ptr
|
@@ -613,8 +617,8 @@ module Google
|
|
613
617
|
|
614
618
|
# Name of the resource. Provided by the client when the resource is created. The
|
615
619
|
# name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
616
|
-
# name must be 1-63 characters long and match the regular expression [a-z]([-a-
|
617
|
-
# z0-9]*[a-z0-9])
|
620
|
+
# name must be 1-63 characters long and match the regular expression `[a-z]([-a-
|
621
|
+
# z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all
|
618
622
|
# following characters (except for the last character) must be a dash, lowercase
|
619
623
|
# letter, or digit. The last character must be a lowercase letter or digit.
|
620
624
|
# Corresponds to the JSON property `name`
|
@@ -1205,6 +1209,7 @@ module Google
|
|
1205
1209
|
end
|
1206
1210
|
|
1207
1211
|
# This reservation type allows to pre allocate specific instance configuration.
|
1212
|
+
# Next ID: 5
|
1208
1213
|
class AllocationSpecificSkuReservation
|
1209
1214
|
include Google::Apis::Core::Hashable
|
1210
1215
|
|
@@ -1328,6 +1333,17 @@ module Google
|
|
1328
1333
|
# @return [Array<String>]
|
1329
1334
|
attr_accessor :licenses
|
1330
1335
|
|
1336
|
+
# [Output Only] Whether to indicate the attached disk is locked. The locked disk
|
1337
|
+
# is not allowed to be detached from the instance, or to be used as the source
|
1338
|
+
# of the snapshot creation, and the image creation. The instance with at least
|
1339
|
+
# one locked attached disk is not allow to be used as source of machine image
|
1340
|
+
# creation, instant snapshot creation, and not allowed to be deleted with --keep-
|
1341
|
+
# disk parameter set to true for locked disks.
|
1342
|
+
# Corresponds to the JSON property `locked`
|
1343
|
+
# @return [Boolean]
|
1344
|
+
attr_accessor :locked
|
1345
|
+
alias_method :locked?, :locked
|
1346
|
+
|
1331
1347
|
# The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not
|
1332
1348
|
# specified, the default is to attach the disk in READ_WRITE mode.
|
1333
1349
|
# Corresponds to the JSON property `mode`
|
@@ -1380,6 +1396,7 @@ module Google
|
|
1380
1396
|
@interface = args[:interface] if args.key?(:interface)
|
1381
1397
|
@kind = args[:kind] if args.key?(:kind)
|
1382
1398
|
@licenses = args[:licenses] if args.key?(:licenses)
|
1399
|
+
@locked = args[:locked] if args.key?(:locked)
|
1383
1400
|
@mode = args[:mode] if args.key?(:mode)
|
1384
1401
|
@shielded_instance_initial_state = args[:shielded_instance_initial_state] if args.key?(:shielded_instance_initial_state)
|
1385
1402
|
@source = args[:source] if args.key?(:source)
|
@@ -2509,7 +2526,13 @@ module Google
|
|
2509
2526
|
|
2510
2527
|
# Specifies how to determine whether the backend of a load balancer can handle
|
2511
2528
|
# additional traffic or is fully loaded. For usage guidelines, see Connection
|
2512
|
-
# balancing mode.
|
2529
|
+
# balancing mode. Backends must use compatible balancing modes. For more
|
2530
|
+
# information, see Supported balancing modes and target capacity settings and
|
2531
|
+
# Restrictions and guidance for instance groups. Note: Currently, if you use the
|
2532
|
+
# API to configure incompatible balancing modes, the configuration might be
|
2533
|
+
# accepted even though it has no impact and is ignored. Specifically, Backend.
|
2534
|
+
# maxUtilization is ignored when Backend.balancingMode is RATE. In the future,
|
2535
|
+
# this incompatible combination will be rejected.
|
2513
2536
|
# Corresponds to the JSON property `balancingMode`
|
2514
2537
|
# @return [String]
|
2515
2538
|
attr_accessor :balancing_mode
|
@@ -2590,7 +2613,9 @@ module Google
|
|
2590
2613
|
# @return [Float]
|
2591
2614
|
attr_accessor :max_rate_per_instance
|
2592
2615
|
|
2593
|
-
#
|
2616
|
+
# Optional parameter to define a target capacity for the UTILIZATIONbalancing
|
2617
|
+
# mode. The valid range is [0.0, 1.0]. For usage guidelines, see Utilization
|
2618
|
+
# balancing mode.
|
2594
2619
|
# Corresponds to the JSON property `maxUtilization`
|
2595
2620
|
# @return [Float]
|
2596
2621
|
attr_accessor :max_utilization
|
@@ -2753,7 +2778,7 @@ module Google
|
|
2753
2778
|
# specified), or else sets the response max-age directive to the lesser of the
|
2754
2779
|
# client_ttl and default_ttl, and also ensures a "public" cache-control
|
2755
2780
|
# directive is present. If a client TTL is not specified, a default value (1
|
2756
|
-
# hour) will be used. The maximum allowed value is
|
2781
|
+
# hour) will be used. The maximum allowed value is 31,622,400s (1 year).
|
2757
2782
|
# Corresponds to the JSON property `clientTtl`
|
2758
2783
|
# @return [Fixnum]
|
2759
2784
|
attr_accessor :client_ttl
|
@@ -3568,7 +3593,7 @@ module Google
|
|
3568
3593
|
# specified), or else sets the response max-age directive to the lesser of the
|
3569
3594
|
# client_ttl and default_ttl, and also ensures a "public" cache-control
|
3570
3595
|
# directive is present. If a client TTL is not specified, a default value (1
|
3571
|
-
# hour) will be used. The maximum allowed value is
|
3596
|
+
# hour) will be used. The maximum allowed value is 31,622,400s (1 year).
|
3572
3597
|
# Corresponds to the JSON property `clientTtl`
|
3573
3598
|
# @return [Fixnum]
|
3574
3599
|
attr_accessor :client_ttl
|
@@ -3753,8 +3778,8 @@ module Google
|
|
3753
3778
|
# @return [String]
|
3754
3779
|
attr_accessor :connection_persistence_on_unhealthy_backends
|
3755
3780
|
|
3756
|
-
# Enable Strong Session Affinity
|
3757
|
-
#
|
3781
|
+
# Enable Strong Session Affinity for Network Load Balancing. This option is not
|
3782
|
+
# available publicly.
|
3758
3783
|
# Corresponds to the JSON property `enableStrongAffinity`
|
3759
3784
|
# @return [Boolean]
|
3760
3785
|
attr_accessor :enable_strong_affinity
|
@@ -3762,9 +3787,9 @@ module Google
|
|
3762
3787
|
|
3763
3788
|
# Specifies how long to keep a Connection Tracking entry while there is no
|
3764
3789
|
# matching traffic (in seconds). For L4 ILB the minimum(default) is 10 minutes
|
3765
|
-
# and maximum is 16 hours. For
|
3766
|
-
#
|
3767
|
-
# Tracking key is less than 5-tuple.
|
3790
|
+
# and maximum is 16 hours. For Network Load Balancer the default is 60 seconds.
|
3791
|
+
# This option is not available publicly. This field will be supported only if
|
3792
|
+
# the Connection Tracking key is less than 5-tuple.
|
3768
3793
|
# Corresponds to the JSON property `idleTimeoutSec`
|
3769
3794
|
# @return [Fixnum]
|
3770
3795
|
attr_accessor :idle_timeout_sec
|
@@ -5461,30 +5486,39 @@ module Google
|
|
5461
5486
|
class CustomerEncryptionKey
|
5462
5487
|
include Google::Apis::Core::Hashable
|
5463
5488
|
|
5464
|
-
# The name of the encryption key that is stored in Google Cloud KMS.
|
5489
|
+
# The name of the encryption key that is stored in Google Cloud KMS. For example:
|
5490
|
+
# "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/ key_region/
|
5491
|
+
# cryptoKeys/key
|
5465
5492
|
# Corresponds to the JSON property `kmsKeyName`
|
5466
5493
|
# @return [String]
|
5467
5494
|
attr_accessor :kms_key_name
|
5468
5495
|
|
5469
5496
|
# The service account being used for the encryption request for the given KMS
|
5470
|
-
# key. If absent, the Compute Engine default service account is used.
|
5497
|
+
# key. If absent, the Compute Engine default service account is used. For
|
5498
|
+
# example: "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
|
5471
5499
|
# Corresponds to the JSON property `kmsKeyServiceAccount`
|
5472
5500
|
# @return [String]
|
5473
5501
|
attr_accessor :kms_key_service_account
|
5474
5502
|
|
5475
5503
|
# Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648
|
5476
|
-
# base64 to either encrypt or decrypt this resource.
|
5504
|
+
# base64 to either encrypt or decrypt this resource. You can provide either the
|
5505
|
+
# rawKey or the rsaEncryptedKey. For example: "rawKey": "
|
5506
|
+
# SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
|
5477
5507
|
# Corresponds to the JSON property `rawKey`
|
5478
5508
|
# @return [String]
|
5479
5509
|
attr_accessor :raw_key
|
5480
5510
|
|
5481
5511
|
# Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied
|
5482
|
-
# encryption key to either encrypt or decrypt this resource.
|
5483
|
-
# the
|
5484
|
-
#
|
5485
|
-
#
|
5486
|
-
#
|
5487
|
-
#
|
5512
|
+
# encryption key to either encrypt or decrypt this resource. You can provide
|
5513
|
+
# either the rawKey or the rsaEncryptedKey. For example: "rsaEncryptedKey": "
|
5514
|
+
# ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
|
5515
|
+
# z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
|
5516
|
+
# D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe==" The
|
5517
|
+
# key must meet the following requirements before you can provide it to Compute
|
5518
|
+
# Engine: 1. The key is wrapped using a RSA public key certificate provided by
|
5519
|
+
# Google. 2. After being wrapped, the key must be encoded in RFC 4648 base64
|
5520
|
+
# encoding. Gets the RSA public key certificate provided by Google at: https://
|
5521
|
+
# cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
|
5488
5522
|
# Corresponds to the JSON property `rsaEncryptedKey`
|
5489
5523
|
# @return [String]
|
5490
5524
|
attr_accessor :rsa_encrypted_key
|
@@ -5519,7 +5553,8 @@ module Google
|
|
5519
5553
|
attr_accessor :disk_encryption_key
|
5520
5554
|
|
5521
5555
|
# Specifies a valid partial or full URL to an existing Persistent Disk resource.
|
5522
|
-
# This field is only applicable for persistent disks.
|
5556
|
+
# This field is only applicable for persistent disks. For example: "source": "/
|
5557
|
+
# compute/v1/projects/project_id/zones/zone/disks/ disk_name
|
5523
5558
|
# Corresponds to the JSON property `source`
|
5524
5559
|
# @return [String]
|
5525
5560
|
attr_accessor :source
|
@@ -5620,14 +5655,20 @@ module Google
|
|
5620
5655
|
# @return [String]
|
5621
5656
|
attr_accessor :description
|
5622
5657
|
|
5623
|
-
# Encrypts the disk using a customer-supplied encryption key
|
5624
|
-
#
|
5625
|
-
# the disk
|
5626
|
-
#
|
5627
|
-
#
|
5628
|
-
#
|
5629
|
-
#
|
5630
|
-
#
|
5658
|
+
# Encrypts the disk using a customer-supplied encryption key or a customer-
|
5659
|
+
# managed encryption key. Encryption keys do not protect access to metadata of
|
5660
|
+
# the disk. After you encrypt a disk with a customer-supplied key, you must
|
5661
|
+
# provide the same key if you use the disk later. For example, to create a disk
|
5662
|
+
# snapshot, to create a disk image, to create a machine image, or to attach the
|
5663
|
+
# disk to a virtual machine. After you encrypt a disk with a customer-managed
|
5664
|
+
# key, the diskEncryptionKey.kmsKeyName is set to a key *version* name once the
|
5665
|
+
# disk is created. The disk is encrypted with this version of the key. In the
|
5666
|
+
# response, diskEncryptionKey.kmsKeyName appears in the following format: "
|
5667
|
+
# diskEncryptionKey.kmsKeyName": "projects/kms_project_id/locations/region/
|
5668
|
+
# keyRings/ key_region/cryptoKeys/key /cryptoKeysVersions/version If you do not
|
5669
|
+
# provide an encryption key when creating the disk, then the disk is encrypted
|
5670
|
+
# using an automatically generated key and you don't need to provide a key to
|
5671
|
+
# use the disk later.
|
5631
5672
|
# Corresponds to the JSON property `diskEncryptionKey`
|
5632
5673
|
# @return [Google::Apis::ComputeBeta::CustomerEncryptionKey]
|
5633
5674
|
attr_accessor :disk_encryption_key
|
@@ -5652,8 +5693,8 @@ module Google
|
|
5652
5693
|
# @return [Fixnum]
|
5653
5694
|
attr_accessor :id
|
5654
5695
|
|
5655
|
-
# Specifies the disk interface to use for attaching this disk,
|
5656
|
-
# SCSI or NVME. The default is SCSI.
|
5696
|
+
# [Deprecated] Specifies the disk interface to use for attaching this disk,
|
5697
|
+
# which is either SCSI or NVME. The default is SCSI.
|
5657
5698
|
# Corresponds to the JSON property `interface`
|
5658
5699
|
# @return [String]
|
5659
5700
|
attr_accessor :interface
|
@@ -5707,6 +5748,22 @@ module Google
|
|
5707
5748
|
# @return [String]
|
5708
5749
|
attr_accessor :location_hint
|
5709
5750
|
|
5751
|
+
# [Output Only] The field indicates if the disk is created from a locked source
|
5752
|
+
# image. Attachment of a disk created from a locked source image will cause the
|
5753
|
+
# following operations to become irreversibly prohibited: - R/W or R/O disk
|
5754
|
+
# attachment to any other instance - Disk detachment. And the disk can only be
|
5755
|
+
# deleted when the instance is deleted - Creation of images or snapshots - Disk
|
5756
|
+
# cloning Furthermore, the instance with at least one disk with locked flag set
|
5757
|
+
# to true will be prohibited from performing the operations below: - Further
|
5758
|
+
# attachment of secondary disks. - Detachment of any disks - Create machine
|
5759
|
+
# images - Create instance template - Delete the instance with --keep-disk
|
5760
|
+
# parameter set to true for locked disks - Attach a locked disk with --auto-
|
5761
|
+
# delete parameter set to false
|
5762
|
+
# Corresponds to the JSON property `locked`
|
5763
|
+
# @return [Boolean]
|
5764
|
+
attr_accessor :locked
|
5765
|
+
alias_method :locked?, :locked
|
5766
|
+
|
5710
5767
|
# Indicates whether or not the disk can be read/write attached to more than one
|
5711
5768
|
# instance.
|
5712
5769
|
# Corresponds to the JSON property `multiWriter`
|
@@ -5927,6 +5984,7 @@ module Google
|
|
5927
5984
|
@license_codes = args[:license_codes] if args.key?(:license_codes)
|
5928
5985
|
@licenses = args[:licenses] if args.key?(:licenses)
|
5929
5986
|
@location_hint = args[:location_hint] if args.key?(:location_hint)
|
5987
|
+
@locked = args[:locked] if args.key?(:locked)
|
5930
5988
|
@multi_writer = args[:multi_writer] if args.key?(:multi_writer)
|
5931
5989
|
@name = args[:name] if args.key?(:name)
|
5932
5990
|
@options = args[:options] if args.key?(:options)
|
@@ -7481,7 +7539,7 @@ module Google
|
|
7481
7539
|
|
7482
7540
|
# If destination ranges are specified, the firewall rule applies only to traffic
|
7483
7541
|
# that has destination IP address in these ranges. These ranges must be
|
7484
|
-
# expressed in CIDR format.
|
7542
|
+
# expressed in CIDR format. Both IPv4 and IPv6 are supported.
|
7485
7543
|
# Corresponds to the JSON property `destinationRanges`
|
7486
7544
|
# @return [Array<String>]
|
7487
7545
|
attr_accessor :destination_ranges
|
@@ -7529,7 +7587,7 @@ module Google
|
|
7529
7587
|
# Name of the resource; provided by the client when the resource is created. The
|
7530
7588
|
# name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
7531
7589
|
# name must be 1-63 characters long and match the regular expression `[a-z]([-a-
|
7532
|
-
# z0-9]*[a-z0-9])
|
7590
|
+
# z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all
|
7533
7591
|
# following characters (except for the last character) must be a dash, lowercase
|
7534
7592
|
# letter, or digit. The last character must be a lowercase letter or digit.
|
7535
7593
|
# Corresponds to the JSON property `name`
|
@@ -7569,7 +7627,7 @@ module Google
|
|
7569
7627
|
# fields are set, the rule applies to traffic that has a source IP address
|
7570
7628
|
# within sourceRanges OR a source IP from a resource with a matching tag listed
|
7571
7629
|
# in the sourceTags field. The connection does not need to match both fields for
|
7572
|
-
# the rule to apply.
|
7630
|
+
# the rule to apply. Both IPv4 and IPv6 are supported.
|
7573
7631
|
# Corresponds to the JSON property `sourceRanges`
|
7574
7632
|
# @return [Array<String>]
|
7575
7633
|
attr_accessor :source_ranges
|
@@ -7904,7 +7962,7 @@ module Google
|
|
7904
7962
|
attr_accessor :description
|
7905
7963
|
|
7906
7964
|
# Deprecated, please use short name instead. User-provided name of the
|
7907
|
-
# Organization firewall
|
7965
|
+
# Organization firewall policy. The name should be unique in the organization in
|
7908
7966
|
# which the firewall policy is created. This name must be set on creation and
|
7909
7967
|
# cannot be changed. The name must be 1-63 characters long, and comply with
|
7910
7968
|
# RFC1035. Specifically, the name must be 1-63 characters long and match the
|
@@ -8631,6 +8689,16 @@ module Google
|
|
8631
8689
|
# @return [String]
|
8632
8690
|
attr_accessor :service_name
|
8633
8691
|
|
8692
|
+
# If not empty, this Forwarding Rule will only forward the traffic when the
|
8693
|
+
# source IP address matches one of the IP addresses or CIDR ranges set here.
|
8694
|
+
# Note that a Forwarding Rule can only have up to 64 source IP ranges, and this
|
8695
|
+
# field can only be used with a regional Forwarding Rule whose scheme is
|
8696
|
+
# EXTERNAL. Each source_ip_range entry should be either an IP address (for
|
8697
|
+
# example, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).
|
8698
|
+
# Corresponds to the JSON property `sourceIpRanges`
|
8699
|
+
# @return [Array<String>]
|
8700
|
+
attr_accessor :source_ip_ranges
|
8701
|
+
|
8634
8702
|
# This field identifies the subnetwork that the load balanced IP should belong
|
8635
8703
|
# to for this Forwarding Rule, used in internal load balancing and network load
|
8636
8704
|
# balancing with IPv6. If the network specified is in auto subnet mode, this
|
@@ -8679,6 +8747,7 @@ module Google
|
|
8679
8747
|
@service_directory_registrations = args[:service_directory_registrations] if args.key?(:service_directory_registrations)
|
8680
8748
|
@service_label = args[:service_label] if args.key?(:service_label)
|
8681
8749
|
@service_name = args[:service_name] if args.key?(:service_name)
|
8750
|
+
@source_ip_ranges = args[:source_ip_ranges] if args.key?(:source_ip_ranges)
|
8682
8751
|
@subnetwork = args[:subnetwork] if args.key?(:subnetwork)
|
8683
8752
|
@target = args[:target] if args.key?(:target)
|
8684
8753
|
end
|
@@ -9201,7 +9270,7 @@ module Google
|
|
9201
9270
|
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
9202
9271
|
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
9203
9272
|
# description: Does not grant access after Sep 2020 expression: request.time <
|
9204
|
-
# timestamp('2020-10-01T00:00:00.000Z')
|
9273
|
+
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
|
9205
9274
|
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
9206
9275
|
# google.com/iam/docs/).
|
9207
9276
|
# Corresponds to the JSON property `policy`
|
@@ -9298,7 +9367,7 @@ module Google
|
|
9298
9367
|
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
9299
9368
|
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
9300
9369
|
# description: Does not grant access after Sep 2020 expression: request.time <
|
9301
|
-
# timestamp('2020-10-01T00:00:00.000Z')
|
9370
|
+
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
|
9302
9371
|
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
9303
9372
|
# google.com/iam/docs/).
|
9304
9373
|
# Corresponds to the JSON property `policy`
|
@@ -11901,6 +11970,24 @@ module Google
|
|
11901
11970
|
# @return [Array<String>]
|
11902
11971
|
attr_accessor :licenses
|
11903
11972
|
|
11973
|
+
# A flag for marketplace VM disk created from the image, which is designed for
|
11974
|
+
# marketplace VM disk to prevent the proprietary data on the disk from being
|
11975
|
+
# accessed unwantedly. The flag will be inherited by the disk created from the
|
11976
|
+
# image. The disk with locked flag set to true will be prohibited from
|
11977
|
+
# performing the operations below: - R/W or R/O disk attach - Disk detach, if
|
11978
|
+
# disk is created via create-on-create - Create images - Create snapshots -
|
11979
|
+
# Create disk clone (create disk from the current disk) The image with the
|
11980
|
+
# locked field set to true will be prohibited from performing the operations
|
11981
|
+
# below: - Create images from the current image - Update the locked field for
|
11982
|
+
# the current image The instance with at least one disk with locked flag set to
|
11983
|
+
# true will be prohibited from performing the operations below: - Secondary disk
|
11984
|
+
# attach - Create instant snapshot - Create machine images - Create instance
|
11985
|
+
# template - Delete the instance with --keep-disk parameter set to true
|
11986
|
+
# Corresponds to the JSON property `locked`
|
11987
|
+
# @return [Boolean]
|
11988
|
+
attr_accessor :locked
|
11989
|
+
alias_method :locked?, :locked
|
11990
|
+
|
11904
11991
|
# Name of the resource; provided by the client when the resource is created. The
|
11905
11992
|
# name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
11906
11993
|
# name must be 1-63 characters long and match the regular expression `[a-z]([-a-
|
@@ -11961,10 +12048,12 @@ module Google
|
|
11961
12048
|
# @return [String]
|
11962
12049
|
attr_accessor :source_disk_id
|
11963
12050
|
|
11964
|
-
# URL of the source image used to create this image.
|
11965
|
-
#
|
11966
|
-
#
|
11967
|
-
#
|
12051
|
+
# URL of the source image used to create this image. The following are valid
|
12052
|
+
# formats for the URL: - https://www.googleapis.com/compute/v1/projects/
|
12053
|
+
# project_id/global/ images/image_name - projects/project_id/global/images/
|
12054
|
+
# image_name In order to create an image, you must provide the full or partial
|
12055
|
+
# URL of one of the following: - The rawDisk.source URL - The sourceDisk URL -
|
12056
|
+
# The sourceImage URL - The sourceSnapshot URL
|
11968
12057
|
# Corresponds to the JSON property `sourceImage`
|
11969
12058
|
# @return [String]
|
11970
12059
|
attr_accessor :source_image
|
@@ -11982,10 +12071,12 @@ module Google
|
|
11982
12071
|
# @return [String]
|
11983
12072
|
attr_accessor :source_image_id
|
11984
12073
|
|
11985
|
-
# URL of the source snapshot used to create this image.
|
11986
|
-
#
|
11987
|
-
#
|
11988
|
-
#
|
12074
|
+
# URL of the source snapshot used to create this image. The following are valid
|
12075
|
+
# formats for the URL: - https://www.googleapis.com/compute/v1/projects/
|
12076
|
+
# project_id/global/ snapshots/snapshot_name - projects/project_id/global/
|
12077
|
+
# snapshots/snapshot_name In order to create an image, you must provide the full
|
12078
|
+
# or partial URL of one of the following: - The rawDisk.source URL - The
|
12079
|
+
# sourceDisk URL - The sourceImage URL - The sourceSnapshot URL
|
11989
12080
|
# Corresponds to the JSON property `sourceSnapshot`
|
11990
12081
|
# @return [String]
|
11991
12082
|
attr_accessor :source_snapshot
|
@@ -12052,6 +12143,7 @@ module Google
|
|
12052
12143
|
@labels = args[:labels] if args.key?(:labels)
|
12053
12144
|
@license_codes = args[:license_codes] if args.key?(:license_codes)
|
12054
12145
|
@licenses = args[:licenses] if args.key?(:licenses)
|
12146
|
+
@locked = args[:locked] if args.key?(:locked)
|
12055
12147
|
@name = args[:name] if args.key?(:name)
|
12056
12148
|
@raw_disk = args[:raw_disk] if args.key?(:raw_disk)
|
12057
12149
|
@rollout_override = args[:rollout_override] if args.key?(:rollout_override)
|
@@ -12090,10 +12182,12 @@ module Google
|
|
12090
12182
|
# @return [String]
|
12091
12183
|
attr_accessor :sha1_checksum
|
12092
12184
|
|
12093
|
-
# The full Google Cloud Storage URL where the disk image is stored.
|
12094
|
-
#
|
12095
|
-
#
|
12096
|
-
#
|
12185
|
+
# The full Google Cloud Storage URL where the raw disk image archive is stored.
|
12186
|
+
# The following are valid formats for the URL: - https://storage.googleapis.com/
|
12187
|
+
# bucket_name/image_archive_name - https://storage.googleapis.com/bucket_name/
|
12188
|
+
# folder_name/ image_archive_name In order to create an image, you must provide
|
12189
|
+
# the full or partial URL of one of the following: - The rawDisk.source URL -
|
12190
|
+
# The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL
|
12097
12191
|
# Corresponds to the JSON property `source`
|
12098
12192
|
# @return [String]
|
12099
12193
|
attr_accessor :source
|
@@ -15238,7 +15332,7 @@ module Google
|
|
15238
15332
|
# @return [Array<Google::Apis::ComputeBeta::NetworkInterface>]
|
15239
15333
|
attr_accessor :network_interfaces
|
15240
15334
|
|
15241
|
-
#
|
15335
|
+
# Note that for MachineImage, this is not supported yet.
|
15242
15336
|
# Corresponds to the JSON property `networkPerformanceConfig`
|
15243
15337
|
# @return [Google::Apis::ComputeBeta::NetworkPerformanceConfig]
|
15244
15338
|
attr_accessor :network_performance_config
|
@@ -15249,7 +15343,8 @@ module Google
|
|
15249
15343
|
attr_accessor :post_key_revocation_action_type
|
15250
15344
|
|
15251
15345
|
# The private IPv6 google access type for VMs. If not specified, use
|
15252
|
-
# INHERIT_FROM_SUBNETWORK as default.
|
15346
|
+
# INHERIT_FROM_SUBNETWORK as default. Note that for MachineImage, this is not
|
15347
|
+
# supported yet.
|
15253
15348
|
# Corresponds to the JSON property `privateIpv6GoogleAccess`
|
15254
15349
|
# @return [String]
|
15255
15350
|
attr_accessor :private_ipv6_google_access
|
@@ -15260,7 +15355,7 @@ module Google
|
|
15260
15355
|
attr_accessor :reservation_affinity
|
15261
15356
|
|
15262
15357
|
# Resource policies (names, not ULRs) applied to instances created from these
|
15263
|
-
# properties.
|
15358
|
+
# properties. Note that for MachineImage, this is not supported yet.
|
15264
15359
|
# Corresponds to the JSON property `resourcePolicies`
|
15265
15360
|
# @return [Array<String>]
|
15266
15361
|
attr_accessor :resource_policies
|
@@ -16184,6 +16279,14 @@ module Google
|
|
16184
16279
|
# @return [Fixnum]
|
16185
16280
|
attr_accessor :requested_link_count
|
16186
16281
|
|
16282
|
+
# [Output Only] Set to true if the resource satisfies the zone separation
|
16283
|
+
# organization policy constraints and false otherwise. Defaults to false if the
|
16284
|
+
# field is not present.
|
16285
|
+
# Corresponds to the JSON property `satisfiesPzs`
|
16286
|
+
# @return [Boolean]
|
16287
|
+
attr_accessor :satisfies_pzs
|
16288
|
+
alias_method :satisfies_pzs?, :satisfies_pzs
|
16289
|
+
|
16187
16290
|
# [Output Only] Server-defined URL for the resource.
|
16188
16291
|
# Corresponds to the JSON property `selfLink`
|
16189
16292
|
# @return [String]
|
@@ -16228,6 +16331,7 @@ module Google
|
|
16228
16331
|
@peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
|
16229
16332
|
@provisioned_link_count = args[:provisioned_link_count] if args.key?(:provisioned_link_count)
|
16230
16333
|
@requested_link_count = args[:requested_link_count] if args.key?(:requested_link_count)
|
16334
|
+
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
16231
16335
|
@self_link = args[:self_link] if args.key?(:self_link)
|
16232
16336
|
@state = args[:state] if args.key?(:state)
|
16233
16337
|
end
|
@@ -16453,6 +16557,14 @@ module Google
|
|
16453
16557
|
# @return [String]
|
16454
16558
|
attr_accessor :router
|
16455
16559
|
|
16560
|
+
# [Output Only] Set to true if the resource satisfies the zone separation
|
16561
|
+
# organization policy constraints and false otherwise. Defaults to false if the
|
16562
|
+
# field is not present.
|
16563
|
+
# Corresponds to the JSON property `satisfiesPzs`
|
16564
|
+
# @return [Boolean]
|
16565
|
+
attr_accessor :satisfies_pzs
|
16566
|
+
alias_method :satisfies_pzs?, :satisfies_pzs
|
16567
|
+
|
16456
16568
|
# [Output Only] Server-defined URL for the resource.
|
16457
16569
|
# Corresponds to the JSON property `selfLink`
|
16458
16570
|
# @return [String]
|
@@ -16524,6 +16636,7 @@ module Google
|
|
16524
16636
|
@private_interconnect_info = args[:private_interconnect_info] if args.key?(:private_interconnect_info)
|
16525
16637
|
@region = args[:region] if args.key?(:region)
|
16526
16638
|
@router = args[:router] if args.key?(:router)
|
16639
|
+
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
16527
16640
|
@self_link = args[:self_link] if args.key?(:self_link)
|
16528
16641
|
@state = args[:state] if args.key?(:state)
|
16529
16642
|
@type = args[:type] if args.key?(:type)
|
@@ -17351,6 +17464,13 @@ module Google
|
|
17351
17464
|
# @return [String]
|
17352
17465
|
attr_accessor :status
|
17353
17466
|
|
17467
|
+
# [Output Only] Set to true for locations that support physical zone separation.
|
17468
|
+
# Defaults to false if the field is not present.
|
17469
|
+
# Corresponds to the JSON property `supportsPzs`
|
17470
|
+
# @return [Boolean]
|
17471
|
+
attr_accessor :supports_pzs
|
17472
|
+
alias_method :supports_pzs?, :supports_pzs
|
17473
|
+
|
17354
17474
|
def initialize(**args)
|
17355
17475
|
update!(**args)
|
17356
17476
|
end
|
@@ -17372,6 +17492,7 @@ module Google
|
|
17372
17492
|
@region_infos = args[:region_infos] if args.key?(:region_infos)
|
17373
17493
|
@self_link = args[:self_link] if args.key?(:self_link)
|
17374
17494
|
@status = args[:status] if args.key?(:status)
|
17495
|
+
@supports_pzs = args[:supports_pzs] if args.key?(:supports_pzs)
|
17375
17496
|
end
|
17376
17497
|
end
|
17377
17498
|
|
@@ -19325,7 +19446,7 @@ module Google
|
|
19325
19446
|
attr_accessor :kind
|
19326
19447
|
|
19327
19448
|
# Maximum Transmission Unit in bytes. The minimum value for this field is 1460
|
19328
|
-
# and the maximum value is 1500 bytes.
|
19449
|
+
# and the maximum value is 1500 bytes. If unspecified, defaults to 1460.
|
19329
19450
|
# Corresponds to the JSON property `mtu`
|
19330
19451
|
# @return [Fixnum]
|
19331
19452
|
attr_accessor :mtu
|
@@ -20653,9 +20774,8 @@ module Google
|
|
20653
20774
|
alias_method :export_custom_routes?, :export_custom_routes
|
20654
20775
|
|
20655
20776
|
# Whether subnet routes with public IP range are exported. The default value is
|
20656
|
-
# true, all subnet routes are exported.
|
20657
|
-
#
|
20658
|
-
# are not controlled by this field.
|
20777
|
+
# true, all subnet routes are exported. IPv4 special-use ranges are always
|
20778
|
+
# exported to peers and are not controlled by this field.
|
20659
20779
|
# Corresponds to the JSON property `exportSubnetRoutesWithPublicIp`
|
20660
20780
|
# @return [Boolean]
|
20661
20781
|
attr_accessor :export_subnet_routes_with_public_ip
|
@@ -20668,9 +20788,8 @@ module Google
|
|
20668
20788
|
alias_method :import_custom_routes?, :import_custom_routes
|
20669
20789
|
|
20670
20790
|
# Whether subnet routes with public IP range are imported. The default value is
|
20671
|
-
# false.
|
20672
|
-
#
|
20673
|
-
# this field.
|
20791
|
+
# false. IPv4 special-use ranges are always imported from peers and are not
|
20792
|
+
# controlled by this field.
|
20674
20793
|
# Corresponds to the JSON property `importSubnetRoutesWithPublicIp`
|
20675
20794
|
# @return [Boolean]
|
20676
20795
|
attr_accessor :import_subnet_routes_with_public_ip
|
@@ -20961,7 +21080,7 @@ module Google
|
|
20961
21080
|
end
|
20962
21081
|
end
|
20963
21082
|
|
20964
|
-
#
|
21083
|
+
# Represents a sole-tenant Node Group resource. A sole-tenant node is a physical
|
20965
21084
|
# server that is dedicated to hosting VM instances only for your specific
|
20966
21085
|
# project. Use sole-tenant nodes to keep your instances physically separated
|
20967
21086
|
# from instances in other projects, or to group your instances together on the
|
@@ -24564,7 +24683,7 @@ module Google
|
|
24564
24683
|
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
24565
24684
|
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
24566
24685
|
# description: Does not grant access after Sep 2020 expression: request.time <
|
24567
|
-
# timestamp('2020-10-01T00:00:00.000Z')
|
24686
|
+
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
|
24568
24687
|
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
24569
24688
|
# google.com/iam/docs/).
|
24570
24689
|
class Policy
|
@@ -26784,6 +26903,47 @@ module Google
|
|
26784
26903
|
end
|
26785
26904
|
end
|
26786
26905
|
|
26906
|
+
#
|
26907
|
+
class RegionInstanceGroupManagersResizeAdvancedRequest
|
26908
|
+
include Google::Apis::Core::Hashable
|
26909
|
+
|
26910
|
+
# If this flag is true, the managed instance group attempts to create all
|
26911
|
+
# instances initiated by this resize request only once. If there is an error
|
26912
|
+
# during creation, the managed instance group does not retry create this
|
26913
|
+
# instance, and we will decrease the targetSize of the request instead. If the
|
26914
|
+
# flag is false, the group attempts to recreate each instance continuously until
|
26915
|
+
# it succeeds. This flag matters only in the first attempt of creation of an
|
26916
|
+
# instance. After an instance is successfully created while this flag is enabled,
|
26917
|
+
# the instance behaves the same way as all the other instances created with a
|
26918
|
+
# regular resize request. In particular, if a running instance dies unexpectedly
|
26919
|
+
# at a later time and needs to be recreated, this mode does not affect the
|
26920
|
+
# recreation behavior in that scenario. This flag is applicable only to the
|
26921
|
+
# current resize request. It does not influence other resize requests in any way.
|
26922
|
+
# You can see which instances ar being created in which mode by calling the get
|
26923
|
+
# or listManagedInstances API.
|
26924
|
+
# Corresponds to the JSON property `noCreationRetries`
|
26925
|
+
# @return [Boolean]
|
26926
|
+
attr_accessor :no_creation_retries
|
26927
|
+
alias_method :no_creation_retries?, :no_creation_retries
|
26928
|
+
|
26929
|
+
# The number of running instances that the managed instance group should
|
26930
|
+
# maintain at any given time. The group automatically adds or removes instances
|
26931
|
+
# to maintain the number of instances specified by this parameter.
|
26932
|
+
# Corresponds to the JSON property `targetSize`
|
26933
|
+
# @return [Fixnum]
|
26934
|
+
attr_accessor :target_size
|
26935
|
+
|
26936
|
+
def initialize(**args)
|
26937
|
+
update!(**args)
|
26938
|
+
end
|
26939
|
+
|
26940
|
+
# Update properties of this object
|
26941
|
+
def update!(**args)
|
26942
|
+
@no_creation_retries = args[:no_creation_retries] if args.key?(:no_creation_retries)
|
26943
|
+
@target_size = args[:target_size] if args.key?(:target_size)
|
26944
|
+
end
|
26945
|
+
end
|
26946
|
+
|
26787
26947
|
#
|
26788
26948
|
class RegionInstanceGroupManagersSetAutoHealingRequest
|
26789
26949
|
include Google::Apis::Core::Hashable
|
@@ -27217,7 +27377,7 @@ module Google
|
|
27217
27377
|
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
27218
27378
|
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
27219
27379
|
# description: Does not grant access after Sep 2020 expression: request.time <
|
27220
|
-
# timestamp('2020-10-01T00:00:00.000Z')
|
27380
|
+
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
|
27221
27381
|
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
27222
27382
|
# google.com/iam/docs/).
|
27223
27383
|
# Corresponds to the JSON property `policy`
|
@@ -27374,6 +27534,7 @@ module Google
|
|
27374
27534
|
attr_accessor :share_settings
|
27375
27535
|
|
27376
27536
|
# This reservation type allows to pre allocate specific instance configuration.
|
27537
|
+
# Next ID: 5
|
27377
27538
|
# Corresponds to the JSON property `specificReservation`
|
27378
27539
|
# @return [Google::Apis::ComputeBeta::AllocationSpecificSkuReservation]
|
27379
27540
|
attr_accessor :specific_reservation
|
@@ -28750,6 +28911,11 @@ module Google
|
|
28750
28911
|
class Route
|
28751
28912
|
include Google::Apis::Core::Hashable
|
28752
28913
|
|
28914
|
+
# [Output Only] AS path.
|
28915
|
+
# Corresponds to the JSON property `asPaths`
|
28916
|
+
# @return [Array<Google::Apis::ComputeBeta::RouteAsPath>]
|
28917
|
+
attr_accessor :as_paths
|
28918
|
+
|
28753
28919
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
28754
28920
|
# Corresponds to the JSON property `creationTimestamp`
|
28755
28921
|
# @return [String]
|
@@ -28854,6 +29020,15 @@ module Google
|
|
28854
29020
|
# @return [Fixnum]
|
28855
29021
|
attr_accessor :priority
|
28856
29022
|
|
29023
|
+
# [Output Only] The type of this route, which can be one of the following values:
|
29024
|
+
# - 'TRANSIT' for a transit route that this router learned from another Cloud
|
29025
|
+
# Router and will readvertise to one of its BGP peers - 'SUBNET' for a route
|
29026
|
+
# from a subnet of the VPC - 'BGP' for a route learned from a BGP peer of this
|
29027
|
+
# router - 'STATIC' for a static route
|
29028
|
+
# Corresponds to the JSON property `routeType`
|
29029
|
+
# @return [String]
|
29030
|
+
attr_accessor :route_type
|
29031
|
+
|
28857
29032
|
# [Output Only] Server-defined fully-qualified URL for this resource.
|
28858
29033
|
# Corresponds to the JSON property `selfLink`
|
28859
29034
|
# @return [String]
|
@@ -28876,6 +29051,7 @@ module Google
|
|
28876
29051
|
|
28877
29052
|
# Update properties of this object
|
28878
29053
|
def update!(**args)
|
29054
|
+
@as_paths = args[:as_paths] if args.key?(:as_paths)
|
28879
29055
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
28880
29056
|
@description = args[:description] if args.key?(:description)
|
28881
29057
|
@dest_range = args[:dest_range] if args.key?(:dest_range)
|
@@ -28892,6 +29068,7 @@ module Google
|
|
28892
29068
|
@next_hop_peering = args[:next_hop_peering] if args.key?(:next_hop_peering)
|
28893
29069
|
@next_hop_vpn_tunnel = args[:next_hop_vpn_tunnel] if args.key?(:next_hop_vpn_tunnel)
|
28894
29070
|
@priority = args[:priority] if args.key?(:priority)
|
29071
|
+
@route_type = args[:route_type] if args.key?(:route_type)
|
28895
29072
|
@self_link = args[:self_link] if args.key?(:self_link)
|
28896
29073
|
@tags = args[:tags] if args.key?(:tags)
|
28897
29074
|
@warnings = args[:warnings] if args.key?(:warnings)
|
@@ -28962,6 +29139,37 @@ module Google
|
|
28962
29139
|
end
|
28963
29140
|
end
|
28964
29141
|
|
29142
|
+
#
|
29143
|
+
class RouteAsPath
|
29144
|
+
include Google::Apis::Core::Hashable
|
29145
|
+
|
29146
|
+
# [Output Only] The AS numbers of the AS Path.
|
29147
|
+
# Corresponds to the JSON property `asLists`
|
29148
|
+
# @return [Array<Fixnum>]
|
29149
|
+
attr_accessor :as_lists
|
29150
|
+
|
29151
|
+
# [Output Only] The type of the AS Path, which can be one of the following
|
29152
|
+
# values: - 'AS_SET': unordered set of autonomous systems that the route in has
|
29153
|
+
# traversed - 'AS_SEQUENCE': ordered set of autonomous systems that the route
|
29154
|
+
# has traversed - 'AS_CONFED_SEQUENCE': ordered set of Member Autonomous Systems
|
29155
|
+
# in the local confederation that the route has traversed - 'AS_CONFED_SET':
|
29156
|
+
# unordered set of Member Autonomous Systems in the local confederation that the
|
29157
|
+
# route has traversed
|
29158
|
+
# Corresponds to the JSON property `pathSegmentType`
|
29159
|
+
# @return [String]
|
29160
|
+
attr_accessor :path_segment_type
|
29161
|
+
|
29162
|
+
def initialize(**args)
|
29163
|
+
update!(**args)
|
29164
|
+
end
|
29165
|
+
|
29166
|
+
# Update properties of this object
|
29167
|
+
def update!(**args)
|
29168
|
+
@as_lists = args[:as_lists] if args.key?(:as_lists)
|
29169
|
+
@path_segment_type = args[:path_segment_type] if args.key?(:path_segment_type)
|
29170
|
+
end
|
29171
|
+
end
|
29172
|
+
|
28965
29173
|
# Contains a list of Route resources.
|
28966
29174
|
class RouteList
|
28967
29175
|
include Google::Apis::Core::Hashable
|
@@ -29428,7 +29636,7 @@ module Google
|
|
29428
29636
|
# @return [Fixnum]
|
29429
29637
|
attr_accessor :advertised_route_priority
|
29430
29638
|
|
29431
|
-
# BFD configuration for the BGP peering.
|
29639
|
+
# BFD configuration for the BGP peering.
|
29432
29640
|
# Corresponds to the JSON property `bfd`
|
29433
29641
|
# @return [Google::Apis::ComputeBeta::RouterBgpPeerBfd]
|
29434
29642
|
attr_accessor :bfd
|
@@ -29521,8 +29729,8 @@ module Google
|
|
29521
29729
|
# The minimum interval, in milliseconds, between BFD control packets received
|
29522
29730
|
# from the peer router. The actual value is negotiated between the two routers
|
29523
29731
|
# and is equal to the greater of this value and the transmit interval of the
|
29524
|
-
# other router.
|
29525
|
-
#
|
29732
|
+
# other router. If set, this value must be between 1000 and 30000. The default
|
29733
|
+
# is 1000.
|
29526
29734
|
# Corresponds to the JSON property `minReceiveInterval`
|
29527
29735
|
# @return [Fixnum]
|
29528
29736
|
attr_accessor :min_receive_interval
|
@@ -29530,24 +29738,24 @@ module Google
|
|
29530
29738
|
# The minimum interval, in milliseconds, between BFD control packets transmitted
|
29531
29739
|
# to the peer router. The actual value is negotiated between the two routers and
|
29532
29740
|
# is equal to the greater of this value and the corresponding receive interval
|
29533
|
-
# of the other router.
|
29534
|
-
#
|
29741
|
+
# of the other router. If set, this value must be between 1000 and 30000. The
|
29742
|
+
# default is 1000.
|
29535
29743
|
# Corresponds to the JSON property `minTransmitInterval`
|
29536
29744
|
# @return [Fixnum]
|
29537
29745
|
attr_accessor :min_transmit_interval
|
29538
29746
|
|
29539
29747
|
# The number of consecutive BFD packets that must be missed before BFD declares
|
29540
|
-
# that a peer is unavailable.
|
29541
|
-
#
|
29748
|
+
# that a peer is unavailable. If set, the value must be a value between 5 and 16.
|
29749
|
+
# The default is 5.
|
29542
29750
|
# Corresponds to the JSON property `multiplier`
|
29543
29751
|
# @return [Fixnum]
|
29544
29752
|
attr_accessor :multiplier
|
29545
29753
|
|
29546
|
-
# The BFD session initialization mode for this BGP peer.
|
29547
|
-
#
|
29548
|
-
#
|
29549
|
-
#
|
29550
|
-
#
|
29754
|
+
# The BFD session initialization mode for this BGP peer. If set to ACTIVE, the
|
29755
|
+
# Cloud Router will initiate the BFD session for this BGP peer. If set to
|
29756
|
+
# PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD
|
29757
|
+
# session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP
|
29758
|
+
# peer. The default is PASSIVE.
|
29551
29759
|
# Corresponds to the JSON property `sessionInitializationMode`
|
29552
29760
|
# @return [String]
|
29553
29761
|
attr_accessor :session_initialization_mode
|
@@ -29789,6 +29997,17 @@ module Google
|
|
29789
29997
|
# @return [Array<String>]
|
29790
29998
|
attr_accessor :drain_nat_ips
|
29791
29999
|
|
30000
|
+
# Enable Dynamic Port Allocation. If not specified, it is disabled by default.
|
30001
|
+
# If set to true, - Dynamic Port Allocation will be enabled on this NAT config. -
|
30002
|
+
# enableEndpointIndependentMapping cannot be set to true. - If minPorts is set,
|
30003
|
+
# minPortsPerVm must be set to a power of two greater than or equal to 32. If
|
30004
|
+
# minPortsPerVm is not set, a minimum of 32 ports will be allocated to a VM from
|
30005
|
+
# this NAT config.
|
30006
|
+
# Corresponds to the JSON property `enableDynamicPortAllocation`
|
30007
|
+
# @return [Boolean]
|
30008
|
+
attr_accessor :enable_dynamic_port_allocation
|
30009
|
+
alias_method :enable_dynamic_port_allocation?, :enable_dynamic_port_allocation
|
30010
|
+
|
29792
30011
|
#
|
29793
30012
|
# Corresponds to the JSON property `enableEndpointIndependentMapping`
|
29794
30013
|
# @return [Boolean]
|
@@ -29805,6 +30024,17 @@ module Google
|
|
29805
30024
|
# @return [Google::Apis::ComputeBeta::RouterNatLogConfig]
|
29806
30025
|
attr_accessor :log_config
|
29807
30026
|
|
30027
|
+
# Maximum number of ports allocated to a VM from this NAT config when Dynamic
|
30028
|
+
# Port Allocation is enabled. If Dynamic Port Allocation is not enabled, this
|
30029
|
+
# field has no effect. If Dynamic Port Allocation is enabled, and this field is
|
30030
|
+
# set, it must be set to a power of two greater than minPortsPerVm, or 64 if
|
30031
|
+
# minPortsPerVm is not set. If Dynamic Port Allocation is enabled and this field
|
30032
|
+
# is not set, a maximum of 65536 ports will be allocated to a VM from this NAT
|
30033
|
+
# config.
|
30034
|
+
# Corresponds to the JSON property `maxPortsPerVm`
|
30035
|
+
# @return [Fixnum]
|
30036
|
+
attr_accessor :max_ports_per_vm
|
30037
|
+
|
29808
30038
|
# Minimum number of ports allocated to a VM from this NAT config. If not set, a
|
29809
30039
|
# default number of ports is allocated to a VM. This is rounded up to the
|
29810
30040
|
# nearest power of 2. For example, if the value of this field is 50, at least 64
|
@@ -29834,6 +30064,11 @@ module Google
|
|
29834
30064
|
# @return [Array<String>]
|
29835
30065
|
attr_accessor :nat_ips
|
29836
30066
|
|
30067
|
+
# A list of rules associated with this NAT.
|
30068
|
+
# Corresponds to the JSON property `rules`
|
30069
|
+
# @return [Array<Google::Apis::ComputeBeta::RouterNatRule>]
|
30070
|
+
attr_accessor :rules
|
30071
|
+
|
29837
30072
|
# Specify the Nat option, which can take one of the following values: -
|
29838
30073
|
# ALL_SUBNETWORKS_ALL_IP_RANGES: All of the IP ranges in every Subnetwork are
|
29839
30074
|
# allowed to Nat. - ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES: All of the primary IP
|
@@ -29860,6 +30095,12 @@ module Google
|
|
29860
30095
|
# @return [Fixnum]
|
29861
30096
|
attr_accessor :tcp_established_idle_timeout_sec
|
29862
30097
|
|
30098
|
+
# Timeout (in seconds) for TCP connections that are in TIME_WAIT state. Defaults
|
30099
|
+
# to 120s if not set.
|
30100
|
+
# Corresponds to the JSON property `tcpTimeWaitTimeoutSec`
|
30101
|
+
# @return [Fixnum]
|
30102
|
+
attr_accessor :tcp_time_wait_timeout_sec
|
30103
|
+
|
29863
30104
|
# Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not
|
29864
30105
|
# set.
|
29865
30106
|
# Corresponds to the JSON property `tcpTransitoryIdleTimeoutSec`
|
@@ -29878,16 +30119,20 @@ module Google
|
|
29878
30119
|
# Update properties of this object
|
29879
30120
|
def update!(**args)
|
29880
30121
|
@drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
|
30122
|
+
@enable_dynamic_port_allocation = args[:enable_dynamic_port_allocation] if args.key?(:enable_dynamic_port_allocation)
|
29881
30123
|
@enable_endpoint_independent_mapping = args[:enable_endpoint_independent_mapping] if args.key?(:enable_endpoint_independent_mapping)
|
29882
30124
|
@icmp_idle_timeout_sec = args[:icmp_idle_timeout_sec] if args.key?(:icmp_idle_timeout_sec)
|
29883
30125
|
@log_config = args[:log_config] if args.key?(:log_config)
|
30126
|
+
@max_ports_per_vm = args[:max_ports_per_vm] if args.key?(:max_ports_per_vm)
|
29884
30127
|
@min_ports_per_vm = args[:min_ports_per_vm] if args.key?(:min_ports_per_vm)
|
29885
30128
|
@name = args[:name] if args.key?(:name)
|
29886
30129
|
@nat_ip_allocate_option = args[:nat_ip_allocate_option] if args.key?(:nat_ip_allocate_option)
|
29887
30130
|
@nat_ips = args[:nat_ips] if args.key?(:nat_ips)
|
30131
|
+
@rules = args[:rules] if args.key?(:rules)
|
29888
30132
|
@source_subnetwork_ip_ranges_to_nat = args[:source_subnetwork_ip_ranges_to_nat] if args.key?(:source_subnetwork_ip_ranges_to_nat)
|
29889
30133
|
@subnetworks = args[:subnetworks] if args.key?(:subnetworks)
|
29890
30134
|
@tcp_established_idle_timeout_sec = args[:tcp_established_idle_timeout_sec] if args.key?(:tcp_established_idle_timeout_sec)
|
30135
|
+
@tcp_time_wait_timeout_sec = args[:tcp_time_wait_timeout_sec] if args.key?(:tcp_time_wait_timeout_sec)
|
29891
30136
|
@tcp_transitory_idle_timeout_sec = args[:tcp_transitory_idle_timeout_sec] if args.key?(:tcp_transitory_idle_timeout_sec)
|
29892
30137
|
@udp_idle_timeout_sec = args[:udp_idle_timeout_sec] if args.key?(:udp_idle_timeout_sec)
|
29893
30138
|
end
|
@@ -29923,6 +30168,80 @@ module Google
|
|
29923
30168
|
end
|
29924
30169
|
end
|
29925
30170
|
|
30171
|
+
#
|
30172
|
+
class RouterNatRule
|
30173
|
+
include Google::Apis::Core::Hashable
|
30174
|
+
|
30175
|
+
# The action to be enforced for traffic that matches this rule.
|
30176
|
+
# Corresponds to the JSON property `action`
|
30177
|
+
# @return [Google::Apis::ComputeBeta::RouterNatRuleAction]
|
30178
|
+
attr_accessor :action
|
30179
|
+
|
30180
|
+
# An optional description of this rule.
|
30181
|
+
# Corresponds to the JSON property `description`
|
30182
|
+
# @return [String]
|
30183
|
+
attr_accessor :description
|
30184
|
+
|
30185
|
+
# CEL expression that specifies the match condition that egress traffic from a
|
30186
|
+
# VM is evaluated against. If it evaluates to true, the corresponding `action`
|
30187
|
+
# is enforced. The following examples are valid match expressions for public NAT:
|
30188
|
+
# "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
|
30189
|
+
# 0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The
|
30190
|
+
# following example is a valid match expression for private NAT: "nexthop.hub ==
|
30191
|
+
# '/projects/my-project/global/hub/hub-1'"
|
30192
|
+
# Corresponds to the JSON property `match`
|
30193
|
+
# @return [String]
|
30194
|
+
attr_accessor :match
|
30195
|
+
|
30196
|
+
# An integer uniquely identifying a rule in the list. The rule number must be a
|
30197
|
+
# positive value between 0 and 65000, and must be unique among rules within a
|
30198
|
+
# NAT.
|
30199
|
+
# Corresponds to the JSON property `ruleNumber`
|
30200
|
+
# @return [Fixnum]
|
30201
|
+
attr_accessor :rule_number
|
30202
|
+
|
30203
|
+
def initialize(**args)
|
30204
|
+
update!(**args)
|
30205
|
+
end
|
30206
|
+
|
30207
|
+
# Update properties of this object
|
30208
|
+
def update!(**args)
|
30209
|
+
@action = args[:action] if args.key?(:action)
|
30210
|
+
@description = args[:description] if args.key?(:description)
|
30211
|
+
@match = args[:match] if args.key?(:match)
|
30212
|
+
@rule_number = args[:rule_number] if args.key?(:rule_number)
|
30213
|
+
end
|
30214
|
+
end
|
30215
|
+
|
30216
|
+
#
|
30217
|
+
class RouterNatRuleAction
|
30218
|
+
include Google::Apis::Core::Hashable
|
30219
|
+
|
30220
|
+
# A list of URLs of the IP resources used for this NAT rule. These IP addresses
|
30221
|
+
# must be valid static external IP addresses assigned to the project. This field
|
30222
|
+
# is used for public NAT.
|
30223
|
+
# Corresponds to the JSON property `sourceNatActiveIps`
|
30224
|
+
# @return [Array<String>]
|
30225
|
+
attr_accessor :source_nat_active_ips
|
30226
|
+
|
30227
|
+
# A list of URLs of the IP resources to be drained. These IPs must be valid
|
30228
|
+
# static external IPs that have been assigned to the NAT. These IPs should be
|
30229
|
+
# used for updating/patching a NAT rule only. This field is used for public NAT.
|
30230
|
+
# Corresponds to the JSON property `sourceNatDrainIps`
|
30231
|
+
# @return [Array<String>]
|
30232
|
+
attr_accessor :source_nat_drain_ips
|
30233
|
+
|
30234
|
+
def initialize(**args)
|
30235
|
+
update!(**args)
|
30236
|
+
end
|
30237
|
+
|
30238
|
+
# Update properties of this object
|
30239
|
+
def update!(**args)
|
30240
|
+
@source_nat_active_ips = args[:source_nat_active_ips] if args.key?(:source_nat_active_ips)
|
30241
|
+
@source_nat_drain_ips = args[:source_nat_drain_ips] if args.key?(:source_nat_drain_ips)
|
30242
|
+
end
|
30243
|
+
end
|
30244
|
+
|
29926
30245
|
# Defines the IP ranges that want to use NAT for a subnetwork.
|
29927
30246
|
class RouterNatSubnetworkToNat
|
29928
30247
|
include Google::Apis::Core::Hashable
|
@@ -30128,6 +30447,11 @@ module Google
|
|
30128
30447
|
# @return [Fixnum]
|
30129
30448
|
attr_accessor :num_vm_endpoints_with_nat_mappings
|
30130
30449
|
|
30450
|
+
# Status of rules in this NAT.
|
30451
|
+
# Corresponds to the JSON property `ruleStatus`
|
30452
|
+
# @return [Array<Google::Apis::ComputeBeta::RouterStatusNatStatusNatRuleStatus>]
|
30453
|
+
attr_accessor :rule_status
|
30454
|
+
|
30131
30455
|
# A list of fully qualified URLs of reserved IP address resources.
|
30132
30456
|
# Corresponds to the JSON property `userAllocatedNatIpResources`
|
30133
30457
|
# @return [Array<String>]
|
@@ -30151,11 +30475,58 @@ module Google
|
|
30151
30475
|
@min_extra_nat_ips_needed = args[:min_extra_nat_ips_needed] if args.key?(:min_extra_nat_ips_needed)
|
30152
30476
|
@name = args[:name] if args.key?(:name)
|
30153
30477
|
@num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
|
30478
|
+
@rule_status = args[:rule_status] if args.key?(:rule_status)
|
30154
30479
|
@user_allocated_nat_ip_resources = args[:user_allocated_nat_ip_resources] if args.key?(:user_allocated_nat_ip_resources)
|
30155
30480
|
@user_allocated_nat_ips = args[:user_allocated_nat_ips] if args.key?(:user_allocated_nat_ips)
|
30156
30481
|
end
|
30157
30482
|
end
|
30158
30483
|
|
30484
|
+
# Status of a NAT Rule contained in this NAT.
|
30485
|
+
class RouterStatusNatStatusNatRuleStatus
|
30486
|
+
include Google::Apis::Core::Hashable
|
30487
|
+
|
30488
|
+
# A list of active IPs for NAT. Example: ["1.1.1.1", "179.12.26.133"].
|
30489
|
+
# Corresponds to the JSON property `activeNatIps`
|
30490
|
+
# @return [Array<String>]
|
30491
|
+
attr_accessor :active_nat_ips
|
30492
|
+
|
30493
|
+
# A list of IPs for NAT that are in drain mode. Example: ["1.1.1.1", "179.12.26.
|
30494
|
+
# 133"].
|
30495
|
+
# Corresponds to the JSON property `drainNatIps`
|
30496
|
+
# @return [Array<String>]
|
30497
|
+
attr_accessor :drain_nat_ips
|
30498
|
+
|
30499
|
+
# The number of extra IPs to allocate. This will be greater than 0 only if the
|
30500
|
+
# existing IPs in this NAT Rule are NOT enough to allow all configured VMs to
|
30501
|
+
# use NAT.
|
30502
|
+
# Corresponds to the JSON property `minExtraIpsNeeded`
|
30503
|
+
# @return [Fixnum]
|
30504
|
+
attr_accessor :min_extra_ips_needed
|
30505
|
+
|
30506
|
+
# Number of VM endpoints (i.e., NICs) that have NAT Mappings from this NAT Rule.
|
30507
|
+
# Corresponds to the JSON property `numVmEndpointsWithNatMappings`
|
30508
|
+
# @return [Fixnum]
|
30509
|
+
attr_accessor :num_vm_endpoints_with_nat_mappings
|
30510
|
+
|
30511
|
+
# Rule number of the rule.
|
30512
|
+
# Corresponds to the JSON property `ruleNumber`
|
30513
|
+
# @return [Fixnum]
|
30514
|
+
attr_accessor :rule_number
|
30515
|
+
|
30516
|
+
def initialize(**args)
|
30517
|
+
update!(**args)
|
30518
|
+
end
|
30519
|
+
|
30520
|
+
# Update properties of this object
|
30521
|
+
def update!(**args)
|
30522
|
+
@active_nat_ips = args[:active_nat_ips] if args.key?(:active_nat_ips)
|
30523
|
+
@drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
|
30524
|
+
@min_extra_ips_needed = args[:min_extra_ips_needed] if args.key?(:min_extra_ips_needed)
|
30525
|
+
@num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
|
30526
|
+
@rule_number = args[:rule_number] if args.key?(:rule_number)
|
30527
|
+
end
|
30528
|
+
end
|
30529
|
+
|
30159
30530
|
#
|
30160
30531
|
class RouterStatusResponse
|
30161
30532
|
include Google::Apis::Core::Hashable
|
@@ -30589,6 +30960,11 @@ module Google
|
|
30589
30960
|
# @return [Fixnum]
|
30590
30961
|
attr_accessor :host_error_timeout_seconds
|
30591
30962
|
|
30963
|
+
# Specifies the termination action for the instance.
|
30964
|
+
# Corresponds to the JSON property `instanceTerminationAction`
|
30965
|
+
# @return [String]
|
30966
|
+
attr_accessor :instance_termination_action
|
30967
|
+
|
30592
30968
|
# An opaque location hint used to place the instance close to other resources.
|
30593
30969
|
# This field is for use by internal tools that use the public API.
|
30594
30970
|
# Corresponds to the JSON property `locationHint`
|
@@ -30636,6 +31012,11 @@ module Google
|
|
30636
31012
|
attr_accessor :preemptible
|
30637
31013
|
alias_method :preemptible?, :preemptible
|
30638
31014
|
|
31015
|
+
# Specifies the provisioning model of the instance.
|
31016
|
+
# Corresponds to the JSON property `provisioningModel`
|
31017
|
+
# @return [String]
|
31018
|
+
attr_accessor :provisioning_model
|
31019
|
+
|
30639
31020
|
def initialize(**args)
|
30640
31021
|
update!(**args)
|
30641
31022
|
end
|
@@ -30644,6 +31025,7 @@ module Google
|
|
30644
31025
|
def update!(**args)
|
30645
31026
|
@automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
|
30646
31027
|
@host_error_timeout_seconds = args[:host_error_timeout_seconds] if args.key?(:host_error_timeout_seconds)
|
31028
|
+
@instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action)
|
30647
31029
|
@location_hint = args[:location_hint] if args.key?(:location_hint)
|
30648
31030
|
@maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
|
30649
31031
|
@maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
|
@@ -30651,6 +31033,7 @@ module Google
|
|
30651
31033
|
@node_affinities = args[:node_affinities] if args.key?(:node_affinities)
|
30652
31034
|
@on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance)
|
30653
31035
|
@preemptible = args[:preemptible] if args.key?(:preemptible)
|
31036
|
+
@provisioning_model = args[:provisioning_model] if args.key?(:provisioning_model)
|
30654
31037
|
end
|
30655
31038
|
end
|
30656
31039
|
|
@@ -30881,8 +31264,8 @@ module Google
|
|
30881
31264
|
# HTTP requests targeting backend services. They filter requests before they hit
|
30882
31265
|
# the origin servers. CLOUD_ARMOR_EDGE - Cloud Armor edge security policies can
|
30883
31266
|
# be configured to filter incoming HTTP requests targeting backend services (
|
30884
|
-
# including Cloud CDN-enabled) as well as backend buckets (
|
30885
|
-
# requests before the request is served from Google
|
31267
|
+
# including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They
|
31268
|
+
# filter requests before the request is served from Google's cache.
|
30886
31269
|
# Corresponds to the JSON property `type`
|
30887
31270
|
# @return [String]
|
30888
31271
|
attr_accessor :type
|
@@ -31467,23 +31850,23 @@ module Google
|
|
31467
31850
|
attr_accessor :conform_action
|
31468
31851
|
|
31469
31852
|
# Determines the key to enforce the rate_limit_threshold on. Possible values are:
|
31470
|
-
#
|
31853
|
+
# "ALL" -- A single rate limit threshold is applied to all the requests
|
31471
31854
|
# matching this rule. This is the default value if this field 'enforce_on_key'
|
31472
|
-
# is not configured.
|
31473
|
-
# depprecated.
|
31474
|
-
# has this limit enforced separately.
|
31475
|
-
#
|
31476
|
-
# truncated to the first 128 bytes of the
|
31477
|
-
# present in the request, the key type defaults to
|
31855
|
+
# is not configured. "ALL_IPS" -- This definition, equivalent to "ALL", has been
|
31856
|
+
# depprecated. "IP" -- The source IP address of the request is the key. Each IP
|
31857
|
+
# has this limit enforced separately. "HTTP_HEADER" -- The value of the HTTP
|
31858
|
+
# header whose name is configured under "enforce_on_key_name". The key value is
|
31859
|
+
# truncated to the first 128 bytes of the header value. If no such header is
|
31860
|
+
# present in the request, the key type defaults to "ALL". "XFF_IP" -- The first
|
31478
31861
|
# IP address (i.e. the originating client IP address) specified in the list of
|
31479
|
-
# IPs under X-Forwarded-For HTTP
|
31480
|
-
# value is not a valid IP, the key type defaults to
|
31862
|
+
# IPs under X-Forwarded-For HTTP header. If no such header is present or the
|
31863
|
+
# value is not a valid IP, the key type defaults to "ALL".
|
31481
31864
|
# Corresponds to the JSON property `enforceOnKey`
|
31482
31865
|
# @return [String]
|
31483
31866
|
attr_accessor :enforce_on_key
|
31484
31867
|
|
31485
31868
|
# Rate limit key name applicable only for the following key types: HTTP_HEADER --
|
31486
|
-
# Name of the HTTP
|
31869
|
+
# Name of the HTTP header whose value is taken as the key value.
|
31487
31870
|
# Corresponds to the JSON property `enforceOnKeyName`
|
31488
31871
|
# @return [String]
|
31489
31872
|
attr_accessor :enforce_on_key_name
|
@@ -31710,7 +32093,7 @@ module Google
|
|
31710
32093
|
# Represents a ServiceAttachment resource. A service attachment represents a
|
31711
32094
|
# service that a producer has exposed. It encapsulates the load balancer which
|
31712
32095
|
# fronts the service runs and a list of NAT IP ranges that the producers uses to
|
31713
|
-
# represent the consumers connecting to the service. next tag =
|
32096
|
+
# represent the consumers connecting to the service. next tag = 20
|
31714
32097
|
class ServiceAttachment
|
31715
32098
|
include Google::Apis::Core::Hashable
|
31716
32099
|
|
@@ -32243,6 +32626,13 @@ module Google
|
|
32243
32626
|
class ShareSettings
|
32244
32627
|
include Google::Apis::Core::Hashable
|
32245
32628
|
|
32629
|
+
# A map of project id and project config. Using map format to ease add-to/remove-
|
32630
|
+
# from the Project list in PATCH command. In future we will deprecate (And later
|
32631
|
+
# remove) the array one.
|
32632
|
+
# Corresponds to the JSON property `projectMap`
|
32633
|
+
# @return [Hash<String,Google::Apis::ComputeBeta::ShareSettingsProjectConfig>]
|
32634
|
+
attr_accessor :project_map
|
32635
|
+
|
32246
32636
|
# A List of Project names to specify consumer projects for this shared-
|
32247
32637
|
# reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
|
32248
32638
|
# Corresponds to the JSON property `projects`
|
@@ -32260,11 +32650,32 @@ module Google
|
|
32260
32650
|
|
32261
32651
|
# Update properties of this object
|
32262
32652
|
def update!(**args)
|
32653
|
+
@project_map = args[:project_map] if args.key?(:project_map)
|
32263
32654
|
@projects = args[:projects] if args.key?(:projects)
|
32264
32655
|
@share_type = args[:share_type] if args.key?(:share_type)
|
32265
32656
|
end
|
32266
32657
|
end
|
32267
32658
|
|
32659
|
+
# Config for each project in the share settings.
|
32660
|
+
class ShareSettingsProjectConfig
|
32661
|
+
include Google::Apis::Core::Hashable
|
32662
|
+
|
32663
|
+
# The project ID, should be same as the key of this project config in the parent
|
32664
|
+
# map.
|
32665
|
+
# Corresponds to the JSON property `projectId`
|
32666
|
+
# @return [String]
|
32667
|
+
attr_accessor :project_id
|
32668
|
+
|
32669
|
+
def initialize(**args)
|
32670
|
+
update!(**args)
|
32671
|
+
end
|
32672
|
+
|
32673
|
+
# Update properties of this object
|
32674
|
+
def update!(**args)
|
32675
|
+
@project_id = args[:project_id] if args.key?(:project_id)
|
32676
|
+
end
|
32677
|
+
end
|
32678
|
+
|
32268
32679
|
# A set of Shielded Instance options.
|
32269
32680
|
class ShieldedInstanceConfig
|
32270
32681
|
include Google::Apis::Core::Hashable
|
@@ -33941,16 +34352,19 @@ module Google
|
|
33941
34352
|
class Subnetwork
|
33942
34353
|
include Google::Apis::Core::Hashable
|
33943
34354
|
|
33944
|
-
# Whether this subnetwork can conflict with static routes.
|
33945
|
-
# allows this subnetwork's primary and secondary ranges to
|
33946
|
-
# that have already been configured on
|
33947
|
-
#
|
33948
|
-
#
|
33949
|
-
#
|
33950
|
-
#
|
33951
|
-
#
|
33952
|
-
#
|
33953
|
-
#
|
34355
|
+
# Whether this subnetwork's ranges can conflict with existing static routes.
|
34356
|
+
# Setting this to true allows this subnetwork's primary and secondary ranges to
|
34357
|
+
# overlap with (and contain) static routes that have already been configured on
|
34358
|
+
# the corresponding network. For example if a static route has range 10.1.0.0/16,
|
34359
|
+
# a subnet range 10.0.0.0/8 could only be created if allow_conflicting_routes=
|
34360
|
+
# true. Overlapping is only allowed on subnetwork operations; routes whose
|
34361
|
+
# ranges conflict with this subnetwork's ranges won't be allowed unless route.
|
34362
|
+
# allow_conflicting_subnetworks is set to true. Typically packets destined to
|
34363
|
+
# IPs within the subnetwork (which may contain private/sensitive data) are
|
34364
|
+
# prevented from leaving the virtual network. Setting this field to true will
|
34365
|
+
# disable this feature. The default value is false and applies to all existing
|
34366
|
+
# subnetworks and automatically created subnetworks. This field cannot be set to
|
34367
|
+
# true at resource creation time.
|
33954
34368
|
# Corresponds to the JSON property `allowSubnetCidrRoutesOverlap`
|
33955
34369
|
# @return [Boolean]
|
33956
34370
|
attr_accessor :allow_subnet_cidr_routes_overlap
|
@@ -34051,9 +34465,8 @@ module Google
|
|
34051
34465
|
attr_accessor :name
|
34052
34466
|
|
34053
34467
|
# The URL of the network to which this subnetwork belongs, provided by the
|
34054
|
-
# client when initially creating the subnetwork.
|
34055
|
-
#
|
34056
|
-
# creation time.
|
34468
|
+
# client when initially creating the subnetwork. This field can be set only at
|
34469
|
+
# resource creation time.
|
34057
34470
|
# Corresponds to the JSON property `network`
|
34058
34471
|
# @return [String]
|
34059
34472
|
attr_accessor :network
|
@@ -34641,6 +35054,20 @@ module Google
|
|
34641
35054
|
# @return [String]
|
34642
35055
|
attr_accessor :policy
|
34643
35056
|
|
35057
|
+
# The number of backends per backend group assigned to each proxy instance or
|
35058
|
+
# each service mesh client. An input parameter to the `
|
35059
|
+
# CONSISTENT_HASH_SUBSETTING` algorithm. Can only be set if `policy` is set to `
|
35060
|
+
# CONSISTENT_HASH_SUBSETTING`. Can only be set if load balancing scheme is `
|
35061
|
+
# INTERNAL_MANAGED` or `INTERNAL_SELF_MANAGED`. `subset_size` is optional for
|
35062
|
+
# Internal HTTP(S) load balancing and required for Traffic Director. If you do
|
35063
|
+
# not provide this value, Cloud Load Balancing will calculate it dynamically to
|
35064
|
+
# optimize the number of proxies/clients visible to each backend and vice versa.
|
35065
|
+
# Must be greater than 0. If `subset_size` is larger than the number of backends/
|
35066
|
+
# endpoints, then subsetting is disabled.
|
35067
|
+
# Corresponds to the JSON property `subsetSize`
|
35068
|
+
# @return [Fixnum]
|
35069
|
+
attr_accessor :subset_size
|
35070
|
+
|
34644
35071
|
def initialize(**args)
|
34645
35072
|
update!(**args)
|
34646
35073
|
end
|
@@ -34648,6 +35075,7 @@ module Google
|
|
34648
35075
|
# Update properties of this object
|
34649
35076
|
def update!(**args)
|
34650
35077
|
@policy = args[:policy] if args.key?(:policy)
|
35078
|
+
@subset_size = args[:subset_size] if args.key?(:subset_size)
|
34651
35079
|
end
|
34652
35080
|
end
|
34653
35081
|
|
@@ -35509,6 +35937,25 @@ module Google
|
|
35509
35937
|
end
|
35510
35938
|
end
|
35511
35939
|
|
35940
|
+
#
|
35941
|
+
class TargetHttpsProxiesSetCertificateMapRequest
|
35942
|
+
include Google::Apis::Core::Hashable
|
35943
|
+
|
35944
|
+
# URL of the Certificate Map to associate with this TargetHttpsProxy.
|
35945
|
+
# Corresponds to the JSON property `certificateMap`
|
35946
|
+
# @return [String]
|
35947
|
+
attr_accessor :certificate_map
|
35948
|
+
|
35949
|
+
def initialize(**args)
|
35950
|
+
update!(**args)
|
35951
|
+
end
|
35952
|
+
|
35953
|
+
# Update properties of this object
|
35954
|
+
def update!(**args)
|
35955
|
+
@certificate_map = args[:certificate_map] if args.key?(:certificate_map)
|
35956
|
+
end
|
35957
|
+
end
|
35958
|
+
|
35512
35959
|
#
|
35513
35960
|
class TargetHttpsProxiesSetQuicOverrideRequest
|
35514
35961
|
include Google::Apis::Core::Hashable
|
@@ -35582,6 +36029,13 @@ module Google
|
|
35582
36029
|
# @return [String]
|
35583
36030
|
attr_accessor :authorization_policy
|
35584
36031
|
|
36032
|
+
# URL of a certificate map that identifies a certificate map associated with the
|
36033
|
+
# given target proxy. This field can only be set for global target proxies. If
|
36034
|
+
# set, sslCertificates will be ignored.
|
36035
|
+
# Corresponds to the JSON property `certificateMap`
|
36036
|
+
# @return [String]
|
36037
|
+
attr_accessor :certificate_map
|
36038
|
+
|
35585
36039
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
35586
36040
|
# Corresponds to the JSON property `creationTimestamp`
|
35587
36041
|
# @return [String]
|
@@ -35719,6 +36173,7 @@ module Google
|
|
35719
36173
|
@authentication = args[:authentication] if args.key?(:authentication)
|
35720
36174
|
@authorization = args[:authorization] if args.key?(:authorization)
|
35721
36175
|
@authorization_policy = args[:authorization_policy] if args.key?(:authorization_policy)
|
36176
|
+
@certificate_map = args[:certificate_map] if args.key?(:certificate_map)
|
35722
36177
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
35723
36178
|
@description = args[:description] if args.key?(:description)
|
35724
36179
|
@fingerprint = args[:fingerprint] if args.key?(:fingerprint)
|
@@ -37007,6 +37462,25 @@ module Google
|
|
37007
37462
|
end
|
37008
37463
|
end
|
37009
37464
|
|
37465
|
+
#
|
37466
|
+
class TargetSslProxiesSetCertificateMapRequest
|
37467
|
+
include Google::Apis::Core::Hashable
|
37468
|
+
|
37469
|
+
# URL of the Certificate Map to associate with this TargetSslProxy.
|
37470
|
+
# Corresponds to the JSON property `certificateMap`
|
37471
|
+
# @return [String]
|
37472
|
+
attr_accessor :certificate_map
|
37473
|
+
|
37474
|
+
def initialize(**args)
|
37475
|
+
update!(**args)
|
37476
|
+
end
|
37477
|
+
|
37478
|
+
# Update properties of this object
|
37479
|
+
def update!(**args)
|
37480
|
+
@certificate_map = args[:certificate_map] if args.key?(:certificate_map)
|
37481
|
+
end
|
37482
|
+
end
|
37483
|
+
|
37010
37484
|
#
|
37011
37485
|
class TargetSslProxiesSetProxyHeaderRequest
|
37012
37486
|
include Google::Apis::Core::Hashable
|
@@ -37055,6 +37529,13 @@ module Google
|
|
37055
37529
|
class TargetSslProxy
|
37056
37530
|
include Google::Apis::Core::Hashable
|
37057
37531
|
|
37532
|
+
# URL of a certificate map that identifies a certificate map associated with the
|
37533
|
+
# given target proxy. This field can only be set for global target proxies. If
|
37534
|
+
# set, sslCertificates will be ignored.
|
37535
|
+
# Corresponds to the JSON property `certificateMap`
|
37536
|
+
# @return [String]
|
37537
|
+
attr_accessor :certificate_map
|
37538
|
+
|
37058
37539
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
37059
37540
|
# Corresponds to the JSON property `creationTimestamp`
|
37060
37541
|
# @return [String]
|
@@ -37125,6 +37606,7 @@ module Google
|
|
37125
37606
|
|
37126
37607
|
# Update properties of this object
|
37127
37608
|
def update!(**args)
|
37609
|
+
@certificate_map = args[:certificate_map] if args.key?(:certificate_map)
|
37128
37610
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
37129
37611
|
@description = args[:description] if args.key?(:description)
|
37130
37612
|
@id = args[:id] if args.key?(:id)
|
@@ -40902,7 +41384,7 @@ module Google
|
|
40902
41384
|
# resourcemanager.organizationAdmin - members: - user:eve@example.com role:
|
40903
41385
|
# roles/resourcemanager.organizationViewer condition: title: expirable access
|
40904
41386
|
# description: Does not grant access after Sep 2020 expression: request.time <
|
40905
|
-
# timestamp('2020-10-01T00:00:00.000Z')
|
41387
|
+
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
|
40906
41388
|
# description of IAM and its features, see the [IAM documentation](https://cloud.
|
40907
41389
|
# google.com/iam/docs/).
|
40908
41390
|
# Corresponds to the JSON property `policy`
|