google-apis-compute_v1 0.89.0 → 0.90.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1701,8 +1701,8 @@ module Google
1701
1701
  attr_accessor :provisioned_iops
1702
1702
 
1703
1703
  # Indicates how much throughput to provision for the disk. This sets the number
1704
- # of throughput mb per second that the disk can handle. Values must be between 1
1705
- # and 7,124.
1704
+ # of throughput mb per second that the disk can handle. Values must greater than
1705
+ # or equal to 1.
1706
1706
  # Corresponds to the JSON property `provisionedThroughput`
1707
1707
  # @return [Fixnum]
1708
1708
  attr_accessor :provisioned_throughput
@@ -2838,6 +2838,16 @@ module Google
2838
2838
  # @return [Float]
2839
2839
  attr_accessor :max_utilization
2840
2840
 
2841
+ # This field indicates whether this backend should be fully utilized before
2842
+ # sending traffic to backends with default preference. The possible values are: -
2843
+ # PREFERRED: Backends with this preference level will be filled up to their
2844
+ # capacity limits first, based on RTT. - DEFAULT: If preferred backends don't
2845
+ # have enough capacity, backends in this layer would be used and traffic would
2846
+ # be assigned based on the load balancing algorithm you use. This is the default
2847
+ # Corresponds to the JSON property `preference`
2848
+ # @return [String]
2849
+ attr_accessor :preference
2850
+
2841
2851
  def initialize(**args)
2842
2852
  update!(**args)
2843
2853
  end
@@ -2856,6 +2866,7 @@ module Google
2856
2866
  @max_rate_per_endpoint = args[:max_rate_per_endpoint] if args.key?(:max_rate_per_endpoint)
2857
2867
  @max_rate_per_instance = args[:max_rate_per_instance] if args.key?(:max_rate_per_instance)
2858
2868
  @max_utilization = args[:max_utilization] if args.key?(:max_utilization)
2869
+ @preference = args[:preference] if args.key?(:preference)
2859
2870
  end
2860
2871
  end
2861
2872
 
@@ -3603,6 +3614,13 @@ module Google
3603
3614
  # @return [Array<String>]
3604
3615
  attr_accessor :service_bindings
3605
3616
 
3617
+ # URL to networkservices.ServiceLbPolicy resource. Can only be set if load
3618
+ # balancing scheme is EXTERNAL, EXTERNAL_MANAGED, INTERNAL_MANAGED or
3619
+ # INTERNAL_SELF_MANAGED and the scope is global.
3620
+ # Corresponds to the JSON property `serviceLbPolicy`
3621
+ # @return [String]
3622
+ attr_accessor :service_lb_policy
3623
+
3606
3624
  # Type of session affinity to use. The default is NONE. Only NONE and
3607
3625
  # HEADER_FIELD are supported when the backend service is referenced by a URL map
3608
3626
  # that is bound to target gRPC proxy that has validateForProxyless field set to
@@ -3679,6 +3697,7 @@ module Google
3679
3697
  @security_settings = args[:security_settings] if args.key?(:security_settings)
3680
3698
  @self_link = args[:self_link] if args.key?(:self_link)
3681
3699
  @service_bindings = args[:service_bindings] if args.key?(:service_bindings)
3700
+ @service_lb_policy = args[:service_lb_policy] if args.key?(:service_lb_policy)
3682
3701
  @session_affinity = args[:session_affinity] if args.key?(:session_affinity)
3683
3702
  @subsetting = args[:subsetting] if args.key?(:subsetting)
3684
3703
  @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
@@ -6434,8 +6453,8 @@ module Google
6434
6453
  attr_accessor :provisioned_iops
6435
6454
 
6436
6455
  # Indicates how much throughput to provision for the disk. This sets the number
6437
- # of throughput mb per second that the disk can handle. Values must be between 1
6438
- # and 7,124.
6456
+ # of throughput mb per second that the disk can handle. Values must be greater
6457
+ # than or equal to 1.
6439
6458
  # Corresponds to the JSON property `provisionedThroughput`
6440
6459
  # @return [Fixnum]
6441
6460
  attr_accessor :provisioned_throughput
@@ -6550,6 +6569,25 @@ module Google
6550
6569
  # @return [String]
6551
6570
  attr_accessor :source_image_id
6552
6571
 
6572
+ # The source instant snapshot used to create this disk. You can provide this as
6573
+ # a partial or full URL to the resource. For example, the following are valid
6574
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
6575
+ # instantSnapshots/instantSnapshot - projects/project/zones/zone/
6576
+ # instantSnapshots/instantSnapshot - zones/zone/instantSnapshots/instantSnapshot
6577
+ # Corresponds to the JSON property `sourceInstantSnapshot`
6578
+ # @return [String]
6579
+ attr_accessor :source_instant_snapshot
6580
+
6581
+ # [Output Only] The unique ID of the instant snapshot used to create this disk.
6582
+ # This value identifies the exact instant snapshot that was used to create this
6583
+ # persistent disk. For example, if you created the persistent disk from an
6584
+ # instant snapshot that was later deleted and recreated under the same name, the
6585
+ # source instant snapshot ID would identify the exact version of the instant
6586
+ # snapshot that was used.
6587
+ # Corresponds to the JSON property `sourceInstantSnapshotId`
6588
+ # @return [String]
6589
+ attr_accessor :source_instant_snapshot_id
6590
+
6553
6591
  # The source snapshot used to create this disk. You can provide this as a
6554
6592
  # partial or full URL to the resource. For example, the following are valid
6555
6593
  # values: - https://www.googleapis.com/compute/v1/projects/project /global/
@@ -6655,6 +6693,8 @@ module Google
6655
6693
  @source_image = args[:source_image] if args.key?(:source_image)
6656
6694
  @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key)
6657
6695
  @source_image_id = args[:source_image_id] if args.key?(:source_image_id)
6696
+ @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
6697
+ @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id)
6658
6698
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
6659
6699
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
6660
6700
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
@@ -8232,6 +8272,16 @@ module Google
8232
8272
  # @return [String]
8233
8273
  attr_accessor :ip_address
8234
8274
 
8275
+ # IPv6 address of the interface in the external VPN gateway. This IPv6 address
8276
+ # can be either from your on-premise gateway or another Cloud provider's VPN
8277
+ # gateway, it cannot be an IP address from Google Compute Engine. Must specify
8278
+ # an IPv6 address (not IPV4-mapped) using any format described in RFC 4291 (e.g.
8279
+ # 2001:db8:0:0:2d9:51:0:0). The output format is RFC 5952 format (e.g. 2001:db8::
8280
+ # 2d9:51:0:0).
8281
+ # Corresponds to the JSON property `ipv6Address`
8282
+ # @return [String]
8283
+ attr_accessor :ipv6_address
8284
+
8235
8285
  def initialize(**args)
8236
8286
  update!(**args)
8237
8287
  end
@@ -8240,6 +8290,7 @@ module Google
8240
8290
  def update!(**args)
8241
8291
  @id = args[:id] if args.key?(:id)
8242
8292
  @ip_address = args[:ip_address] if args.key?(:ip_address)
8293
+ @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
8243
8294
  end
8244
8295
  end
8245
8296
 
@@ -14930,6 +14981,15 @@ module Google
14930
14981
  class InstanceGroupManagerInstanceLifecyclePolicy
14931
14982
  include Google::Apis::Core::Hashable
14932
14983
 
14984
+ # The action that a MIG performs on a failed or an unhealthy VM. A VM is marked
14985
+ # as unhealthy when the application running on that VM fails a health check.
14986
+ # Valid values are - REPAIR (default): MIG automatically repairs a failed or an
14987
+ # unhealthy VM by recreating it. For more information, see About repairing VMs
14988
+ # in a MIG. - DO_NOTHING: MIG does not repair a failed or an unhealthy VM.
14989
+ # Corresponds to the JSON property `defaultActionOnFailure`
14990
+ # @return [String]
14991
+ attr_accessor :default_action_on_failure
14992
+
14933
14993
  # A bit indicating whether to forcefully apply the group's latest configuration
14934
14994
  # when repairing a VM. Valid options are: - NO (default): If configuration
14935
14995
  # updates are available, they are not forcefully applied during repair. Instead,
@@ -14945,6 +15005,7 @@ module Google
14945
15005
 
14946
15006
  # Update properties of this object
14947
15007
  def update!(**args)
15008
+ @default_action_on_failure = args[:default_action_on_failure] if args.key?(:default_action_on_failure)
14948
15009
  @force_update_on_repair = args[:force_update_on_repair] if args.key?(:force_update_on_repair)
14949
15010
  end
14950
15011
  end
@@ -17604,6 +17665,518 @@ module Google
17604
17665
  end
17605
17666
  end
17606
17667
 
17668
+ # Represents a InstantSnapshot resource. You can use instant snapshots to create
17669
+ # disk rollback points quickly..
17670
+ class InstantSnapshot
17671
+ include Google::Apis::Core::Hashable
17672
+
17673
+ # [Output Only] The architecture of the instant snapshot. Valid values are ARM64
17674
+ # or X86_64.
17675
+ # Corresponds to the JSON property `architecture`
17676
+ # @return [String]
17677
+ attr_accessor :architecture
17678
+
17679
+ # [Output Only] Creation timestamp in RFC3339 text format.
17680
+ # Corresponds to the JSON property `creationTimestamp`
17681
+ # @return [String]
17682
+ attr_accessor :creation_timestamp
17683
+
17684
+ # An optional description of this resource. Provide this property when you
17685
+ # create the resource.
17686
+ # Corresponds to the JSON property `description`
17687
+ # @return [String]
17688
+ attr_accessor :description
17689
+
17690
+ # [Output Only] Size of the source disk, specified in GB.
17691
+ # Corresponds to the JSON property `diskSizeGb`
17692
+ # @return [Fixnum]
17693
+ attr_accessor :disk_size_gb
17694
+
17695
+ # [Output Only] The unique identifier for the resource. This identifier is
17696
+ # defined by the server.
17697
+ # Corresponds to the JSON property `id`
17698
+ # @return [Fixnum]
17699
+ attr_accessor :id
17700
+
17701
+ # [Output Only] Type of the resource. Always compute#instantSnapshot for
17702
+ # InstantSnapshot resources.
17703
+ # Corresponds to the JSON property `kind`
17704
+ # @return [String]
17705
+ attr_accessor :kind
17706
+
17707
+ # A fingerprint for the labels being applied to this InstantSnapshot, which is
17708
+ # essentially a hash of the labels set used for optimistic locking. The
17709
+ # fingerprint is initially generated by Compute Engine and changes after every
17710
+ # request to modify or update labels. You must always provide an up-to-date
17711
+ # fingerprint hash in order to update or change labels, otherwise the request
17712
+ # will fail with error 412 conditionNotMet. To see the latest fingerprint, make
17713
+ # a get() request to retrieve a InstantSnapshot.
17714
+ # Corresponds to the JSON property `labelFingerprint`
17715
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
17716
+ # @return [String]
17717
+ attr_accessor :label_fingerprint
17718
+
17719
+ # Labels to apply to this InstantSnapshot. These can be later modified by the
17720
+ # setLabels method. Label values may be empty.
17721
+ # Corresponds to the JSON property `labels`
17722
+ # @return [Hash<String,String>]
17723
+ attr_accessor :labels
17724
+
17725
+ # Name of the resource; provided by the client when the resource is created. The
17726
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
17727
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
17728
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
17729
+ # and all following characters must be a dash, lowercase letter, or digit,
17730
+ # except the last character, which cannot be a dash.
17731
+ # Corresponds to the JSON property `name`
17732
+ # @return [String]
17733
+ attr_accessor :name
17734
+
17735
+ # [Output Only] URL of the region where the instant snapshot resides. You must
17736
+ # specify this field as part of the HTTP request URL. It is not settable as a
17737
+ # field in the request body.
17738
+ # Corresponds to the JSON property `region`
17739
+ # @return [String]
17740
+ attr_accessor :region
17741
+
17742
+ # [Output Only] Status information for the instant snapshot resource.
17743
+ # Corresponds to the JSON property `resourceStatus`
17744
+ # @return [Google::Apis::ComputeV1::InstantSnapshotResourceStatus]
17745
+ attr_accessor :resource_status
17746
+
17747
+ # Output only. Reserved for future use.
17748
+ # Corresponds to the JSON property `satisfiesPzi`
17749
+ # @return [Boolean]
17750
+ attr_accessor :satisfies_pzi
17751
+ alias_method :satisfies_pzi?, :satisfies_pzi
17752
+
17753
+ # [Output Only] Reserved for future use.
17754
+ # Corresponds to the JSON property `satisfiesPzs`
17755
+ # @return [Boolean]
17756
+ attr_accessor :satisfies_pzs
17757
+ alias_method :satisfies_pzs?, :satisfies_pzs
17758
+
17759
+ # [Output Only] Server-defined URL for the resource.
17760
+ # Corresponds to the JSON property `selfLink`
17761
+ # @return [String]
17762
+ attr_accessor :self_link
17763
+
17764
+ # [Output Only] Server-defined URL for this resource's resource id.
17765
+ # Corresponds to the JSON property `selfLinkWithId`
17766
+ # @return [String]
17767
+ attr_accessor :self_link_with_id
17768
+
17769
+ # URL of the source disk used to create this instant snapshot. Note that the
17770
+ # source disk must be in the same zone/region as the instant snapshot to be
17771
+ # created. This can be a full or valid partial URL. For example, the following
17772
+ # are valid values: - https://www.googleapis.com/compute/v1/projects/project/
17773
+ # zones/zone /disks/disk - https://www.googleapis.com/compute/v1/projects/
17774
+ # project/regions/region /disks/disk - projects/project/zones/zone/disks/disk -
17775
+ # projects/project/regions/region/disks/disk - zones/zone/disks/disk - regions/
17776
+ # region/disks/disk
17777
+ # Corresponds to the JSON property `sourceDisk`
17778
+ # @return [String]
17779
+ attr_accessor :source_disk
17780
+
17781
+ # [Output Only] The ID value of the disk used to create this InstantSnapshot.
17782
+ # This value may be used to determine whether the InstantSnapshot was taken from
17783
+ # the current or a previous instance of a given disk name.
17784
+ # Corresponds to the JSON property `sourceDiskId`
17785
+ # @return [String]
17786
+ attr_accessor :source_disk_id
17787
+
17788
+ # [Output Only] The status of the instantSnapshot. This can be CREATING,
17789
+ # DELETING, FAILED, or READY.
17790
+ # Corresponds to the JSON property `status`
17791
+ # @return [String]
17792
+ attr_accessor :status
17793
+
17794
+ # [Output Only] URL of the zone where the instant snapshot resides. You must
17795
+ # specify this field as part of the HTTP request URL. It is not settable as a
17796
+ # field in the request body.
17797
+ # Corresponds to the JSON property `zone`
17798
+ # @return [String]
17799
+ attr_accessor :zone
17800
+
17801
+ def initialize(**args)
17802
+ update!(**args)
17803
+ end
17804
+
17805
+ # Update properties of this object
17806
+ def update!(**args)
17807
+ @architecture = args[:architecture] if args.key?(:architecture)
17808
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
17809
+ @description = args[:description] if args.key?(:description)
17810
+ @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
17811
+ @id = args[:id] if args.key?(:id)
17812
+ @kind = args[:kind] if args.key?(:kind)
17813
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
17814
+ @labels = args[:labels] if args.key?(:labels)
17815
+ @name = args[:name] if args.key?(:name)
17816
+ @region = args[:region] if args.key?(:region)
17817
+ @resource_status = args[:resource_status] if args.key?(:resource_status)
17818
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
17819
+ @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
17820
+ @self_link = args[:self_link] if args.key?(:self_link)
17821
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
17822
+ @source_disk = args[:source_disk] if args.key?(:source_disk)
17823
+ @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
17824
+ @status = args[:status] if args.key?(:status)
17825
+ @zone = args[:zone] if args.key?(:zone)
17826
+ end
17827
+ end
17828
+
17829
+ #
17830
+ class InstantSnapshotAggregatedList
17831
+ include Google::Apis::Core::Hashable
17832
+
17833
+ # [Output Only] Unique identifier for the resource; defined by the server.
17834
+ # Corresponds to the JSON property `id`
17835
+ # @return [String]
17836
+ attr_accessor :id
17837
+
17838
+ # A list of InstantSnapshotsScopedList resources.
17839
+ # Corresponds to the JSON property `items`
17840
+ # @return [Hash<String,Google::Apis::ComputeV1::InstantSnapshotsScopedList>]
17841
+ attr_accessor :items
17842
+
17843
+ # [Output Only] Type of resource. Always compute#instantSnapshotAggregatedList
17844
+ # for aggregated lists of instantSnapshots.
17845
+ # Corresponds to the JSON property `kind`
17846
+ # @return [String]
17847
+ attr_accessor :kind
17848
+
17849
+ # [Output Only] This token allows you to get the next page of results for list
17850
+ # requests. If the number of results is larger than maxResults, use the
17851
+ # nextPageToken as a value for the query parameter pageToken in the next list
17852
+ # request. Subsequent list requests will have their own nextPageToken to
17853
+ # continue paging through the results.
17854
+ # Corresponds to the JSON property `nextPageToken`
17855
+ # @return [String]
17856
+ attr_accessor :next_page_token
17857
+
17858
+ # [Output Only] Server-defined URL for this resource.
17859
+ # Corresponds to the JSON property `selfLink`
17860
+ # @return [String]
17861
+ attr_accessor :self_link
17862
+
17863
+ # [Output Only] Unreachable resources.
17864
+ # Corresponds to the JSON property `unreachables`
17865
+ # @return [Array<String>]
17866
+ attr_accessor :unreachables
17867
+
17868
+ # [Output Only] Informational warning message.
17869
+ # Corresponds to the JSON property `warning`
17870
+ # @return [Google::Apis::ComputeV1::InstantSnapshotAggregatedList::Warning]
17871
+ attr_accessor :warning
17872
+
17873
+ def initialize(**args)
17874
+ update!(**args)
17875
+ end
17876
+
17877
+ # Update properties of this object
17878
+ def update!(**args)
17879
+ @id = args[:id] if args.key?(:id)
17880
+ @items = args[:items] if args.key?(:items)
17881
+ @kind = args[:kind] if args.key?(:kind)
17882
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
17883
+ @self_link = args[:self_link] if args.key?(:self_link)
17884
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
17885
+ @warning = args[:warning] if args.key?(:warning)
17886
+ end
17887
+
17888
+ # [Output Only] Informational warning message.
17889
+ class Warning
17890
+ include Google::Apis::Core::Hashable
17891
+
17892
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
17893
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
17894
+ # Corresponds to the JSON property `code`
17895
+ # @return [String]
17896
+ attr_accessor :code
17897
+
17898
+ # [Output Only] Metadata about this warning in key: value format. For example: "
17899
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
17900
+ # Corresponds to the JSON property `data`
17901
+ # @return [Array<Google::Apis::ComputeV1::InstantSnapshotAggregatedList::Warning::Datum>]
17902
+ attr_accessor :data
17903
+
17904
+ # [Output Only] A human-readable description of the warning code.
17905
+ # Corresponds to the JSON property `message`
17906
+ # @return [String]
17907
+ attr_accessor :message
17908
+
17909
+ def initialize(**args)
17910
+ update!(**args)
17911
+ end
17912
+
17913
+ # Update properties of this object
17914
+ def update!(**args)
17915
+ @code = args[:code] if args.key?(:code)
17916
+ @data = args[:data] if args.key?(:data)
17917
+ @message = args[:message] if args.key?(:message)
17918
+ end
17919
+
17920
+ #
17921
+ class Datum
17922
+ include Google::Apis::Core::Hashable
17923
+
17924
+ # [Output Only] A key that provides more detail on the warning being returned.
17925
+ # For example, for warnings where there are no results in a list request for a
17926
+ # particular zone, this key might be scope and the key value might be the zone
17927
+ # name. Other examples might be a key indicating a deprecated resource and a
17928
+ # suggested replacement, or a warning about invalid network settings (for
17929
+ # example, if an instance attempts to perform IP forwarding but is not enabled
17930
+ # for IP forwarding).
17931
+ # Corresponds to the JSON property `key`
17932
+ # @return [String]
17933
+ attr_accessor :key
17934
+
17935
+ # [Output Only] A warning data value corresponding to the key.
17936
+ # Corresponds to the JSON property `value`
17937
+ # @return [String]
17938
+ attr_accessor :value
17939
+
17940
+ def initialize(**args)
17941
+ update!(**args)
17942
+ end
17943
+
17944
+ # Update properties of this object
17945
+ def update!(**args)
17946
+ @key = args[:key] if args.key?(:key)
17947
+ @value = args[:value] if args.key?(:value)
17948
+ end
17949
+ end
17950
+ end
17951
+ end
17952
+
17953
+ # Contains a list of InstantSnapshot resources.
17954
+ class InstantSnapshotList
17955
+ include Google::Apis::Core::Hashable
17956
+
17957
+ # [Output Only] Unique identifier for the resource; defined by the server.
17958
+ # Corresponds to the JSON property `id`
17959
+ # @return [String]
17960
+ attr_accessor :id
17961
+
17962
+ # A list of InstantSnapshot resources.
17963
+ # Corresponds to the JSON property `items`
17964
+ # @return [Array<Google::Apis::ComputeV1::InstantSnapshot>]
17965
+ attr_accessor :items
17966
+
17967
+ # Type of resource.
17968
+ # Corresponds to the JSON property `kind`
17969
+ # @return [String]
17970
+ attr_accessor :kind
17971
+
17972
+ # [Output Only] This token allows you to get the next page of results for list
17973
+ # requests. If the number of results is larger than maxResults, use the
17974
+ # nextPageToken as a value for the query parameter pageToken in the next list
17975
+ # request. Subsequent list requests will have their own nextPageToken to
17976
+ # continue paging through the results.
17977
+ # Corresponds to the JSON property `nextPageToken`
17978
+ # @return [String]
17979
+ attr_accessor :next_page_token
17980
+
17981
+ # [Output Only] Server-defined URL for this resource.
17982
+ # Corresponds to the JSON property `selfLink`
17983
+ # @return [String]
17984
+ attr_accessor :self_link
17985
+
17986
+ # [Output Only] Informational warning message.
17987
+ # Corresponds to the JSON property `warning`
17988
+ # @return [Google::Apis::ComputeV1::InstantSnapshotList::Warning]
17989
+ attr_accessor :warning
17990
+
17991
+ def initialize(**args)
17992
+ update!(**args)
17993
+ end
17994
+
17995
+ # Update properties of this object
17996
+ def update!(**args)
17997
+ @id = args[:id] if args.key?(:id)
17998
+ @items = args[:items] if args.key?(:items)
17999
+ @kind = args[:kind] if args.key?(:kind)
18000
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
18001
+ @self_link = args[:self_link] if args.key?(:self_link)
18002
+ @warning = args[:warning] if args.key?(:warning)
18003
+ end
18004
+
18005
+ # [Output Only] Informational warning message.
18006
+ class Warning
18007
+ include Google::Apis::Core::Hashable
18008
+
18009
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
18010
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
18011
+ # Corresponds to the JSON property `code`
18012
+ # @return [String]
18013
+ attr_accessor :code
18014
+
18015
+ # [Output Only] Metadata about this warning in key: value format. For example: "
18016
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
18017
+ # Corresponds to the JSON property `data`
18018
+ # @return [Array<Google::Apis::ComputeV1::InstantSnapshotList::Warning::Datum>]
18019
+ attr_accessor :data
18020
+
18021
+ # [Output Only] A human-readable description of the warning code.
18022
+ # Corresponds to the JSON property `message`
18023
+ # @return [String]
18024
+ attr_accessor :message
18025
+
18026
+ def initialize(**args)
18027
+ update!(**args)
18028
+ end
18029
+
18030
+ # Update properties of this object
18031
+ def update!(**args)
18032
+ @code = args[:code] if args.key?(:code)
18033
+ @data = args[:data] if args.key?(:data)
18034
+ @message = args[:message] if args.key?(:message)
18035
+ end
18036
+
18037
+ #
18038
+ class Datum
18039
+ include Google::Apis::Core::Hashable
18040
+
18041
+ # [Output Only] A key that provides more detail on the warning being returned.
18042
+ # For example, for warnings where there are no results in a list request for a
18043
+ # particular zone, this key might be scope and the key value might be the zone
18044
+ # name. Other examples might be a key indicating a deprecated resource and a
18045
+ # suggested replacement, or a warning about invalid network settings (for
18046
+ # example, if an instance attempts to perform IP forwarding but is not enabled
18047
+ # for IP forwarding).
18048
+ # Corresponds to the JSON property `key`
18049
+ # @return [String]
18050
+ attr_accessor :key
18051
+
18052
+ # [Output Only] A warning data value corresponding to the key.
18053
+ # Corresponds to the JSON property `value`
18054
+ # @return [String]
18055
+ attr_accessor :value
18056
+
18057
+ def initialize(**args)
18058
+ update!(**args)
18059
+ end
18060
+
18061
+ # Update properties of this object
18062
+ def update!(**args)
18063
+ @key = args[:key] if args.key?(:key)
18064
+ @value = args[:value] if args.key?(:value)
18065
+ end
18066
+ end
18067
+ end
18068
+ end
18069
+
18070
+ #
18071
+ class InstantSnapshotResourceStatus
18072
+ include Google::Apis::Core::Hashable
18073
+
18074
+ # [Output Only] The storage size of this instant snapshot.
18075
+ # Corresponds to the JSON property `storageSizeBytes`
18076
+ # @return [Fixnum]
18077
+ attr_accessor :storage_size_bytes
18078
+
18079
+ def initialize(**args)
18080
+ update!(**args)
18081
+ end
18082
+
18083
+ # Update properties of this object
18084
+ def update!(**args)
18085
+ @storage_size_bytes = args[:storage_size_bytes] if args.key?(:storage_size_bytes)
18086
+ end
18087
+ end
18088
+
18089
+ #
18090
+ class InstantSnapshotsScopedList
18091
+ include Google::Apis::Core::Hashable
18092
+
18093
+ # [Output Only] A list of instantSnapshots contained in this scope.
18094
+ # Corresponds to the JSON property `instantSnapshots`
18095
+ # @return [Array<Google::Apis::ComputeV1::InstantSnapshot>]
18096
+ attr_accessor :instant_snapshots
18097
+
18098
+ # [Output Only] Informational warning which replaces the list of
18099
+ # instantSnapshots when the list is empty.
18100
+ # Corresponds to the JSON property `warning`
18101
+ # @return [Google::Apis::ComputeV1::InstantSnapshotsScopedList::Warning]
18102
+ attr_accessor :warning
18103
+
18104
+ def initialize(**args)
18105
+ update!(**args)
18106
+ end
18107
+
18108
+ # Update properties of this object
18109
+ def update!(**args)
18110
+ @instant_snapshots = args[:instant_snapshots] if args.key?(:instant_snapshots)
18111
+ @warning = args[:warning] if args.key?(:warning)
18112
+ end
18113
+
18114
+ # [Output Only] Informational warning which replaces the list of
18115
+ # instantSnapshots when the list is empty.
18116
+ class Warning
18117
+ include Google::Apis::Core::Hashable
18118
+
18119
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
18120
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
18121
+ # Corresponds to the JSON property `code`
18122
+ # @return [String]
18123
+ attr_accessor :code
18124
+
18125
+ # [Output Only] Metadata about this warning in key: value format. For example: "
18126
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
18127
+ # Corresponds to the JSON property `data`
18128
+ # @return [Array<Google::Apis::ComputeV1::InstantSnapshotsScopedList::Warning::Datum>]
18129
+ attr_accessor :data
18130
+
18131
+ # [Output Only] A human-readable description of the warning code.
18132
+ # Corresponds to the JSON property `message`
18133
+ # @return [String]
18134
+ attr_accessor :message
18135
+
18136
+ def initialize(**args)
18137
+ update!(**args)
18138
+ end
18139
+
18140
+ # Update properties of this object
18141
+ def update!(**args)
18142
+ @code = args[:code] if args.key?(:code)
18143
+ @data = args[:data] if args.key?(:data)
18144
+ @message = args[:message] if args.key?(:message)
18145
+ end
18146
+
18147
+ #
18148
+ class Datum
18149
+ include Google::Apis::Core::Hashable
18150
+
18151
+ # [Output Only] A key that provides more detail on the warning being returned.
18152
+ # For example, for warnings where there are no results in a list request for a
18153
+ # particular zone, this key might be scope and the key value might be the zone
18154
+ # name. Other examples might be a key indicating a deprecated resource and a
18155
+ # suggested replacement, or a warning about invalid network settings (for
18156
+ # example, if an instance attempts to perform IP forwarding but is not enabled
18157
+ # for IP forwarding).
18158
+ # Corresponds to the JSON property `key`
18159
+ # @return [String]
18160
+ attr_accessor :key
18161
+
18162
+ # [Output Only] A warning data value corresponding to the key.
18163
+ # Corresponds to the JSON property `value`
18164
+ # @return [String]
18165
+ attr_accessor :value
18166
+
18167
+ def initialize(**args)
18168
+ update!(**args)
18169
+ end
18170
+
18171
+ # Update properties of this object
18172
+ def update!(**args)
18173
+ @key = args[:key] if args.key?(:key)
18174
+ @value = args[:value] if args.key?(:value)
18175
+ end
18176
+ end
18177
+ end
18178
+ end
18179
+
17607
18180
  # HttpRouteRuleMatch criteria for field values that must stay within the
17608
18181
  # specified integer range.
17609
18182
  class Int64RangeMatch
@@ -28313,6 +28886,13 @@ module Google
28313
28886
  class Project
28314
28887
  include Google::Apis::Core::Hashable
28315
28888
 
28889
+ # [Output Only] The Cloud Armor tier for this project. It can be one of the
28890
+ # following values: CA_STANDARD, CA_ENTERPRISE_PAYGO. If this field is not
28891
+ # specified, it is assumed to be CA_STANDARD.
28892
+ # Corresponds to the JSON property `cloudArmorTier`
28893
+ # @return [String]
28894
+ attr_accessor :cloud_armor_tier
28895
+
28316
28896
  # A metadata key/value entry.
28317
28897
  # Corresponds to the JSON property `commonInstanceMetadata`
28318
28898
  # @return [Google::Apis::ComputeV1::Metadata]
@@ -28397,6 +28977,7 @@ module Google
28397
28977
 
28398
28978
  # Update properties of this object
28399
28979
  def update!(**args)
28980
+ @cloud_armor_tier = args[:cloud_armor_tier] if args.key?(:cloud_armor_tier)
28400
28981
  @common_instance_metadata = args[:common_instance_metadata] if args.key?(:common_instance_metadata)
28401
28982
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
28402
28983
  @default_network_tier = args[:default_network_tier] if args.key?(:default_network_tier)
@@ -28510,6 +29091,25 @@ module Google
28510
29091
  end
28511
29092
  end
28512
29093
 
29094
+ #
29095
+ class ProjectsSetCloudArmorTierRequest
29096
+ include Google::Apis::Core::Hashable
29097
+
29098
+ # Managed protection tier to be set.
29099
+ # Corresponds to the JSON property `cloudArmorTier`
29100
+ # @return [String]
29101
+ attr_accessor :cloud_armor_tier
29102
+
29103
+ def initialize(**args)
29104
+ update!(**args)
29105
+ end
29106
+
29107
+ # Update properties of this object
29108
+ def update!(**args)
29109
+ @cloud_armor_tier = args[:cloud_armor_tier] if args.key?(:cloud_armor_tier)
29110
+ end
29111
+ end
29112
+
28513
29113
  #
28514
29114
  class ProjectsSetDefaultNetworkTierRequest
28515
29115
  include Google::Apis::Core::Hashable
@@ -37647,6 +38247,30 @@ module Google
37647
38247
  # @return [String]
37648
38248
  attr_accessor :source_disk_id
37649
38249
 
38250
+ # The source instant snapshot used to create this snapshot. You can provide this
38251
+ # as a partial or full URL to the resource. For example, the following are valid
38252
+ # values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
38253
+ # instantSnapshots/instantSnapshot - projects/project/zones/zone/
38254
+ # instantSnapshots/instantSnapshot - zones/zone/instantSnapshots/instantSnapshot
38255
+ # Corresponds to the JSON property `sourceInstantSnapshot`
38256
+ # @return [String]
38257
+ attr_accessor :source_instant_snapshot
38258
+
38259
+ # Customer provided encryption key when creating Snapshot from Instant Snapshot.
38260
+ # Corresponds to the JSON property `sourceInstantSnapshotEncryptionKey`
38261
+ # @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
38262
+ attr_accessor :source_instant_snapshot_encryption_key
38263
+
38264
+ # [Output Only] The unique ID of the instant snapshot used to create this
38265
+ # snapshot. This value identifies the exact instant snapshot that was used to
38266
+ # create this persistent disk. For example, if you created the persistent disk
38267
+ # from an instant snapshot that was later deleted and recreated under the same
38268
+ # name, the source instant snapshot ID would identify the exact instant snapshot
38269
+ # that was used.
38270
+ # Corresponds to the JSON property `sourceInstantSnapshotId`
38271
+ # @return [String]
38272
+ attr_accessor :source_instant_snapshot_id
38273
+
37650
38274
  # [Output Only] URL of the resource policy which created this scheduled snapshot.
37651
38275
  # Corresponds to the JSON property `sourceSnapshotSchedulePolicy`
37652
38276
  # @return [String]
@@ -37716,6 +38340,9 @@ module Google
37716
38340
  @source_disk_encryption_key = args[:source_disk_encryption_key] if args.key?(:source_disk_encryption_key)
37717
38341
  @source_disk_for_recovery_checkpoint = args[:source_disk_for_recovery_checkpoint] if args.key?(:source_disk_for_recovery_checkpoint)
37718
38342
  @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
38343
+ @source_instant_snapshot = args[:source_instant_snapshot] if args.key?(:source_instant_snapshot)
38344
+ @source_instant_snapshot_encryption_key = args[:source_instant_snapshot_encryption_key] if args.key?(:source_instant_snapshot_encryption_key)
38345
+ @source_instant_snapshot_id = args[:source_instant_snapshot_id] if args.key?(:source_instant_snapshot_id)
37719
38346
  @source_snapshot_schedule_policy = args[:source_snapshot_schedule_policy] if args.key?(:source_snapshot_schedule_policy)
37720
38347
  @source_snapshot_schedule_policy_id = args[:source_snapshot_schedule_policy_id] if args.key?(:source_snapshot_schedule_policy_id)
37721
38348
  @status = args[:status] if args.key?(:status)
@@ -45038,6 +45665,12 @@ module Google
45038
45665
  # @return [String]
45039
45666
  attr_accessor :description
45040
45667
 
45668
+ # The IP family of the gateway IPs for the HA-VPN gateway interfaces. If not
45669
+ # specified, IPV4 will be used.
45670
+ # Corresponds to the JSON property `gatewayIpVersion`
45671
+ # @return [String]
45672
+ attr_accessor :gateway_ip_version
45673
+
45041
45674
  # [Output Only] The unique identifier for the resource. This identifier is
45042
45675
  # defined by the server.
45043
45676
  # Corresponds to the JSON property `id`
@@ -45114,6 +45747,7 @@ module Google
45114
45747
  def update!(**args)
45115
45748
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
45116
45749
  @description = args[:description] if args.key?(:description)
45750
+ @gateway_ip_version = args[:gateway_ip_version] if args.key?(:gateway_ip_version)
45117
45751
  @id = args[:id] if args.key?(:id)
45118
45752
  @kind = args[:kind] if args.key?(:kind)
45119
45753
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
@@ -45522,6 +46156,13 @@ module Google
45522
46156
  # @return [String]
45523
46157
  attr_accessor :ip_address
45524
46158
 
46159
+ # [Output Only] IPv6 address for this VPN interface associated with the VPN
46160
+ # gateway. The IPv6 address must be a regional external IPv6 address. The format
46161
+ # is RFC 5952 format (e.g. 2001:db8::2d9:51:0:0).
46162
+ # Corresponds to the JSON property `ipv6Address`
46163
+ # @return [String]
46164
+ attr_accessor :ipv6_address
46165
+
45525
46166
  def initialize(**args)
45526
46167
  update!(**args)
45527
46168
  end
@@ -45531,6 +46172,7 @@ module Google
45531
46172
  @id = args[:id] if args.key?(:id)
45532
46173
  @interconnect_attachment = args[:interconnect_attachment] if args.key?(:interconnect_attachment)
45533
46174
  @ip_address = args[:ip_address] if args.key?(:ip_address)
46175
+ @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
45534
46176
  end
45535
46177
  end
45536
46178