google-apis-compute_beta 0.67.0 → 0.68.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.
@@ -6460,6 +6460,25 @@ module Google
6460
6460
  # @return [String]
6461
6461
  attr_accessor :source_image_id
6462
6462
 
6463
+ # The source instant snapshot used to create this disk. You can provide this as
6464
+ # a partial or full URL to the resource. For example, the following are valid
6465
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
6466
+ # instantSnapshots/instantSnapshot - projects/project/zones/zone/
6467
+ # instantSnapshots/instantSnapshot - zones/zone/instantSnapshots/instantSnapshot
6468
+ # Corresponds to the JSON property `sourceInstantSnapshot`
6469
+ # @return [String]
6470
+ attr_accessor :source_instant_snapshot
6471
+
6472
+ # [Output Only] The unique ID of the instant snapshot used to create this disk.
6473
+ # This value identifies the exact instant snapshot that was used to create this
6474
+ # persistent disk. For example, if you created the persistent disk from an
6475
+ # instant snapshot that was later deleted and recreated under the same name, the
6476
+ # source instant snapshot ID would identify the exact version of the instant
6477
+ # snapshot that was used.
6478
+ # Corresponds to the JSON property `sourceInstantSnapshotId`
6479
+ # @return [String]
6480
+ attr_accessor :source_instant_snapshot_id
6481
+
6463
6482
  # The source snapshot used to create this disk. You can provide this as a
6464
6483
  # partial or full URL to the resource. For example, the following are valid
6465
6484
  # values: - https://www.googleapis.com/compute/v1/projects/project /global/
@@ -6581,6 +6600,8 @@ module Google
6581
6600
  @source_image = args[:source_image] if args.key?(:source_image)
6582
6601
  @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key)
6583
6602
  @source_image_id = args[:source_image_id] if args.key?(:source_image_id)
6603
+ @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
6604
+ @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id)
6584
6605
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
6585
6606
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
6586
6607
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
@@ -14982,12 +15003,13 @@ module Google
14982
15003
  # @return [String]
14983
15004
  attr_accessor :health_check
14984
15005
 
14985
- # The number of seconds that the managed instance group waits before it applies
14986
- # autohealing policies to new instances or recently recreated instances. This
14987
- # initial delay allows instances to initialize and run their startup scripts
14988
- # before the instance group determines that they are UNHEALTHY. This prevents
14989
- # the managed instance group from recreating its instances prematurely. This
14990
- # value must be from range [0, 3600].
15006
+ # The initial delay is the number of seconds that a new VM takes to initialize
15007
+ # and run its startup script. During a VM's initial delay period, the MIG
15008
+ # ignores unsuccessful health checks because the VM might be in the startup
15009
+ # process. This prevents the MIG from prematurely recreating a VM. If the health
15010
+ # check receives a healthy response during the initial delay, it indicates that
15011
+ # the startup process is complete and the VM is ready. The value of initial
15012
+ # delay must be between 0 and 3600 seconds. The default value is 0.
14991
15013
  # Corresponds to the JSON property `initialDelaySec`
14992
15014
  # @return [Fixnum]
14993
15015
  attr_accessor :initial_delay_sec
@@ -17531,24 +17553,785 @@ module Google
17531
17553
 
17532
17554
  # Update properties of this object
17533
17555
  def update!(**args)
17534
- @disks = args[:disks] if args.key?(:disks)
17535
- @instance_encryption_key = args[:instance_encryption_key] if args.key?(:instance_encryption_key)
17556
+ @disks = args[:disks] if args.key?(:disks)
17557
+ @instance_encryption_key = args[:instance_encryption_key] if args.key?(:instance_encryption_key)
17558
+ end
17559
+ end
17560
+
17561
+ #
17562
+ class InstancesScopedList
17563
+ include Google::Apis::Core::Hashable
17564
+
17565
+ # [Output Only] A list of instances contained in this scope.
17566
+ # Corresponds to the JSON property `instances`
17567
+ # @return [Array<Google::Apis::ComputeBeta::Instance>]
17568
+ attr_accessor :instances
17569
+
17570
+ # [Output Only] Informational warning which replaces the list of instances when
17571
+ # the list is empty.
17572
+ # Corresponds to the JSON property `warning`
17573
+ # @return [Google::Apis::ComputeBeta::InstancesScopedList::Warning]
17574
+ attr_accessor :warning
17575
+
17576
+ def initialize(**args)
17577
+ update!(**args)
17578
+ end
17579
+
17580
+ # Update properties of this object
17581
+ def update!(**args)
17582
+ @instances = args[:instances] if args.key?(:instances)
17583
+ @warning = args[:warning] if args.key?(:warning)
17584
+ end
17585
+
17586
+ # [Output Only] Informational warning which replaces the list of instances when
17587
+ # the list is empty.
17588
+ class Warning
17589
+ include Google::Apis::Core::Hashable
17590
+
17591
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
17592
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
17593
+ # Corresponds to the JSON property `code`
17594
+ # @return [String]
17595
+ attr_accessor :code
17596
+
17597
+ # [Output Only] Metadata about this warning in key: value format. For example: "
17598
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
17599
+ # Corresponds to the JSON property `data`
17600
+ # @return [Array<Google::Apis::ComputeBeta::InstancesScopedList::Warning::Datum>]
17601
+ attr_accessor :data
17602
+
17603
+ # [Output Only] A human-readable description of the warning code.
17604
+ # Corresponds to the JSON property `message`
17605
+ # @return [String]
17606
+ attr_accessor :message
17607
+
17608
+ def initialize(**args)
17609
+ update!(**args)
17610
+ end
17611
+
17612
+ # Update properties of this object
17613
+ def update!(**args)
17614
+ @code = args[:code] if args.key?(:code)
17615
+ @data = args[:data] if args.key?(:data)
17616
+ @message = args[:message] if args.key?(:message)
17617
+ end
17618
+
17619
+ #
17620
+ class Datum
17621
+ include Google::Apis::Core::Hashable
17622
+
17623
+ # [Output Only] A key that provides more detail on the warning being returned.
17624
+ # For example, for warnings where there are no results in a list request for a
17625
+ # particular zone, this key might be scope and the key value might be the zone
17626
+ # name. Other examples might be a key indicating a deprecated resource and a
17627
+ # suggested replacement, or a warning about invalid network settings (for
17628
+ # example, if an instance attempts to perform IP forwarding but is not enabled
17629
+ # for IP forwarding).
17630
+ # Corresponds to the JSON property `key`
17631
+ # @return [String]
17632
+ attr_accessor :key
17633
+
17634
+ # [Output Only] A warning data value corresponding to the key.
17635
+ # Corresponds to the JSON property `value`
17636
+ # @return [String]
17637
+ attr_accessor :value
17638
+
17639
+ def initialize(**args)
17640
+ update!(**args)
17641
+ end
17642
+
17643
+ # Update properties of this object
17644
+ def update!(**args)
17645
+ @key = args[:key] if args.key?(:key)
17646
+ @value = args[:value] if args.key?(:value)
17647
+ end
17648
+ end
17649
+ end
17650
+ end
17651
+
17652
+ #
17653
+ class InstancesSetLabelsRequest
17654
+ include Google::Apis::Core::Hashable
17655
+
17656
+ # Fingerprint of the previous set of labels for this resource, used to prevent
17657
+ # conflicts. Provide the latest fingerprint value when making a request to add
17658
+ # or change labels.
17659
+ # Corresponds to the JSON property `labelFingerprint`
17660
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
17661
+ # @return [String]
17662
+ attr_accessor :label_fingerprint
17663
+
17664
+ #
17665
+ # Corresponds to the JSON property `labels`
17666
+ # @return [Hash<String,String>]
17667
+ attr_accessor :labels
17668
+
17669
+ def initialize(**args)
17670
+ update!(**args)
17671
+ end
17672
+
17673
+ # Update properties of this object
17674
+ def update!(**args)
17675
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
17676
+ @labels = args[:labels] if args.key?(:labels)
17677
+ end
17678
+ end
17679
+
17680
+ #
17681
+ class InstancesSetMachineResourcesRequest
17682
+ include Google::Apis::Core::Hashable
17683
+
17684
+ # A list of the type and count of accelerator cards attached to the instance.
17685
+ # Corresponds to the JSON property `guestAccelerators`
17686
+ # @return [Array<Google::Apis::ComputeBeta::AcceleratorConfig>]
17687
+ attr_accessor :guest_accelerators
17688
+
17689
+ def initialize(**args)
17690
+ update!(**args)
17691
+ end
17692
+
17693
+ # Update properties of this object
17694
+ def update!(**args)
17695
+ @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
17696
+ end
17697
+ end
17698
+
17699
+ #
17700
+ class InstancesSetMachineTypeRequest
17701
+ include Google::Apis::Core::Hashable
17702
+
17703
+ # Full or partial URL of the machine type resource. See Machine Types for a full
17704
+ # list of machine types. For example: zones/us-central1-f/machineTypes/n1-
17705
+ # standard-1
17706
+ # Corresponds to the JSON property `machineType`
17707
+ # @return [String]
17708
+ attr_accessor :machine_type
17709
+
17710
+ def initialize(**args)
17711
+ update!(**args)
17712
+ end
17713
+
17714
+ # Update properties of this object
17715
+ def update!(**args)
17716
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
17717
+ end
17718
+ end
17719
+
17720
+ #
17721
+ class InstancesSetMinCpuPlatformRequest
17722
+ include Google::Apis::Core::Hashable
17723
+
17724
+ # Minimum cpu/platform this instance should be started at.
17725
+ # Corresponds to the JSON property `minCpuPlatform`
17726
+ # @return [String]
17727
+ attr_accessor :min_cpu_platform
17728
+
17729
+ def initialize(**args)
17730
+ update!(**args)
17731
+ end
17732
+
17733
+ # Update properties of this object
17734
+ def update!(**args)
17735
+ @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
17736
+ end
17737
+ end
17738
+
17739
+ #
17740
+ class InstancesSetNameRequest
17741
+ include Google::Apis::Core::Hashable
17742
+
17743
+ # The current name of this resource, used to prevent conflicts. Provide the
17744
+ # latest name when making a request to change name.
17745
+ # Corresponds to the JSON property `currentName`
17746
+ # @return [String]
17747
+ attr_accessor :current_name
17748
+
17749
+ # The name to be applied to the instance. Needs to be RFC 1035 compliant.
17750
+ # Corresponds to the JSON property `name`
17751
+ # @return [String]
17752
+ attr_accessor :name
17753
+
17754
+ def initialize(**args)
17755
+ update!(**args)
17756
+ end
17757
+
17758
+ # Update properties of this object
17759
+ def update!(**args)
17760
+ @current_name = args[:current_name] if args.key?(:current_name)
17761
+ @name = args[:name] if args.key?(:name)
17762
+ end
17763
+ end
17764
+
17765
+ #
17766
+ class InstancesSetSecurityPolicyRequest
17767
+ include Google::Apis::Core::Hashable
17768
+
17769
+ # The network interfaces that the security policy will be applied to. Network
17770
+ # interfaces use the nicN naming format. You can only set a security policy for
17771
+ # network interfaces with an access config.
17772
+ # Corresponds to the JSON property `networkInterfaces`
17773
+ # @return [Array<String>]
17774
+ attr_accessor :network_interfaces
17775
+
17776
+ # A full or partial URL to a security policy to add to this instance. If this
17777
+ # field is set to an empty string it will remove the associated security policy.
17778
+ # Corresponds to the JSON property `securityPolicy`
17779
+ # @return [String]
17780
+ attr_accessor :security_policy
17781
+
17782
+ def initialize(**args)
17783
+ update!(**args)
17784
+ end
17785
+
17786
+ # Update properties of this object
17787
+ def update!(**args)
17788
+ @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
17789
+ @security_policy = args[:security_policy] if args.key?(:security_policy)
17790
+ end
17791
+ end
17792
+
17793
+ #
17794
+ class InstancesSetServiceAccountRequest
17795
+ include Google::Apis::Core::Hashable
17796
+
17797
+ # Email address of the service account.
17798
+ # Corresponds to the JSON property `email`
17799
+ # @return [String]
17800
+ attr_accessor :email
17801
+
17802
+ # The list of scopes to be made available for this service account.
17803
+ # Corresponds to the JSON property `scopes`
17804
+ # @return [Array<String>]
17805
+ attr_accessor :scopes
17806
+
17807
+ def initialize(**args)
17808
+ update!(**args)
17809
+ end
17810
+
17811
+ # Update properties of this object
17812
+ def update!(**args)
17813
+ @email = args[:email] if args.key?(:email)
17814
+ @scopes = args[:scopes] if args.key?(:scopes)
17815
+ end
17816
+ end
17817
+
17818
+ #
17819
+ class InstancesStartWithEncryptionKeyRequest
17820
+ include Google::Apis::Core::Hashable
17821
+
17822
+ # Array of disks associated with this instance that are protected with a
17823
+ # customer-supplied encryption key. In order to start the instance, the disk url
17824
+ # and its corresponding key must be provided. If the disk is not protected with
17825
+ # a customer-supplied encryption key it should not be specified.
17826
+ # Corresponds to the JSON property `disks`
17827
+ # @return [Array<Google::Apis::ComputeBeta::CustomerEncryptionKeyProtectedDisk>]
17828
+ attr_accessor :disks
17829
+
17830
+ def initialize(**args)
17831
+ update!(**args)
17832
+ end
17833
+
17834
+ # Update properties of this object
17835
+ def update!(**args)
17836
+ @disks = args[:disks] if args.key?(:disks)
17837
+ end
17838
+ end
17839
+
17840
+ # Represents a InstantSnapshot resource. You can use instant snapshots to create
17841
+ # disk rollback points quickly..
17842
+ class InstantSnapshot
17843
+ include Google::Apis::Core::Hashable
17844
+
17845
+ # [Output Only] The architecture of the instant snapshot. Valid values are ARM64
17846
+ # or X86_64.
17847
+ # Corresponds to the JSON property `architecture`
17848
+ # @return [String]
17849
+ attr_accessor :architecture
17850
+
17851
+ # [Output Only] Creation timestamp in RFC3339 text format.
17852
+ # Corresponds to the JSON property `creationTimestamp`
17853
+ # @return [String]
17854
+ attr_accessor :creation_timestamp
17855
+
17856
+ # An optional description of this resource. Provide this property when you
17857
+ # create the resource.
17858
+ # Corresponds to the JSON property `description`
17859
+ # @return [String]
17860
+ attr_accessor :description
17861
+
17862
+ # [Output Only] Size of the source disk, specified in GB.
17863
+ # Corresponds to the JSON property `diskSizeGb`
17864
+ # @return [Fixnum]
17865
+ attr_accessor :disk_size_gb
17866
+
17867
+ # [Output Only] The unique identifier for the resource. This identifier is
17868
+ # defined by the server.
17869
+ # Corresponds to the JSON property `id`
17870
+ # @return [Fixnum]
17871
+ attr_accessor :id
17872
+
17873
+ # [Output Only] Type of the resource. Always compute#instantSnapshot for
17874
+ # InstantSnapshot resources.
17875
+ # Corresponds to the JSON property `kind`
17876
+ # @return [String]
17877
+ attr_accessor :kind
17878
+
17879
+ # A fingerprint for the labels being applied to this InstantSnapshot, which is
17880
+ # essentially a hash of the labels set used for optimistic locking. The
17881
+ # fingerprint is initially generated by Compute Engine and changes after every
17882
+ # request to modify or update labels. You must always provide an up-to-date
17883
+ # fingerprint hash in order to update or change labels, otherwise the request
17884
+ # will fail with error 412 conditionNotMet. To see the latest fingerprint, make
17885
+ # a get() request to retrieve a InstantSnapshot.
17886
+ # Corresponds to the JSON property `labelFingerprint`
17887
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
17888
+ # @return [String]
17889
+ attr_accessor :label_fingerprint
17890
+
17891
+ # Labels to apply to this InstantSnapshot. These can be later modified by the
17892
+ # setLabels method. Label values may be empty.
17893
+ # Corresponds to the JSON property `labels`
17894
+ # @return [Hash<String,String>]
17895
+ attr_accessor :labels
17896
+
17897
+ # Name of the resource; provided by the client when the resource is created. The
17898
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
17899
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
17900
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
17901
+ # and all following characters must be a dash, lowercase letter, or digit,
17902
+ # except the last character, which cannot be a dash.
17903
+ # Corresponds to the JSON property `name`
17904
+ # @return [String]
17905
+ attr_accessor :name
17906
+
17907
+ # [Output Only] URL of the region where the instant snapshot resides. You must
17908
+ # specify this field as part of the HTTP request URL. It is not settable as a
17909
+ # field in the request body.
17910
+ # Corresponds to the JSON property `region`
17911
+ # @return [String]
17912
+ attr_accessor :region
17913
+
17914
+ # [Output Only] Status information for the instant snapshot resource.
17915
+ # Corresponds to the JSON property `resourceStatus`
17916
+ # @return [Google::Apis::ComputeBeta::InstantSnapshotResourceStatus]
17917
+ attr_accessor :resource_status
17918
+
17919
+ # [Output Only] Reserved for future use.
17920
+ # Corresponds to the JSON property `satisfiesPzs`
17921
+ # @return [Boolean]
17922
+ attr_accessor :satisfies_pzs
17923
+ alias_method :satisfies_pzs?, :satisfies_pzs
17924
+
17925
+ # [Output Only] Server-defined URL for the resource.
17926
+ # Corresponds to the JSON property `selfLink`
17927
+ # @return [String]
17928
+ attr_accessor :self_link
17929
+
17930
+ # [Output Only] Server-defined URL for this resource's resource id.
17931
+ # Corresponds to the JSON property `selfLinkWithId`
17932
+ # @return [String]
17933
+ attr_accessor :self_link_with_id
17934
+
17935
+ # URL of the source disk used to create this instant snapshot. Note that the
17936
+ # source disk must be in the same zone/region as the instant snapshot to be
17937
+ # created. This can be a full or valid partial URL. For example, the following
17938
+ # are valid values: - https://www.googleapis.com/compute/v1/projects/project/
17939
+ # zones/zone /disks/disk - https://www.googleapis.com/compute/v1/projects/
17940
+ # project/regions/region /disks/disk - projects/project/zones/zone/disks/disk -
17941
+ # projects/project/regions/region/disks/disk - zones/zone/disks/disk - regions/
17942
+ # region/disks/disk
17943
+ # Corresponds to the JSON property `sourceDisk`
17944
+ # @return [String]
17945
+ attr_accessor :source_disk
17946
+
17947
+ # [Output Only] The ID value of the disk used to create this InstantSnapshot.
17948
+ # This value may be used to determine whether the InstantSnapshot was taken from
17949
+ # the current or a previous instance of a given disk name.
17950
+ # Corresponds to the JSON property `sourceDiskId`
17951
+ # @return [String]
17952
+ attr_accessor :source_disk_id
17953
+
17954
+ # [Output Only] The status of the instantSnapshot. This can be CREATING,
17955
+ # DELETING, FAILED, or READY.
17956
+ # Corresponds to the JSON property `status`
17957
+ # @return [String]
17958
+ attr_accessor :status
17959
+
17960
+ # [Output Only] URL of the zone where the instant snapshot resides. You must
17961
+ # specify this field as part of the HTTP request URL. It is not settable as a
17962
+ # field in the request body.
17963
+ # Corresponds to the JSON property `zone`
17964
+ # @return [String]
17965
+ attr_accessor :zone
17966
+
17967
+ def initialize(**args)
17968
+ update!(**args)
17969
+ end
17970
+
17971
+ # Update properties of this object
17972
+ def update!(**args)
17973
+ @architecture = args[:architecture] if args.key?(:architecture)
17974
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
17975
+ @description = args[:description] if args.key?(:description)
17976
+ @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
17977
+ @id = args[:id] if args.key?(:id)
17978
+ @kind = args[:kind] if args.key?(:kind)
17979
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
17980
+ @labels = args[:labels] if args.key?(:labels)
17981
+ @name = args[:name] if args.key?(:name)
17982
+ @region = args[:region] if args.key?(:region)
17983
+ @resource_status = args[:resource_status] if args.key?(:resource_status)
17984
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
17985
+ @self_link = args[:self_link] if args.key?(:self_link)
17986
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
17987
+ @source_disk = args[:source_disk] if args.key?(:source_disk)
17988
+ @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
17989
+ @status = args[:status] if args.key?(:status)
17990
+ @zone = args[:zone] if args.key?(:zone)
17991
+ end
17992
+ end
17993
+
17994
+ #
17995
+ class InstantSnapshotAggregatedList
17996
+ include Google::Apis::Core::Hashable
17997
+
17998
+ # [Output Only] Unique identifier for the resource; defined by the server.
17999
+ # Corresponds to the JSON property `id`
18000
+ # @return [String]
18001
+ attr_accessor :id
18002
+
18003
+ # A list of InstantSnapshotsScopedList resources.
18004
+ # Corresponds to the JSON property `items`
18005
+ # @return [Hash<String,Google::Apis::ComputeBeta::InstantSnapshotsScopedList>]
18006
+ attr_accessor :items
18007
+
18008
+ # [Output Only] Type of resource. Always compute#instantSnapshotAggregatedList
18009
+ # for aggregated lists of instantSnapshots.
18010
+ # Corresponds to the JSON property `kind`
18011
+ # @return [String]
18012
+ attr_accessor :kind
18013
+
18014
+ # [Output Only] This token allows you to get the next page of results for list
18015
+ # requests. If the number of results is larger than maxResults, use the
18016
+ # nextPageToken as a value for the query parameter pageToken in the next list
18017
+ # request. Subsequent list requests will have their own nextPageToken to
18018
+ # continue paging through the results.
18019
+ # Corresponds to the JSON property `nextPageToken`
18020
+ # @return [String]
18021
+ attr_accessor :next_page_token
18022
+
18023
+ # [Output Only] Server-defined URL for this resource.
18024
+ # Corresponds to the JSON property `selfLink`
18025
+ # @return [String]
18026
+ attr_accessor :self_link
18027
+
18028
+ # [Output Only] Unreachable resources.
18029
+ # Corresponds to the JSON property `unreachables`
18030
+ # @return [Array<String>]
18031
+ attr_accessor :unreachables
18032
+
18033
+ # [Output Only] Informational warning message.
18034
+ # Corresponds to the JSON property `warning`
18035
+ # @return [Google::Apis::ComputeBeta::InstantSnapshotAggregatedList::Warning]
18036
+ attr_accessor :warning
18037
+
18038
+ def initialize(**args)
18039
+ update!(**args)
18040
+ end
18041
+
18042
+ # Update properties of this object
18043
+ def update!(**args)
18044
+ @id = args[:id] if args.key?(:id)
18045
+ @items = args[:items] if args.key?(:items)
18046
+ @kind = args[:kind] if args.key?(:kind)
18047
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
18048
+ @self_link = args[:self_link] if args.key?(:self_link)
18049
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
18050
+ @warning = args[:warning] if args.key?(:warning)
18051
+ end
18052
+
18053
+ # [Output Only] Informational warning message.
18054
+ class Warning
18055
+ include Google::Apis::Core::Hashable
18056
+
18057
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
18058
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
18059
+ # Corresponds to the JSON property `code`
18060
+ # @return [String]
18061
+ attr_accessor :code
18062
+
18063
+ # [Output Only] Metadata about this warning in key: value format. For example: "
18064
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
18065
+ # Corresponds to the JSON property `data`
18066
+ # @return [Array<Google::Apis::ComputeBeta::InstantSnapshotAggregatedList::Warning::Datum>]
18067
+ attr_accessor :data
18068
+
18069
+ # [Output Only] A human-readable description of the warning code.
18070
+ # Corresponds to the JSON property `message`
18071
+ # @return [String]
18072
+ attr_accessor :message
18073
+
18074
+ def initialize(**args)
18075
+ update!(**args)
18076
+ end
18077
+
18078
+ # Update properties of this object
18079
+ def update!(**args)
18080
+ @code = args[:code] if args.key?(:code)
18081
+ @data = args[:data] if args.key?(:data)
18082
+ @message = args[:message] if args.key?(:message)
18083
+ end
18084
+
18085
+ #
18086
+ class Datum
18087
+ include Google::Apis::Core::Hashable
18088
+
18089
+ # [Output Only] A key that provides more detail on the warning being returned.
18090
+ # For example, for warnings where there are no results in a list request for a
18091
+ # particular zone, this key might be scope and the key value might be the zone
18092
+ # name. Other examples might be a key indicating a deprecated resource and a
18093
+ # suggested replacement, or a warning about invalid network settings (for
18094
+ # example, if an instance attempts to perform IP forwarding but is not enabled
18095
+ # for IP forwarding).
18096
+ # Corresponds to the JSON property `key`
18097
+ # @return [String]
18098
+ attr_accessor :key
18099
+
18100
+ # [Output Only] A warning data value corresponding to the key.
18101
+ # Corresponds to the JSON property `value`
18102
+ # @return [String]
18103
+ attr_accessor :value
18104
+
18105
+ def initialize(**args)
18106
+ update!(**args)
18107
+ end
18108
+
18109
+ # Update properties of this object
18110
+ def update!(**args)
18111
+ @key = args[:key] if args.key?(:key)
18112
+ @value = args[:value] if args.key?(:value)
18113
+ end
18114
+ end
18115
+ end
18116
+ end
18117
+
18118
+ #
18119
+ class InstantSnapshotExportParams
18120
+ include Google::Apis::Core::Hashable
18121
+
18122
+ # An optional base instant snapshot that this resource is compared against. If
18123
+ # not specified, all blocks of this resource are exported. The base instant
18124
+ # snapshot and this resource must be created from the same disk. The base
18125
+ # instant snapshot must be created earlier in time than this resource.
18126
+ # Corresponds to the JSON property `baseInstantSnapshot`
18127
+ # @return [String]
18128
+ attr_accessor :base_instant_snapshot
18129
+
18130
+ # The name of an existing bucket in Cloud Storage where the changed blocks will
18131
+ # be stored. The Google Service Account must have read and write access to this
18132
+ # bucket. The bucket has to be in the same region as this resource.
18133
+ # Corresponds to the JSON property `bucketName`
18134
+ # @return [String]
18135
+ attr_accessor :bucket_name
18136
+
18137
+ # Encryption key used to encrypt the instant snapshot.
18138
+ # Corresponds to the JSON property `encryptionKey`
18139
+ # @return [Google::Apis::ComputeBeta::CustomerEncryptionKey]
18140
+ attr_accessor :encryption_key
18141
+
18142
+ # Name of the output Bigstore object storing the changed blocks. Object name
18143
+ # must be less than 1024 bytes in length.
18144
+ # Corresponds to the JSON property `objectName`
18145
+ # @return [String]
18146
+ attr_accessor :object_name
18147
+
18148
+ # The format of the output file.
18149
+ # Corresponds to the JSON property `outputType`
18150
+ # @return [String]
18151
+ attr_accessor :output_type
18152
+
18153
+ def initialize(**args)
18154
+ update!(**args)
18155
+ end
18156
+
18157
+ # Update properties of this object
18158
+ def update!(**args)
18159
+ @base_instant_snapshot = args[:base_instant_snapshot] if args.key?(:base_instant_snapshot)
18160
+ @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
18161
+ @encryption_key = args[:encryption_key] if args.key?(:encryption_key)
18162
+ @object_name = args[:object_name] if args.key?(:object_name)
18163
+ @output_type = args[:output_type] if args.key?(:output_type)
18164
+ end
18165
+ end
18166
+
18167
+ # Contains a list of InstantSnapshot resources.
18168
+ class InstantSnapshotList
18169
+ include Google::Apis::Core::Hashable
18170
+
18171
+ # [Output Only] Unique identifier for the resource; defined by the server.
18172
+ # Corresponds to the JSON property `id`
18173
+ # @return [String]
18174
+ attr_accessor :id
18175
+
18176
+ # A list of InstantSnapshot resources.
18177
+ # Corresponds to the JSON property `items`
18178
+ # @return [Array<Google::Apis::ComputeBeta::InstantSnapshot>]
18179
+ attr_accessor :items
18180
+
18181
+ # Type of resource.
18182
+ # Corresponds to the JSON property `kind`
18183
+ # @return [String]
18184
+ attr_accessor :kind
18185
+
18186
+ # [Output Only] This token allows you to get the next page of results for list
18187
+ # requests. If the number of results is larger than maxResults, use the
18188
+ # nextPageToken as a value for the query parameter pageToken in the next list
18189
+ # request. Subsequent list requests will have their own nextPageToken to
18190
+ # continue paging through the results.
18191
+ # Corresponds to the JSON property `nextPageToken`
18192
+ # @return [String]
18193
+ attr_accessor :next_page_token
18194
+
18195
+ # [Output Only] Server-defined URL for this resource.
18196
+ # Corresponds to the JSON property `selfLink`
18197
+ # @return [String]
18198
+ attr_accessor :self_link
18199
+
18200
+ # [Output Only] Informational warning message.
18201
+ # Corresponds to the JSON property `warning`
18202
+ # @return [Google::Apis::ComputeBeta::InstantSnapshotList::Warning]
18203
+ attr_accessor :warning
18204
+
18205
+ def initialize(**args)
18206
+ update!(**args)
18207
+ end
18208
+
18209
+ # Update properties of this object
18210
+ def update!(**args)
18211
+ @id = args[:id] if args.key?(:id)
18212
+ @items = args[:items] if args.key?(:items)
18213
+ @kind = args[:kind] if args.key?(:kind)
18214
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
18215
+ @self_link = args[:self_link] if args.key?(:self_link)
18216
+ @warning = args[:warning] if args.key?(:warning)
18217
+ end
18218
+
18219
+ # [Output Only] Informational warning message.
18220
+ class Warning
18221
+ include Google::Apis::Core::Hashable
18222
+
18223
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
18224
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
18225
+ # Corresponds to the JSON property `code`
18226
+ # @return [String]
18227
+ attr_accessor :code
18228
+
18229
+ # [Output Only] Metadata about this warning in key: value format. For example: "
18230
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
18231
+ # Corresponds to the JSON property `data`
18232
+ # @return [Array<Google::Apis::ComputeBeta::InstantSnapshotList::Warning::Datum>]
18233
+ attr_accessor :data
18234
+
18235
+ # [Output Only] A human-readable description of the warning code.
18236
+ # Corresponds to the JSON property `message`
18237
+ # @return [String]
18238
+ attr_accessor :message
18239
+
18240
+ def initialize(**args)
18241
+ update!(**args)
18242
+ end
18243
+
18244
+ # Update properties of this object
18245
+ def update!(**args)
18246
+ @code = args[:code] if args.key?(:code)
18247
+ @data = args[:data] if args.key?(:data)
18248
+ @message = args[:message] if args.key?(:message)
18249
+ end
18250
+
18251
+ #
18252
+ class Datum
18253
+ include Google::Apis::Core::Hashable
18254
+
18255
+ # [Output Only] A key that provides more detail on the warning being returned.
18256
+ # For example, for warnings where there are no results in a list request for a
18257
+ # particular zone, this key might be scope and the key value might be the zone
18258
+ # name. Other examples might be a key indicating a deprecated resource and a
18259
+ # suggested replacement, or a warning about invalid network settings (for
18260
+ # example, if an instance attempts to perform IP forwarding but is not enabled
18261
+ # for IP forwarding).
18262
+ # Corresponds to the JSON property `key`
18263
+ # @return [String]
18264
+ attr_accessor :key
18265
+
18266
+ # [Output Only] A warning data value corresponding to the key.
18267
+ # Corresponds to the JSON property `value`
18268
+ # @return [String]
18269
+ attr_accessor :value
18270
+
18271
+ def initialize(**args)
18272
+ update!(**args)
18273
+ end
18274
+
18275
+ # Update properties of this object
18276
+ def update!(**args)
18277
+ @key = args[:key] if args.key?(:key)
18278
+ @value = args[:value] if args.key?(:value)
18279
+ end
18280
+ end
18281
+ end
18282
+ end
18283
+
18284
+ #
18285
+ class InstantSnapshotResourceStatus
18286
+ include Google::Apis::Core::Hashable
18287
+
18288
+ # [Output Only] The storage size of this instant snapshot.
18289
+ # Corresponds to the JSON property `storageSizeBytes`
18290
+ # @return [Fixnum]
18291
+ attr_accessor :storage_size_bytes
18292
+
18293
+ def initialize(**args)
18294
+ update!(**args)
18295
+ end
18296
+
18297
+ # Update properties of this object
18298
+ def update!(**args)
18299
+ @storage_size_bytes = args[:storage_size_bytes] if args.key?(:storage_size_bytes)
18300
+ end
18301
+ end
18302
+
18303
+ #
18304
+ class InstantSnapshotsExportRequest
18305
+ include Google::Apis::Core::Hashable
18306
+
18307
+ # Parameters to export the changed blocks.
18308
+ # Corresponds to the JSON property `exportParams`
18309
+ # @return [Google::Apis::ComputeBeta::InstantSnapshotExportParams]
18310
+ attr_accessor :export_params
18311
+
18312
+ def initialize(**args)
18313
+ update!(**args)
18314
+ end
18315
+
18316
+ # Update properties of this object
18317
+ def update!(**args)
18318
+ @export_params = args[:export_params] if args.key?(:export_params)
17536
18319
  end
17537
18320
  end
17538
18321
 
17539
18322
  #
17540
- class InstancesScopedList
18323
+ class InstantSnapshotsScopedList
17541
18324
  include Google::Apis::Core::Hashable
17542
18325
 
17543
- # [Output Only] A list of instances contained in this scope.
17544
- # Corresponds to the JSON property `instances`
17545
- # @return [Array<Google::Apis::ComputeBeta::Instance>]
17546
- attr_accessor :instances
18326
+ # [Output Only] A list of instantSnapshots contained in this scope.
18327
+ # Corresponds to the JSON property `instantSnapshots`
18328
+ # @return [Array<Google::Apis::ComputeBeta::InstantSnapshot>]
18329
+ attr_accessor :instant_snapshots
17547
18330
 
17548
- # [Output Only] Informational warning which replaces the list of instances when
17549
- # the list is empty.
18331
+ # [Output Only] Informational warning which replaces the list of
18332
+ # instantSnapshots when the list is empty.
17550
18333
  # Corresponds to the JSON property `warning`
17551
- # @return [Google::Apis::ComputeBeta::InstancesScopedList::Warning]
18334
+ # @return [Google::Apis::ComputeBeta::InstantSnapshotsScopedList::Warning]
17552
18335
  attr_accessor :warning
17553
18336
 
17554
18337
  def initialize(**args)
@@ -17557,12 +18340,12 @@ module Google
17557
18340
 
17558
18341
  # Update properties of this object
17559
18342
  def update!(**args)
17560
- @instances = args[:instances] if args.key?(:instances)
18343
+ @instant_snapshots = args[:instant_snapshots] if args.key?(:instant_snapshots)
17561
18344
  @warning = args[:warning] if args.key?(:warning)
17562
18345
  end
17563
18346
 
17564
- # [Output Only] Informational warning which replaces the list of instances when
17565
- # the list is empty.
18347
+ # [Output Only] Informational warning which replaces the list of
18348
+ # instantSnapshots when the list is empty.
17566
18349
  class Warning
17567
18350
  include Google::Apis::Core::Hashable
17568
18351
 
@@ -17575,7 +18358,7 @@ module Google
17575
18358
  # [Output Only] Metadata about this warning in key: value format. For example: "
17576
18359
  # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
17577
18360
  # Corresponds to the JSON property `data`
17578
- # @return [Array<Google::Apis::ComputeBeta::InstancesScopedList::Warning::Datum>]
18361
+ # @return [Array<Google::Apis::ComputeBeta::InstantSnapshotsScopedList::Warning::Datum>]
17579
18362
  attr_accessor :data
17580
18363
 
17581
18364
  # [Output Only] A human-readable description of the warning code.
@@ -17627,194 +18410,6 @@ module Google
17627
18410
  end
17628
18411
  end
17629
18412
 
17630
- #
17631
- class InstancesSetLabelsRequest
17632
- include Google::Apis::Core::Hashable
17633
-
17634
- # Fingerprint of the previous set of labels for this resource, used to prevent
17635
- # conflicts. Provide the latest fingerprint value when making a request to add
17636
- # or change labels.
17637
- # Corresponds to the JSON property `labelFingerprint`
17638
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
17639
- # @return [String]
17640
- attr_accessor :label_fingerprint
17641
-
17642
- #
17643
- # Corresponds to the JSON property `labels`
17644
- # @return [Hash<String,String>]
17645
- attr_accessor :labels
17646
-
17647
- def initialize(**args)
17648
- update!(**args)
17649
- end
17650
-
17651
- # Update properties of this object
17652
- def update!(**args)
17653
- @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
17654
- @labels = args[:labels] if args.key?(:labels)
17655
- end
17656
- end
17657
-
17658
- #
17659
- class InstancesSetMachineResourcesRequest
17660
- include Google::Apis::Core::Hashable
17661
-
17662
- # A list of the type and count of accelerator cards attached to the instance.
17663
- # Corresponds to the JSON property `guestAccelerators`
17664
- # @return [Array<Google::Apis::ComputeBeta::AcceleratorConfig>]
17665
- attr_accessor :guest_accelerators
17666
-
17667
- def initialize(**args)
17668
- update!(**args)
17669
- end
17670
-
17671
- # Update properties of this object
17672
- def update!(**args)
17673
- @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
17674
- end
17675
- end
17676
-
17677
- #
17678
- class InstancesSetMachineTypeRequest
17679
- include Google::Apis::Core::Hashable
17680
-
17681
- # Full or partial URL of the machine type resource. See Machine Types for a full
17682
- # list of machine types. For example: zones/us-central1-f/machineTypes/n1-
17683
- # standard-1
17684
- # Corresponds to the JSON property `machineType`
17685
- # @return [String]
17686
- attr_accessor :machine_type
17687
-
17688
- def initialize(**args)
17689
- update!(**args)
17690
- end
17691
-
17692
- # Update properties of this object
17693
- def update!(**args)
17694
- @machine_type = args[:machine_type] if args.key?(:machine_type)
17695
- end
17696
- end
17697
-
17698
- #
17699
- class InstancesSetMinCpuPlatformRequest
17700
- include Google::Apis::Core::Hashable
17701
-
17702
- # Minimum cpu/platform this instance should be started at.
17703
- # Corresponds to the JSON property `minCpuPlatform`
17704
- # @return [String]
17705
- attr_accessor :min_cpu_platform
17706
-
17707
- def initialize(**args)
17708
- update!(**args)
17709
- end
17710
-
17711
- # Update properties of this object
17712
- def update!(**args)
17713
- @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
17714
- end
17715
- end
17716
-
17717
- #
17718
- class InstancesSetNameRequest
17719
- include Google::Apis::Core::Hashable
17720
-
17721
- # The current name of this resource, used to prevent conflicts. Provide the
17722
- # latest name when making a request to change name.
17723
- # Corresponds to the JSON property `currentName`
17724
- # @return [String]
17725
- attr_accessor :current_name
17726
-
17727
- # The name to be applied to the instance. Needs to be RFC 1035 compliant.
17728
- # Corresponds to the JSON property `name`
17729
- # @return [String]
17730
- attr_accessor :name
17731
-
17732
- def initialize(**args)
17733
- update!(**args)
17734
- end
17735
-
17736
- # Update properties of this object
17737
- def update!(**args)
17738
- @current_name = args[:current_name] if args.key?(:current_name)
17739
- @name = args[:name] if args.key?(:name)
17740
- end
17741
- end
17742
-
17743
- #
17744
- class InstancesSetSecurityPolicyRequest
17745
- include Google::Apis::Core::Hashable
17746
-
17747
- # The network interfaces that the security policy will be applied to. Network
17748
- # interfaces use the nicN naming format. You can only set a security policy for
17749
- # network interfaces with an access config.
17750
- # Corresponds to the JSON property `networkInterfaces`
17751
- # @return [Array<String>]
17752
- attr_accessor :network_interfaces
17753
-
17754
- # A full or partial URL to a security policy to add to this instance. If this
17755
- # field is set to an empty string it will remove the associated security policy.
17756
- # Corresponds to the JSON property `securityPolicy`
17757
- # @return [String]
17758
- attr_accessor :security_policy
17759
-
17760
- def initialize(**args)
17761
- update!(**args)
17762
- end
17763
-
17764
- # Update properties of this object
17765
- def update!(**args)
17766
- @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
17767
- @security_policy = args[:security_policy] if args.key?(:security_policy)
17768
- end
17769
- end
17770
-
17771
- #
17772
- class InstancesSetServiceAccountRequest
17773
- include Google::Apis::Core::Hashable
17774
-
17775
- # Email address of the service account.
17776
- # Corresponds to the JSON property `email`
17777
- # @return [String]
17778
- attr_accessor :email
17779
-
17780
- # The list of scopes to be made available for this service account.
17781
- # Corresponds to the JSON property `scopes`
17782
- # @return [Array<String>]
17783
- attr_accessor :scopes
17784
-
17785
- def initialize(**args)
17786
- update!(**args)
17787
- end
17788
-
17789
- # Update properties of this object
17790
- def update!(**args)
17791
- @email = args[:email] if args.key?(:email)
17792
- @scopes = args[:scopes] if args.key?(:scopes)
17793
- end
17794
- end
17795
-
17796
- #
17797
- class InstancesStartWithEncryptionKeyRequest
17798
- include Google::Apis::Core::Hashable
17799
-
17800
- # Array of disks associated with this instance that are protected with a
17801
- # customer-supplied encryption key. In order to start the instance, the disk url
17802
- # and its corresponding key must be provided. If the disk is not protected with
17803
- # a customer-supplied encryption key it should not be specified.
17804
- # Corresponds to the JSON property `disks`
17805
- # @return [Array<Google::Apis::ComputeBeta::CustomerEncryptionKeyProtectedDisk>]
17806
- attr_accessor :disks
17807
-
17808
- def initialize(**args)
17809
- update!(**args)
17810
- end
17811
-
17812
- # Update properties of this object
17813
- def update!(**args)
17814
- @disks = args[:disks] if args.key?(:disks)
17815
- end
17816
- end
17817
-
17818
18413
  # HttpRouteRuleMatch criteria for field values that must stay within the
17819
18414
  # specified integer range.
17820
18415
  class Int64RangeMatch
@@ -30813,6 +31408,25 @@ module Google
30813
31408
  end
30814
31409
  end
30815
31410
 
31411
+ #
31412
+ class RegionInstantSnapshotsExportRequest
31413
+ include Google::Apis::Core::Hashable
31414
+
31415
+ # Parameters to export the changed blocks.
31416
+ # Corresponds to the JSON property `exportParams`
31417
+ # @return [Google::Apis::ComputeBeta::InstantSnapshotExportParams]
31418
+ attr_accessor :export_params
31419
+
31420
+ def initialize(**args)
31421
+ update!(**args)
31422
+ end
31423
+
31424
+ # Update properties of this object
31425
+ def update!(**args)
31426
+ @export_params = args[:export_params] if args.key?(:export_params)
31427
+ end
31428
+ end
31429
+
30816
31430
  # Contains a list of region resources.
30817
31431
  class RegionList
30818
31432
  include Google::Apis::Core::Hashable
@@ -36159,6 +36773,12 @@ module Google
36159
36773
  # @return [Google::Apis::ComputeBeta::Expr]
36160
36774
  attr_accessor :expr
36161
36775
 
36776
+ # The configuration options available when specifying a user defined CEVAL
36777
+ # expression (i.e., 'expr').
36778
+ # Corresponds to the JSON property `exprOptions`
36779
+ # @return [Google::Apis::ComputeBeta::SecurityPolicyRuleMatcherExprOptions]
36780
+ attr_accessor :expr_options
36781
+
36162
36782
  # Preconfigured versioned expression. If this field is specified, config must
36163
36783
  # also be specified. Available preconfigured expressions along with their
36164
36784
  # requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range
@@ -36175,6 +36795,7 @@ module Google
36175
36795
  def update!(**args)
36176
36796
  @config = args[:config] if args.key?(:config)
36177
36797
  @expr = args[:expr] if args.key?(:expr)
36798
+ @expr_options = args[:expr_options] if args.key?(:expr_options)
36178
36799
  @versioned_expr = args[:versioned_expr] if args.key?(:versioned_expr)
36179
36800
  end
36180
36801
  end
@@ -36244,6 +36865,55 @@ module Google
36244
36865
  end
36245
36866
  end
36246
36867
 
36868
+ #
36869
+ class SecurityPolicyRuleMatcherExprOptions
36870
+ include Google::Apis::Core::Hashable
36871
+
36872
+ # reCAPTCHA configuration options to be applied for the rule. If the rule does
36873
+ # not evaluate reCAPTCHA tokens, this field will have no effect.
36874
+ # Corresponds to the JSON property `recaptchaOptions`
36875
+ # @return [Google::Apis::ComputeBeta::SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions]
36876
+ attr_accessor :recaptcha_options
36877
+
36878
+ def initialize(**args)
36879
+ update!(**args)
36880
+ end
36881
+
36882
+ # Update properties of this object
36883
+ def update!(**args)
36884
+ @recaptcha_options = args[:recaptcha_options] if args.key?(:recaptcha_options)
36885
+ end
36886
+ end
36887
+
36888
+ #
36889
+ class SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions
36890
+ include Google::Apis::Core::Hashable
36891
+
36892
+ # A list of site keys to be used during the validation of reCAPTCHA action-
36893
+ # tokens. The provided site keys need to be created from reCAPTCHA API under the
36894
+ # same project where the security policy is created.
36895
+ # Corresponds to the JSON property `actionTokenSiteKeys`
36896
+ # @return [Array<String>]
36897
+ attr_accessor :action_token_site_keys
36898
+
36899
+ # A list of site keys to be used during the validation of reCAPTCHA session-
36900
+ # tokens. The provided site keys need to be created from reCAPTCHA API under the
36901
+ # same project where the security policy is created.
36902
+ # Corresponds to the JSON property `sessionTokenSiteKeys`
36903
+ # @return [Array<String>]
36904
+ attr_accessor :session_token_site_keys
36905
+
36906
+ def initialize(**args)
36907
+ update!(**args)
36908
+ end
36909
+
36910
+ # Update properties of this object
36911
+ def update!(**args)
36912
+ @action_token_site_keys = args[:action_token_site_keys] if args.key?(:action_token_site_keys)
36913
+ @session_token_site_keys = args[:session_token_site_keys] if args.key?(:session_token_site_keys)
36914
+ end
36915
+ end
36916
+
36247
36917
  # Represents a match condition that incoming network traffic is evaluated
36248
36918
  # against.
36249
36919
  class SecurityPolicyRuleNetworkMatcher
@@ -36714,7 +37384,7 @@ module Google
36714
37384
  # describes how clients should authenticate with this service's backends.
36715
37385
  # clientTlsPolicy only applies to a global BackendService with the
36716
37386
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED. If left blank,
36717
- # communications are not encrypted. Note: This field currently has no impact.
37387
+ # communications are not encrypted.
36718
37388
  # Corresponds to the JSON property `clientTlsPolicy`
36719
37389
  # @return [String]
36720
37390
  attr_accessor :client_tls_policy
@@ -36730,7 +37400,7 @@ module Google
36730
37400
  # provisions server identities. Only applies to a global BackendService with
36731
37401
  # loadBalancingScheme set to INTERNAL_SELF_MANAGED. Only applies when
36732
37402
  # BackendService has an attached clientTlsPolicy with clientCertificate (mTLS
36733
- # mode). Note: This field currently has no impact.
37403
+ # mode).
36734
37404
  # Corresponds to the JSON property `subjectAltNames`
36735
37405
  # @return [Array<String>]
36736
37406
  attr_accessor :subject_alt_names
@@ -37882,6 +38552,25 @@ module Google
37882
38552
  # @return [String]
37883
38553
  attr_accessor :source_disk_id
37884
38554
 
38555
+ # The source instant snapshot used to create this snapshot. You can provide this
38556
+ # as a partial or full URL to the resource. For example, the following are valid
38557
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
38558
+ # instantSnapshots/instantSnapshot - projects/project/zones/zone/
38559
+ # instantSnapshots/instantSnapshot - zones/zone/instantSnapshots/instantSnapshot
38560
+ # Corresponds to the JSON property `sourceInstantSnapshot`
38561
+ # @return [String]
38562
+ attr_accessor :source_instant_snapshot
38563
+
38564
+ # [Output Only] The unique ID of the instant snapshot used to create this
38565
+ # snapshot. This value identifies the exact instant snapshot that was used to
38566
+ # create this persistent disk. For example, if you created the persistent disk
38567
+ # from an instant snapshot that was later deleted and recreated under the same
38568
+ # name, the source instant snapshot ID would identify the exact instant snapshot
38569
+ # that was used.
38570
+ # Corresponds to the JSON property `sourceInstantSnapshotId`
38571
+ # @return [String]
38572
+ attr_accessor :source_instant_snapshot_id
38573
+
37885
38574
  # [Output Only] URL of the resource policy which created this scheduled snapshot.
37886
38575
  # Corresponds to the JSON property `sourceSnapshotSchedulePolicy`
37887
38576
  # @return [String]
@@ -37954,6 +38643,8 @@ module Google
37954
38643
  @source_disk = args[:source_disk] if args.key?(:source_disk)
37955
38644
  @source_disk_encryption_key = args[:source_disk_encryption_key] if args.key?(:source_disk_encryption_key)
37956
38645
  @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
38646
+ @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
38647
+ @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id)
37957
38648
  @source_snapshot_schedule_policy = args[:source_snapshot_schedule_policy] if args.key?(:source_snapshot_schedule_policy)
37958
38649
  @source_snapshot_schedule_policy_id = args[:source_snapshot_schedule_policy_id] if args.key?(:source_snapshot_schedule_policy_id)
37959
38650
  @status = args[:status] if args.key?(:status)