google-apis-compute_beta 0.15.0 → 0.19.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 +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`
|