google-apis-compute_alpha 0.15.0 → 0.16.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 67f3b74d9c71ddc12eb013e1d925f136b43f3a080ef0992ba134d82f7ee4460b
4
- data.tar.gz: 540ee33a6860b91793f247072dc15e10f6a82257ae155d5a107c25b9204b5580
3
+ metadata.gz: fd2b7c1f0e2b5a439039691eb9b49de7450f6352fbe959c860d8df2d00c1b01a
4
+ data.tar.gz: f6f06b5a23097d907094d1eeb62c53bbc200227f7b1b5419b546566e1d6deeb3
5
5
  SHA512:
6
- metadata.gz: 0d1f1a98483d38e27f315a3a7b8ecc36a2871e00057a5a082530cce58bfe6d3b07d4caed3b036e07e5f140fc70f2daf8b201205aecb0cd13cde5948797f99366
7
- data.tar.gz: a01bf9c485486fd8ee067a44b57ff4af724745a278f02642a14c19381db4d132e3ecebeb749ca99f342ed3b656e18185476bcf6e285a448ab0759b98420e550d
6
+ metadata.gz: 8efd6f0fea6511c59cd49e6347751cd805effaf0c0394532ee6e0d78d41500e339b3df9e45411f09d6ed8da3a0ed50c7212946979a0cc1a81eb98b722b78af3d
7
+ data.tar.gz: 4ef02a140320ce5a052571e29b3d2d9d50f63e8766dd534e7e21622d16b328cc65103499f062e279a354b15e85c2325477641730cadfd9ef3e0e144a4e6e982c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-compute_alpha
2
2
 
3
+ ### v0.16.0 (2021-09-04)
4
+
5
+ * Regenerated from discovery document revision 20210820
6
+
3
7
  ### v0.15.0 (2021-07-29)
4
8
 
5
9
  * Regenerated from discovery document revision 20210719
@@ -633,8 +633,8 @@ module Google
633
633
 
634
634
  # Name of the resource. Provided by the client when the resource is created. The
635
635
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
636
- # name must be 1-63 characters long and match the regular expression [a-z]([-a-
637
- # z0-9]*[a-z0-9])?. The first character must be a lowercase letter, and all
636
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
637
+ # z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all
638
638
  # following characters (except for the last character) must be a dash, lowercase
639
639
  # letter, or digit. The last character must be a lowercase letter or digit.
640
640
  # Corresponds to the JSON property `name`
@@ -1246,6 +1246,7 @@ module Google
1246
1246
  end
1247
1247
 
1248
1248
  # This reservation type allows to pre allocate specific instance configuration.
1249
+ # Next ID: 5
1249
1250
  class AllocationSpecificSkuReservation
1250
1251
  include Google::Apis::Core::Hashable
1251
1252
 
@@ -1377,6 +1378,17 @@ module Google
1377
1378
  # @return [Array<String>]
1378
1379
  attr_accessor :licenses
1379
1380
 
1381
+ # [Output Only] Whether to indicate the attached disk is locked. The locked disk
1382
+ # is not allowed to be detached from the instance, or to be used as the source
1383
+ # of the snapshot creation, and the image creation. The instance with at least
1384
+ # one locked attached disk is not allow to be used as source of machine image
1385
+ # creation, instant snapshot creation, and not allowed to be deleted with --keep-
1386
+ # disk parameter set to true for locked disks.
1387
+ # Corresponds to the JSON property `locked`
1388
+ # @return [Boolean]
1389
+ attr_accessor :locked
1390
+ alias_method :locked?, :locked
1391
+
1380
1392
  # The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not
1381
1393
  # specified, the default is to attach the disk in READ_WRITE mode.
1382
1394
  # Corresponds to the JSON property `mode`
@@ -1438,6 +1450,7 @@ module Google
1438
1450
  @interface = args[:interface] if args.key?(:interface)
1439
1451
  @kind = args[:kind] if args.key?(:kind)
1440
1452
  @licenses = args[:licenses] if args.key?(:licenses)
1453
+ @locked = args[:locked] if args.key?(:locked)
1441
1454
  @mode = args[:mode] if args.key?(:mode)
1442
1455
  @saved_state = args[:saved_state] if args.key?(:saved_state)
1443
1456
  @shielded_instance_initial_state = args[:shielded_instance_initial_state] if args.key?(:shielded_instance_initial_state)
@@ -1497,8 +1510,8 @@ module Google
1497
1510
  # @return [Array<Google::Apis::ComputeAlpha::GuestOsFeature>]
1498
1511
  attr_accessor :guest_os_features
1499
1512
 
1500
- # Specifies the disk interface to use for attaching this disk, which is either
1501
- # SCSI or NVME. The default is SCSI.
1513
+ # [Deprecated] Specifies the disk interface to use for attaching this disk,
1514
+ # which is either SCSI or NVME. The default is SCSI.
1502
1515
  # Corresponds to the JSON property `interface`
1503
1516
  # @return [String]
1504
1517
  attr_accessor :interface
@@ -2673,7 +2686,13 @@ module Google
2673
2686
 
2674
2687
  # Specifies how to determine whether the backend of a load balancer can handle
2675
2688
  # additional traffic or is fully loaded. For usage guidelines, see Connection
2676
- # balancing mode.
2689
+ # balancing mode. Backends must use compatible balancing modes. For more
2690
+ # information, see Supported balancing modes and target capacity settings and
2691
+ # Restrictions and guidance for instance groups. Note: Currently, if you use the
2692
+ # API to configure incompatible balancing modes, the configuration might be
2693
+ # accepted even though it has no impact and is ignored. Specifically, Backend.
2694
+ # maxUtilization is ignored when Backend.balancingMode is RATE. In the future,
2695
+ # this incompatible combination will be rejected.
2677
2696
  # Corresponds to the JSON property `balancingMode`
2678
2697
  # @return [String]
2679
2698
  attr_accessor :balancing_mode
@@ -2754,7 +2773,9 @@ module Google
2754
2773
  # @return [Float]
2755
2774
  attr_accessor :max_rate_per_instance
2756
2775
 
2757
- #
2776
+ # Optional parameter to define a target capacity for the UTILIZATIONbalancing
2777
+ # mode. The valid range is [0.0, 1.0]. For usage guidelines, see Utilization
2778
+ # balancing mode.
2758
2779
  # Corresponds to the JSON property `maxUtilization`
2759
2780
  # @return [Float]
2760
2781
  attr_accessor :max_utilization
@@ -3510,6 +3531,21 @@ module Google
3510
3531
  # @return [String]
3511
3532
  attr_accessor :self_link_with_id
3512
3533
 
3534
+ # URLs of networkservices.ServiceBinding resources. Can only be set if load
3535
+ # balancing scheme is INTERNAL_SELF_MANAGED. If set, lists of backends and
3536
+ # health checks must be both empty.
3537
+ # Corresponds to the JSON property `serviceBindings`
3538
+ # @return [Array<String>]
3539
+ attr_accessor :service_bindings
3540
+
3541
+ # URL to networkservices.ServiceLbPolicy resource. Can only be set if load
3542
+ # balancing scheme is EXTERNAL, INTERNAL_MANAGED or INTERNAL_SELF_MANAGED. If
3543
+ # used with a backend service, must reference a global policy. If used with a
3544
+ # regional backend service, must reference a regional policy.
3545
+ # Corresponds to the JSON property `serviceLbPolicy`
3546
+ # @return [String]
3547
+ attr_accessor :service_lb_policy
3548
+
3513
3549
  # Type of session affinity to use. The default is NONE. For a detailed
3514
3550
  # description of session affinity options, see: [Session affinity](https://cloud.
3515
3551
  # google.com/load-balancing/docs/backend-service#session_affinity). Not
@@ -3574,6 +3610,8 @@ module Google
3574
3610
  @security_settings = args[:security_settings] if args.key?(:security_settings)
3575
3611
  @self_link = args[:self_link] if args.key?(:self_link)
3576
3612
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
3613
+ @service_bindings = args[:service_bindings] if args.key?(:service_bindings)
3614
+ @service_lb_policy = args[:service_lb_policy] if args.key?(:service_lb_policy)
3577
3615
  @session_affinity = args[:session_affinity] if args.key?(:session_affinity)
3578
3616
  @subsetting = args[:subsetting] if args.key?(:subsetting)
3579
3617
  @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
@@ -4804,13 +4842,6 @@ module Google
4804
4842
  # @return [Hash<String,Google::Apis::ComputeAlpha::BulkInsertInstanceResourcePerInstanceProperties>]
4805
4843
  attr_accessor :per_instance_properties
4806
4844
 
4807
- # DEPRECATED: Please use instance_properties.secure_tag instead. Secure tags to
4808
- # apply to this instance. These can be later modified by the update method.
4809
- # Maximum number of secure tags allowed is 50.
4810
- # Corresponds to the JSON property `secureTags`
4811
- # @return [Array<String>]
4812
- attr_accessor :secure_tags
4813
-
4814
4845
  # Specifies the instance template from which to create instances. You may
4815
4846
  # combine sourceInstanceTemplate with instanceProperties to override specific
4816
4847
  # values from an existing instance template. Bulk API follows the semantics of
@@ -4836,7 +4867,6 @@ module Google
4836
4867
  @min_count = args[:min_count] if args.key?(:min_count)
4837
4868
  @name_pattern = args[:name_pattern] if args.key?(:name_pattern)
4838
4869
  @per_instance_properties = args[:per_instance_properties] if args.key?(:per_instance_properties)
4839
- @secure_tags = args[:secure_tags] if args.key?(:secure_tags)
4840
4870
  @source_instance_template = args[:source_instance_template] if args.key?(:source_instance_template)
4841
4871
  end
4842
4872
  end
@@ -6000,14 +6030,20 @@ module Google
6000
6030
  # @return [String]
6001
6031
  attr_accessor :description
6002
6032
 
6003
- # Encrypts the disk using a customer-supplied encryption key. After you encrypt
6004
- # a disk with a customer-supplied key, you must provide the same key if you use
6005
- # the disk later (e.g. to create a disk snapshot, to create a disk image, to
6006
- # create a machine image, or to attach the disk to a virtual machine). Customer-
6007
- # supplied encryption keys do not protect access to metadata of the disk. If you
6008
- # do not provide an encryption key when creating the disk, then the disk will be
6009
- # encrypted using an automatically generated key and you do not need to provide
6010
- # a key to use the disk later.
6033
+ # Encrypts the disk using a customer-supplied encryption key or a customer-
6034
+ # managed encryption key. Encryption keys do not protect access to metadata of
6035
+ # the disk. After you encrypt a disk with a customer-supplied key, you must
6036
+ # provide the same key if you use the disk later. For example, to create a disk
6037
+ # snapshot, to create a disk image, to create a machine image, or to attach the
6038
+ # disk to a virtual machine. After you encrypt a disk with a customer-managed
6039
+ # key, the diskEncryptionKey.kmsKeyName is set to a key *version* name once the
6040
+ # disk is created. The disk is encrypted with this version of the key. In the
6041
+ # response, diskEncryptionKey.kmsKeyName appears in the following format: "
6042
+ # diskEncryptionKey.kmsKeyName": "projects/kms_project_id/locations/region/
6043
+ # keyRings/ key_region/cryptoKeys/key /cryptoKeysVersions/version If you do not
6044
+ # provide an encryption key when creating the disk, then the disk is encrypted
6045
+ # using an automatically generated key and you don't need to provide a key to
6046
+ # use the disk later.
6011
6047
  # Corresponds to the JSON property `diskEncryptionKey`
6012
6048
  # @return [Google::Apis::ComputeAlpha::CustomerEncryptionKey]
6013
6049
  attr_accessor :disk_encryption_key
@@ -6032,8 +6068,8 @@ module Google
6032
6068
  # @return [Fixnum]
6033
6069
  attr_accessor :id
6034
6070
 
6035
- # Specifies the disk interface to use for attaching this disk, which is either
6036
- # SCSI or NVME. The default is SCSI.
6071
+ # [Deprecated] Specifies the disk interface to use for attaching this disk,
6072
+ # which is either SCSI or NVME. The default is SCSI.
6037
6073
  # Corresponds to the JSON property `interface`
6038
6074
  # @return [String]
6039
6075
  attr_accessor :interface
@@ -6087,6 +6123,22 @@ module Google
6087
6123
  # @return [String]
6088
6124
  attr_accessor :location_hint
6089
6125
 
6126
+ # [Output Only] The field indicates if the disk is created from a locked source
6127
+ # image. Attachment of a disk created from a locked source image will cause the
6128
+ # following operations to become irreversibly prohibited: - R/W or R/O disk
6129
+ # attachment to any other instance - Disk detachment. And the disk can only be
6130
+ # deleted when the instance is deleted - Creation of images or snapshots - Disk
6131
+ # cloning Furthermore, the instance with at least one disk with locked flag set
6132
+ # to true will be prohibited from performing the operations below: - Further
6133
+ # attachment of secondary disks. - Detachment of any disks - Create machine
6134
+ # images - Create instance template - Delete the instance with --keep-disk
6135
+ # parameter set to true for locked disks - Attach a locked disk with --auto-
6136
+ # delete parameter set to false
6137
+ # Corresponds to the JSON property `locked`
6138
+ # @return [Boolean]
6139
+ attr_accessor :locked
6140
+ alias_method :locked?, :locked
6141
+
6090
6142
  # Indicates whether or not the disk can be read/write attached to more than one
6091
6143
  # instance.
6092
6144
  # Corresponds to the JSON property `multiWriter`
@@ -6350,6 +6402,7 @@ module Google
6350
6402
  @license_codes = args[:license_codes] if args.key?(:license_codes)
6351
6403
  @licenses = args[:licenses] if args.key?(:licenses)
6352
6404
  @location_hint = args[:location_hint] if args.key?(:location_hint)
6405
+ @locked = args[:locked] if args.key?(:locked)
6353
6406
  @multi_writer = args[:multi_writer] if args.key?(:multi_writer)
6354
6407
  @name = args[:name] if args.key?(:name)
6355
6408
  @options = args[:options] if args.key?(:options)
@@ -7915,7 +7968,7 @@ module Google
7915
7968
 
7916
7969
  # If destination ranges are specified, the firewall rule applies only to traffic
7917
7970
  # that has destination IP address in these ranges. These ranges must be
7918
- # expressed in CIDR format. Only IPv4 is supported.
7971
+ # expressed in CIDR format. Both IPv4 and IPv6 are supported.
7919
7972
  # Corresponds to the JSON property `destinationRanges`
7920
7973
  # @return [Array<String>]
7921
7974
  attr_accessor :destination_ranges
@@ -8008,7 +8061,7 @@ module Google
8008
8061
  # fields are set, the rule applies to traffic that has a source IP address
8009
8062
  # within sourceRanges OR a source IP from a resource with a matching tag listed
8010
8063
  # in the sourceTags field. The connection does not need to match both fields for
8011
- # the rule to apply. Only IPv4 is supported.
8064
+ # the rule to apply. Both IPv4 and IPv6 are supported.
8012
8065
  # Corresponds to the JSON property `sourceRanges`
8013
8066
  # @return [Array<String>]
8014
8067
  attr_accessor :source_ranges
@@ -10289,7 +10342,7 @@ module Google
10289
10342
  # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
10290
10343
  # roles/resourcemanager.organizationViewer condition: title: expirable access
10291
10344
  # description: Does not grant access after Sep 2020 expression: request.time <
10292
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
10345
+ # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
10293
10346
  # description of IAM and its features, see the [IAM documentation](https://cloud.
10294
10347
  # google.com/iam/docs/).
10295
10348
  # Corresponds to the JSON property `policy`
@@ -10386,7 +10439,7 @@ module Google
10386
10439
  # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
10387
10440
  # roles/resourcemanager.organizationViewer condition: title: expirable access
10388
10441
  # description: Does not grant access after Sep 2020 expression: request.time <
10389
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
10442
+ # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
10390
10443
  # description of IAM and its features, see the [IAM documentation](https://cloud.
10391
10444
  # google.com/iam/docs/).
10392
10445
  # Corresponds to the JSON property `policy`
@@ -13285,6 +13338,24 @@ module Google
13285
13338
  # @return [Array<String>]
13286
13339
  attr_accessor :licenses
13287
13340
 
13341
+ # A flag for marketplace VM disk created from the image, which is designed for
13342
+ # marketplace VM disk to prevent the proprietary data on the disk from being
13343
+ # accessed unwantedly. The flag will be inherited by the disk created from the
13344
+ # image. The disk with locked flag set to true will be prohibited from
13345
+ # performing the operations below: - R/W or R/O disk attach - Disk detach, if
13346
+ # disk is created via create-on-create - Create images - Create snapshots -
13347
+ # Create disk clone (create disk from the current disk) The image with the
13348
+ # locked field set to true will be prohibited from performing the operations
13349
+ # below: - Create images from the current image - Update the locked field for
13350
+ # the current image The instance with at least one disk with locked flag set to
13351
+ # true will be prohibited from performing the operations below: - Secondary disk
13352
+ # attach - Create instant snapshot - Create machine images - Create instance
13353
+ # template - Delete the instance with --keep-disk parameter set to true
13354
+ # Corresponds to the JSON property `locked`
13355
+ # @return [Boolean]
13356
+ attr_accessor :locked
13357
+ alias_method :locked?, :locked
13358
+
13288
13359
  # Name of the resource; provided by the client when the resource is created. The
13289
13360
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
13290
13361
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -13350,10 +13421,12 @@ module Google
13350
13421
  # @return [String]
13351
13422
  attr_accessor :source_disk_id
13352
13423
 
13353
- # URL of the source image used to create this image. In order to create an image,
13354
- # you must provide the full or partial URL of one of the following: - The
13355
- # rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The
13356
- # sourceSnapshot URL
13424
+ # URL of the source image used to create this image. The following are valid
13425
+ # formats for the URL: - https://www.googleapis.com/compute/v1/projects/
13426
+ # project_id/global/ images/image_name - projects/project_id/global/images/
13427
+ # image_name In order to create an image, you must provide the full or partial
13428
+ # URL of one of the following: - The rawDisk.source URL - The sourceDisk URL -
13429
+ # The sourceImage URL - The sourceSnapshot URL
13357
13430
  # Corresponds to the JSON property `sourceImage`
13358
13431
  # @return [String]
13359
13432
  attr_accessor :source_image
@@ -13371,10 +13444,12 @@ module Google
13371
13444
  # @return [String]
13372
13445
  attr_accessor :source_image_id
13373
13446
 
13374
- # URL of the source snapshot used to create this image. In order to create an
13375
- # image, you must provide the full or partial URL of one of the following: - The
13376
- # rawDisk.source URL - The sourceDisk URL - The sourceImage URL - The
13377
- # sourceSnapshot URL
13447
+ # URL of the source snapshot used to create this image. The following are valid
13448
+ # formats for the URL: - https://www.googleapis.com/compute/v1/projects/
13449
+ # project_id/global/ snapshots/snapshot_name - projects/project_id/global/
13450
+ # snapshots/snapshot_name In order to create an image, you must provide the full
13451
+ # or partial URL of one of the following: - The rawDisk.source URL - The
13452
+ # sourceDisk URL - The sourceImage URL - The sourceSnapshot URL
13378
13453
  # Corresponds to the JSON property `sourceSnapshot`
13379
13454
  # @return [String]
13380
13455
  attr_accessor :source_snapshot
@@ -13441,6 +13516,7 @@ module Google
13441
13516
  @labels = args[:labels] if args.key?(:labels)
13442
13517
  @license_codes = args[:license_codes] if args.key?(:license_codes)
13443
13518
  @licenses = args[:licenses] if args.key?(:licenses)
13519
+ @locked = args[:locked] if args.key?(:locked)
13444
13520
  @name = args[:name] if args.key?(:name)
13445
13521
  @raw_disk = args[:raw_disk] if args.key?(:raw_disk)
13446
13522
  @rollout_override = args[:rollout_override] if args.key?(:rollout_override)
@@ -13480,10 +13556,12 @@ module Google
13480
13556
  # @return [String]
13481
13557
  attr_accessor :sha1_checksum
13482
13558
 
13483
- # The full Google Cloud Storage URL where the disk image is stored. In order to
13484
- # create an image, you must provide the full or partial URL of one of the
13485
- # following: - The rawDisk.source URL - The sourceDisk URL - The sourceImage URL
13486
- # - The sourceSnapshot URL
13559
+ # The full Google Cloud Storage URL where the raw disk image archive is stored.
13560
+ # The following are valid formats for the URL: - https://storage.googleapis.com/
13561
+ # bucket_name/image_archive_name - https://storage.googleapis.com/bucket_name/
13562
+ # folder_name/ image_archive_name In order to create an image, you must provide
13563
+ # the full or partial URL of one of the following: - The rawDisk.source URL -
13564
+ # The sourceDisk URL - The sourceImage URL - The sourceSnapshot URL
13487
13565
  # Corresponds to the JSON property `source`
13488
13566
  # @return [String]
13489
13567
  attr_accessor :source
@@ -18284,6 +18362,25 @@ module Google
18284
18362
  end
18285
18363
  end
18286
18364
 
18365
+ #
18366
+ class InstantSnapshotsExportRequest
18367
+ include Google::Apis::Core::Hashable
18368
+
18369
+ # Parameters to export the changed blocks.
18370
+ # Corresponds to the JSON property `exportParams`
18371
+ # @return [Google::Apis::ComputeAlpha::InstantSnapshotExportParams]
18372
+ attr_accessor :export_params
18373
+
18374
+ def initialize(**args)
18375
+ update!(**args)
18376
+ end
18377
+
18378
+ # Update properties of this object
18379
+ def update!(**args)
18380
+ @export_params = args[:export_params] if args.key?(:export_params)
18381
+ end
18382
+ end
18383
+
18287
18384
  # HttpRouteRuleMatch criteria for field values that must stay within the
18288
18385
  # specified integer range.
18289
18386
  class Int64RangeMatch
@@ -19366,11 +19463,6 @@ module Google
19366
19463
  # @return [String]
19367
19464
  attr_accessor :mac_address
19368
19465
 
19369
- # Describes the status of MACsec encryption on the link.
19370
- # Corresponds to the JSON property `macsec`
19371
- # @return [Google::Apis::ComputeAlpha::InterconnectDiagnosticsMacsecStatus]
19372
- attr_accessor :macsec
19373
-
19374
19466
  def initialize(**args)
19375
19467
  update!(**args)
19376
19468
  end
@@ -19380,7 +19472,6 @@ module Google
19380
19472
  @arp_caches = args[:arp_caches] if args.key?(:arp_caches)
19381
19473
  @links = args[:links] if args.key?(:links)
19382
19474
  @mac_address = args[:mac_address] if args.key?(:mac_address)
19383
- @macsec = args[:macsec] if args.key?(:macsec)
19384
19475
  end
19385
19476
  end
19386
19477
 
@@ -19502,6 +19593,11 @@ module Google
19502
19593
  # @return [Google::Apis::ComputeAlpha::InterconnectDiagnosticsLinkLacpStatus]
19503
19594
  attr_accessor :lacp_status
19504
19595
 
19596
+ # Describes the status of MACsec encryption on the link.
19597
+ # Corresponds to the JSON property `macsec`
19598
+ # @return [Google::Apis::ComputeAlpha::InterconnectDiagnosticsMacsecStatus]
19599
+ attr_accessor :macsec
19600
+
19505
19601
  # An InterconnectDiagnostics.LinkOpticalPower object, describing the current
19506
19602
  # value and status of the received light level.
19507
19603
  # Corresponds to the JSON property `receivingOpticalPower`
@@ -19524,6 +19620,7 @@ module Google
19524
19620
  @circuit_id = args[:circuit_id] if args.key?(:circuit_id)
19525
19621
  @google_demarc = args[:google_demarc] if args.key?(:google_demarc)
19526
19622
  @lacp_status = args[:lacp_status] if args.key?(:lacp_status)
19623
+ @macsec = args[:macsec] if args.key?(:macsec)
19527
19624
  @receiving_optical_power = args[:receiving_optical_power] if args.key?(:receiving_optical_power)
19528
19625
  @transmitting_optical_power = args[:transmitting_optical_power] if args.key?(:transmitting_optical_power)
19529
19626
  end
@@ -19539,18 +19636,11 @@ module Google
19539
19636
  # @return [String]
19540
19637
  attr_accessor :ckn
19541
19638
 
19542
- # The current state of MACsec configuration on this Interconnect, which can take
19543
- # one of the following values: - INITIALIZED: MACsec has been configured on the
19544
- # bundle interface. The Google edge router is waiting to establish a MACsec
19545
- # session with the customer router on the other side of this Interconnect. In
19546
- # addition, when key rollover fails between the two routers, the bundle
19547
- # interface will return to the initialized state. - SECURED: MACsec session has
19548
- # been successfully established between the Google edge router and the customer
19549
- # router. - FAILED: MACsec configuration on the bundle interface encountered an
19550
- # error. - DISABLED: MACsec is explicitly disabled on this Interconnect.
19551
- # Corresponds to the JSON property `state`
19552
- # @return [String]
19553
- attr_accessor :state
19639
+ # Indicates whether or not MACsec is operational on this link.
19640
+ # Corresponds to the JSON property `operational`
19641
+ # @return [Boolean]
19642
+ attr_accessor :operational
19643
+ alias_method :operational?, :operational
19554
19644
 
19555
19645
  def initialize(**args)
19556
19646
  update!(**args)
@@ -19559,7 +19649,7 @@ module Google
19559
19649
  # Update properties of this object
19560
19650
  def update!(**args)
19561
19651
  @ckn = args[:ckn] if args.key?(:ckn)
19562
- @state = args[:state] if args.key?(:state)
19652
+ @operational = args[:operational] if args.key?(:operational)
19563
19653
  end
19564
19654
  end
19565
19655
 
@@ -22427,7 +22517,7 @@ module Google
22427
22517
  attr_accessor :kind
22428
22518
 
22429
22519
  # Maximum Transmission Unit in bytes. The minimum value for this field is 1460
22430
- # and the maximum value is 1500 bytes.
22520
+ # and the maximum value is 1500 bytes. If unspecified, defaults to 1460.
22431
22521
  # Corresponds to the JSON property `mtu`
22432
22522
  # @return [Fixnum]
22433
22523
  attr_accessor :mtu
@@ -24150,9 +24240,8 @@ module Google
24150
24240
  alias_method :export_custom_routes?, :export_custom_routes
24151
24241
 
24152
24242
  # Whether subnet routes with public IP range are exported. The default value is
24153
- # true, all subnet routes are exported. The IPv4 special-use ranges (https://en.
24154
- # wikipedia.org/wiki/IPv4#Special_addresses) are always exported to peers and
24155
- # are not controlled by this field.
24243
+ # true, all subnet routes are exported. IPv4 special-use ranges are always
24244
+ # exported to peers and are not controlled by this field.
24156
24245
  # Corresponds to the JSON property `exportSubnetRoutesWithPublicIp`
24157
24246
  # @return [Boolean]
24158
24247
  attr_accessor :export_subnet_routes_with_public_ip
@@ -24165,9 +24254,8 @@ module Google
24165
24254
  alias_method :import_custom_routes?, :import_custom_routes
24166
24255
 
24167
24256
  # Whether subnet routes with public IP range are imported. The default value is
24168
- # false. The IPv4 special-use ranges (https://en.wikipedia.org/wiki/IPv4#
24169
- # Special_addresses) are always imported from peers and are not controlled by
24170
- # this field.
24257
+ # false. IPv4 special-use ranges are always imported from peers and are not
24258
+ # controlled by this field.
24171
24259
  # Corresponds to the JSON property `importSubnetRoutesWithPublicIp`
24172
24260
  # @return [Boolean]
24173
24261
  attr_accessor :import_subnet_routes_with_public_ip
@@ -24481,7 +24569,7 @@ module Google
24481
24569
  end
24482
24570
  end
24483
24571
 
24484
- # Represent a sole-tenant Node Group resource. A sole-tenant node is a physical
24572
+ # Represents a sole-tenant Node Group resource. A sole-tenant node is a physical
24485
24573
  # server that is dedicated to hosting VM instances only for your specific
24486
24574
  # project. Use sole-tenant nodes to keep your instances physically separated
24487
24575
  # from instances in other projects, or to group your instances together on the
@@ -28478,7 +28566,7 @@ module Google
28478
28566
  # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
28479
28567
  # roles/resourcemanager.organizationViewer condition: title: expirable access
28480
28568
  # description: Does not grant access after Sep 2020 expression: request.time <
28481
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
28569
+ # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
28482
28570
  # description of IAM and its features, see the [IAM documentation](https://cloud.
28483
28571
  # google.com/iam/docs/).
28484
28572
  class Policy
@@ -28971,6 +29059,16 @@ module Google
28971
29059
  # @return [String]
28972
29060
  attr_accessor :organization
28973
29061
 
29062
+ # Opt-in for partial page behavior which provides a partial filled page (number
29063
+ # of items on which may be smaller than maxResults) within the API deadline. If
29064
+ # opt-in, then the user should rely on if nextPageToken is empty in the response
29065
+ # to determine if there is a next page. Empty page is also valid and possible.
29066
+ # The default value is false.
29067
+ # Corresponds to the JSON property `returnPartialPage`
29068
+ # @return [Boolean]
29069
+ attr_accessor :return_partial_page
29070
+ alias_method :return_partial_page?, :return_partial_page
29071
+
28974
29072
  def initialize(**args)
28975
29073
  update!(**args)
28976
29074
  end
@@ -28978,6 +29076,7 @@ module Google
28978
29076
  # Update properties of this object
28979
29077
  def update!(**args)
28980
29078
  @organization = args[:organization] if args.key?(:organization)
29079
+ @return_partial_page = args[:return_partial_page] if args.key?(:return_partial_page)
28981
29080
  end
28982
29081
  end
28983
29082
 
@@ -31579,7 +31678,7 @@ module Google
31579
31678
  # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
31580
31679
  # roles/resourcemanager.organizationViewer condition: title: expirable access
31581
31680
  # description: Does not grant access after Sep 2020 expression: request.time <
31582
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
31681
+ # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
31583
31682
  # description of IAM and its features, see the [IAM documentation](https://cloud.
31584
31683
  # google.com/iam/docs/).
31585
31684
  # Corresponds to the JSON property `policy`
@@ -31741,6 +31840,7 @@ module Google
31741
31840
  attr_accessor :share_settings
31742
31841
 
31743
31842
  # This reservation type allows to pre allocate specific instance configuration.
31843
+ # Next ID: 5
31744
31844
  # Corresponds to the JSON property `specificReservation`
31745
31845
  # @return [Google::Apis::ComputeAlpha::AllocationSpecificSkuReservation]
31746
31846
  attr_accessor :specific_reservation
@@ -34117,7 +34217,7 @@ module Google
34117
34217
  # from the peer router. The actual value is negotiated between the two routers
34118
34218
  # and is equal to the greater of this value and the transmit interval of the
34119
34219
  # other router. Not currently available publicly. If set, this value must be
34120
- # between 100 and 30000. The default is 300.
34220
+ # between 1000 and 30000. The default is 1000.
34121
34221
  # Corresponds to the JSON property `minReceiveInterval`
34122
34222
  # @return [Fixnum]
34123
34223
  attr_accessor :min_receive_interval
@@ -34126,7 +34226,7 @@ module Google
34126
34226
  # to the peer router. The actual value is negotiated between the two routers and
34127
34227
  # is equal to the greater of this value and the corresponding receive interval
34128
34228
  # of the other router. Not currently available publicly. If set, this value must
34129
- # be between 100 and 30000. The default is 300.
34229
+ # be between 1000 and 30000. The default is 1000.
34130
34230
  # Corresponds to the JSON property `minTransmitInterval`
34131
34231
  # @return [Fixnum]
34132
34232
  attr_accessor :min_transmit_interval
@@ -34142,7 +34242,7 @@ module Google
34142
34242
 
34143
34243
  # The number of consecutive BFD packets that must be missed before BFD declares
34144
34244
  # that a peer is unavailable. Not currently available publicly. If set, the
34145
- # value must be a value between 2 and 16. The default is 3.
34245
+ # value must be a value between 5 and 16. The default is 5.
34146
34246
  # Corresponds to the JSON property `multiplier`
34147
34247
  # @return [Fixnum]
34148
34248
  attr_accessor :multiplier
@@ -34605,9 +34705,11 @@ module Google
34605
34705
 
34606
34706
  # CEL expression that specifies the match condition that egress traffic from a
34607
34707
  # VM is evaluated against. If it evaluates to true, the corresponding `action`
34608
- # is enforced. The following examples are valid match expressions: "inIpRange(
34609
- # destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.0/16')" "
34610
- # destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'"
34708
+ # is enforced. The following examples are valid match expressions for public NAT:
34709
+ # "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
34710
+ # 0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The
34711
+ # following example is a valid match expression for private NAT: "nexthop.hub ==
34712
+ # '/projects/my-project/global/hub/hub-1'"
34611
34713
  # Corresponds to the JSON property `match`
34612
34714
  # @return [String]
34613
34715
  attr_accessor :match
@@ -34637,14 +34739,15 @@ module Google
34637
34739
  include Google::Apis::Core::Hashable
34638
34740
 
34639
34741
  # A list of URLs of the IP resources used for this NAT rule. These IP addresses
34640
- # must be valid static external IP addresses assigned to the project.
34742
+ # must be valid static external IP addresses assigned to the project. This field
34743
+ # is used for public NAT.
34641
34744
  # Corresponds to the JSON property `sourceNatActiveIps`
34642
34745
  # @return [Array<String>]
34643
34746
  attr_accessor :source_nat_active_ips
34644
34747
 
34645
34748
  # A list of URLs of the IP resources to be drained. These IPs must be valid
34646
34749
  # static external IPs that have been assigned to the NAT. These IPs should be
34647
- # used for updating/patching a NAT rule only.
34750
+ # used for updating/patching a NAT rule only. This field is used for public NAT.
34648
34751
  # Corresponds to the JSON property `sourceNatDrainIps`
34649
34752
  # @return [Array<String>]
34650
34753
  attr_accessor :source_nat_drain_ips
@@ -35418,6 +35521,11 @@ module Google
35418
35521
  # @return [Fixnum]
35419
35522
  attr_accessor :host_error_timeout_seconds
35420
35523
 
35524
+ # Specifies the termination action for the instance.
35525
+ # Corresponds to the JSON property `instanceTerminationAction`
35526
+ # @return [String]
35527
+ attr_accessor :instance_termination_action
35528
+
35421
35529
  # Defines whether the instance is tolerant of higher cpu latency. This can only
35422
35530
  # be set during instance creation, or when the instance is not currently running.
35423
35531
  # It must not be set if the preemptible option is also set.
@@ -35489,6 +35597,7 @@ module Google
35489
35597
  @current_cpus = args[:current_cpus] if args.key?(:current_cpus)
35490
35598
  @current_memory_mb = args[:current_memory_mb] if args.key?(:current_memory_mb)
35491
35599
  @host_error_timeout_seconds = args[:host_error_timeout_seconds] if args.key?(:host_error_timeout_seconds)
35600
+ @instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action)
35492
35601
  @latency_tolerant = args[:latency_tolerant] if args.key?(:latency_tolerant)
35493
35602
  @location_hint = args[:location_hint] if args.key?(:location_hint)
35494
35603
  @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
@@ -35986,8 +36095,8 @@ module Google
35986
36095
  # HTTP requests targeting backend services. They filter requests before they hit
35987
36096
  # the origin servers. CLOUD_ARMOR_EDGE - Cloud Armor edge security policies can
35988
36097
  # be configured to filter incoming HTTP requests targeting backend services (
35989
- # including Cloud CDN-enabled) as well as backend buckets (GCS). They filter
35990
- # requests before the request is served from Googles cache.
36098
+ # including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They
36099
+ # filter requests before the request is served from Google's cache.
35991
36100
  # Corresponds to the JSON property `type`
35992
36101
  # @return [String]
35993
36102
  attr_accessor :type
@@ -36672,23 +36781,23 @@ module Google
36672
36781
  attr_accessor :conform_action
36673
36782
 
36674
36783
  # Determines the key to enforce the rate_limit_threshold on. Possible values are:
36675
- # ALL -- A single rate limit threshold is applied to all the requests
36784
+ # "ALL" -- A single rate limit threshold is applied to all the requests
36676
36785
  # matching this rule. This is the default value if this field 'enforce_on_key'
36677
- # is not configured. ALL_IPS -- This definition, equivalent to "ALL", has been
36678
- # depprecated. IP -- The source IP address of the request is the key. Each IP
36679
- # has this limit enforced separately. HTTP_HEADER -- The value of the HTTP
36680
- # Header whose name is configured under enforce_on_key_name”. The key value is
36681
- # truncated to the first 128 bytes of the Header value. If no such header is
36682
- # present in the request, the key type defaults to ALL”. XFF_IP -- The first
36786
+ # is not configured. "ALL_IPS" -- This definition, equivalent to "ALL", has been
36787
+ # depprecated. "IP" -- The source IP address of the request is the key. Each IP
36788
+ # has this limit enforced separately. "HTTP_HEADER" -- The value of the HTTP
36789
+ # header whose name is configured under "enforce_on_key_name". The key value is
36790
+ # truncated to the first 128 bytes of the header value. If no such header is
36791
+ # present in the request, the key type defaults to "ALL". "XFF_IP" -- The first
36683
36792
  # IP address (i.e. the originating client IP address) specified in the list of
36684
- # IPs under X-Forwarded-For HTTP Header. If no such header is present or the
36685
- # value is not a valid IP, the key type defaults to ALL”.
36793
+ # IPs under X-Forwarded-For HTTP header. If no such header is present or the
36794
+ # value is not a valid IP, the key type defaults to "ALL".
36686
36795
  # Corresponds to the JSON property `enforceOnKey`
36687
36796
  # @return [String]
36688
36797
  attr_accessor :enforce_on_key
36689
36798
 
36690
36799
  # Rate limit key name applicable only for the following key types: HTTP_HEADER --
36691
- # Name of the HTTP Header whose value is taken as the key value.
36800
+ # Name of the HTTP header whose value is taken as the key value.
36692
36801
  # Corresponds to the JSON property `enforceOnKeyName`
36693
36802
  # @return [String]
36694
36803
  attr_accessor :enforce_on_key_name
@@ -36973,7 +37082,7 @@ module Google
36973
37082
  # Represents a ServiceAttachment resource. A service attachment represents a
36974
37083
  # service that a producer has exposed. It encapsulates the load balancer which
36975
37084
  # fronts the service runs and a list of NAT IP ranges that the producers uses to
36976
- # represent the consumers connecting to the service. next tag = 19
37085
+ # represent the consumers connecting to the service. next tag = 20
36977
37086
  class ServiceAttachment
36978
37087
  include Google::Apis::Core::Hashable
36979
37088
 
@@ -37506,6 +37615,13 @@ module Google
37506
37615
  class ShareSettings
37507
37616
  include Google::Apis::Core::Hashable
37508
37617
 
37618
+ # A map of folder id and folder config to specify consumer projects for this
37619
+ # shared-reservation. This is only valid when share_type's value is
37620
+ # DIRECT_PROJECTS_UNDER_SPECIFIC_FOLDERS.
37621
+ # Corresponds to the JSON property `folderMap`
37622
+ # @return [Hash<String,Google::Apis::ComputeAlpha::ShareSettingsFolderConfig>]
37623
+ attr_accessor :folder_map
37624
+
37509
37625
  # A List of Project names to specify consumer projects for this shared-
37510
37626
  # reservation. This is only valid when share_type's value is SPECIFIC_PROJECTS.
37511
37627
  # Corresponds to the JSON property `projects`
@@ -37523,11 +37639,32 @@ module Google
37523
37639
 
37524
37640
  # Update properties of this object
37525
37641
  def update!(**args)
37642
+ @folder_map = args[:folder_map] if args.key?(:folder_map)
37526
37643
  @projects = args[:projects] if args.key?(:projects)
37527
37644
  @share_type = args[:share_type] if args.key?(:share_type)
37528
37645
  end
37529
37646
  end
37530
37647
 
37648
+ # Config for each folder in the share settings.
37649
+ class ShareSettingsFolderConfig
37650
+ include Google::Apis::Core::Hashable
37651
+
37652
+ # The folder ID, should be same as the key of this folder config in the parent
37653
+ # map.
37654
+ # Corresponds to the JSON property `folderId`
37655
+ # @return [String]
37656
+ attr_accessor :folder_id
37657
+
37658
+ def initialize(**args)
37659
+ update!(**args)
37660
+ end
37661
+
37662
+ # Update properties of this object
37663
+ def update!(**args)
37664
+ @folder_id = args[:folder_id] if args.key?(:folder_id)
37665
+ end
37666
+ end
37667
+
37531
37668
  # A set of Shielded Instance options.
37532
37669
  class ShieldedInstanceConfig
37533
37670
  include Google::Apis::Core::Hashable
@@ -39317,16 +39454,19 @@ module Google
39317
39454
  # @return [String]
39318
39455
  attr_accessor :aggregation_interval
39319
39456
 
39320
- # Whether this subnetwork can conflict with static routes. Setting this to true
39321
- # allows this subnetwork's primary and secondary ranges to conflict with routes
39322
- # that have already been configured on the corresponding network. Static routes
39323
- # will take precedence over the subnetwork route if the route prefix length is
39324
- # at least as large as the subnetwork prefix length. Also, packets destined to
39325
- # IPs within subnetwork may contain private/sensitive data and are prevented
39326
- # from leaving the virtual network. Setting this field to true will disable this
39327
- # feature. The default value is false and applies to all existing subnetworks
39328
- # and automatically created subnetworks. This field cannot be set to true at
39329
- # resource creation time.
39457
+ # Whether this subnetwork's ranges can conflict with existing static routes.
39458
+ # Setting this to true allows this subnetwork's primary and secondary ranges to
39459
+ # overlap with (and contain) static routes that have already been configured on
39460
+ # the corresponding network. For example if a static route has range 10.1.0.0/16,
39461
+ # a subnet range 10.0.0.0/8 could only be created if allow_conflicting_routes=
39462
+ # true. Overlapping is only allowed on subnetwork operations; routes whose
39463
+ # ranges conflict with this subnetwork's ranges won't be allowed unless route.
39464
+ # allow_conflicting_subnetworks is set to true. Typically packets destined to
39465
+ # IPs within the subnetwork (which may contain private/sensitive data) are
39466
+ # prevented from leaving the virtual network. Setting this field to true will
39467
+ # disable this feature. The default value is false and applies to all existing
39468
+ # subnetworks and automatically created subnetworks. This field cannot be set to
39469
+ # true at resource creation time.
39330
39470
  # Corresponds to the JSON property `allowSubnetCidrRoutesOverlap`
39331
39471
  # @return [Boolean]
39332
39472
  attr_accessor :allow_subnet_cidr_routes_overlap
@@ -45146,6 +45286,12 @@ module Google
45146
45286
  # @return [String]
45147
45287
  attr_accessor :self_link
45148
45288
 
45289
+ # The stack type for this VPN gateway to identify the IP protocols that are
45290
+ # enabled. If not specified, IPV4_ONLY will be used.
45291
+ # Corresponds to the JSON property `stackType`
45292
+ # @return [String]
45293
+ attr_accessor :stack_type
45294
+
45149
45295
  # The list of VPN interfaces associated with this VPN gateway.
45150
45296
  # Corresponds to the JSON property `vpnInterfaces`
45151
45297
  # @return [Array<Google::Apis::ComputeAlpha::VpnGatewayVpnGatewayInterface>]
@@ -45167,6 +45313,7 @@ module Google
45167
45313
  @network = args[:network] if args.key?(:network)
45168
45314
  @region = args[:region] if args.key?(:region)
45169
45315
  @self_link = args[:self_link] if args.key?(:self_link)
45316
+ @stack_type = args[:stack_type] if args.key?(:stack_type)
45170
45317
  @vpn_interfaces = args[:vpn_interfaces] if args.key?(:vpn_interfaces)
45171
45318
  end
45172
45319
  end
@@ -46558,25 +46705,6 @@ module Google
46558
46705
  end
46559
46706
  end
46560
46707
 
46561
- #
46562
- class ZoneInstantSnapshotsExportRequest
46563
- include Google::Apis::Core::Hashable
46564
-
46565
- # Parameters to export the changed blocks.
46566
- # Corresponds to the JSON property `exportParams`
46567
- # @return [Google::Apis::ComputeAlpha::InstantSnapshotExportParams]
46568
- attr_accessor :export_params
46569
-
46570
- def initialize(**args)
46571
- update!(**args)
46572
- end
46573
-
46574
- # Update properties of this object
46575
- def update!(**args)
46576
- @export_params = args[:export_params] if args.key?(:export_params)
46577
- end
46578
- end
46579
-
46580
46708
  # Contains a list of zone resources.
46581
46709
  class ZoneList
46582
46710
  include Google::Apis::Core::Hashable
@@ -46765,7 +46893,7 @@ module Google
46765
46893
  # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
46766
46894
  # roles/resourcemanager.organizationViewer condition: title: expirable access
46767
46895
  # description: Does not grant access after Sep 2020 expression: request.time <
46768
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
46896
+ # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
46769
46897
  # description of IAM and its features, see the [IAM documentation](https://cloud.
46770
46898
  # google.com/iam/docs/).
46771
46899
  # Corresponds to the JSON property `policy`