google-apis-compute_v1 0.20.0 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +18 -0
- data/OVERVIEW.md +1 -1
- data/lib/google/apis/compute_v1/classes.rb +1217 -175
- data/lib/google/apis/compute_v1/gem_version.rb +3 -3
- data/lib/google/apis/compute_v1/representations.rb +320 -0
- data/lib/google/apis/compute_v1/service.rb +580 -64
- metadata +4 -4
@@ -464,15 +464,15 @@ module Google
|
|
464
464
|
class AccessConfig
|
465
465
|
include Google::Apis::Core::Hashable
|
466
466
|
|
467
|
-
#
|
468
|
-
#
|
467
|
+
# The first IPv6 address of the external IPv6 range associated with this
|
468
|
+
# instance, prefix length is stored in externalIpv6PrefixLength in
|
469
469
|
# ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork
|
470
470
|
# associated with the instance will be allocated dynamically.
|
471
471
|
# Corresponds to the JSON property `externalIpv6`
|
472
472
|
# @return [String]
|
473
473
|
attr_accessor :external_ipv6
|
474
474
|
|
475
|
-
#
|
475
|
+
# The prefix length of the external IPv6 range.
|
476
476
|
# Corresponds to the JSON property `externalIpv6PrefixLength`
|
477
477
|
# @return [Fixnum]
|
478
478
|
attr_accessor :external_ipv6_prefix_length
|
@@ -633,14 +633,14 @@ module Google
|
|
633
633
|
# regional internal IP address in a subnet of a VPC network) - VPC_PEERING for
|
634
634
|
# global internal IP addresses used for private services access allocated ranges.
|
635
635
|
# - NAT_AUTO for the regional external IP addresses used by Cloud NAT when
|
636
|
-
# allocating addresses using
|
637
|
-
#
|
638
|
-
#
|
639
|
-
#
|
640
|
-
# an internal IP address that is
|
641
|
-
#
|
642
|
-
#
|
643
|
-
# purpose.
|
636
|
+
# allocating addresses using automatic NAT IP address allocation. -
|
637
|
+
# IPSEC_INTERCONNECT for addresses created from a private IP range that are
|
638
|
+
# reserved for a VLAN attachment in an *IPsec-encrypted Cloud Interconnect*
|
639
|
+
# configuration. These addresses are regional resources. Not currently available
|
640
|
+
# publicly. - `SHARED_LOADBALANCER_VIP` for an internal IP address that is
|
641
|
+
# assigned to multiple internal forwarding rules. - `PRIVATE_SERVICE_CONNECT`
|
642
|
+
# for a private network address that is used to configure Private Service
|
643
|
+
# Connect. Only global internal addresses can use this purpose.
|
644
644
|
# Corresponds to the JSON property `purpose`
|
645
645
|
# @return [String]
|
646
646
|
attr_accessor :purpose
|
@@ -1051,6 +1051,12 @@ module Google
|
|
1051
1051
|
attr_accessor :enable_nested_virtualization
|
1052
1052
|
alias_method :enable_nested_virtualization?, :enable_nested_virtualization
|
1053
1053
|
|
1054
|
+
# Whether to enable UEFI networking for instance creation.
|
1055
|
+
# Corresponds to the JSON property `enableUefiNetworking`
|
1056
|
+
# @return [Boolean]
|
1057
|
+
attr_accessor :enable_uefi_networking
|
1058
|
+
alias_method :enable_uefi_networking?, :enable_uefi_networking
|
1059
|
+
|
1054
1060
|
# The number of threads per physical core. To disable simultaneous
|
1055
1061
|
# multithreading (SMT) set this to 1. If unset, the maximum number of threads
|
1056
1062
|
# supported per core by the underlying processor is assumed.
|
@@ -1065,6 +1071,7 @@ module Google
|
|
1065
1071
|
# Update properties of this object
|
1066
1072
|
def update!(**args)
|
1067
1073
|
@enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization)
|
1074
|
+
@enable_uefi_networking = args[:enable_uefi_networking] if args.key?(:enable_uefi_networking)
|
1068
1075
|
@threads_per_core = args[:threads_per_core] if args.key?(:threads_per_core)
|
1069
1076
|
end
|
1070
1077
|
end
|
@@ -1315,7 +1322,8 @@ module Google
|
|
1315
1322
|
# initializeParams.sourceSnapshot or disks.source is required except for local
|
1316
1323
|
# SSD. If desired, you can also attach existing non-root persistent disks using
|
1317
1324
|
# this property. This field is only applicable for persistent disks. Note that
|
1318
|
-
# for InstanceTemplate, specify the disk name,
|
1325
|
+
# for InstanceTemplate, specify the disk name for zonal disk, and the URL for
|
1326
|
+
# regional disk.
|
1319
1327
|
# Corresponds to the JSON property `source`
|
1320
1328
|
# @return [String]
|
1321
1329
|
attr_accessor :source
|
@@ -1398,6 +1406,11 @@ module Google
|
|
1398
1406
|
# @return [Hash<String,String>]
|
1399
1407
|
attr_accessor :labels
|
1400
1408
|
|
1409
|
+
# A list of publicly visible licenses. Reserved for Google's use.
|
1410
|
+
# Corresponds to the JSON property `licenses`
|
1411
|
+
# @return [Array<String>]
|
1412
|
+
attr_accessor :licenses
|
1413
|
+
|
1401
1414
|
# Specifies which action to take on instance update with this disk. Default is
|
1402
1415
|
# to use the existing disk.
|
1403
1416
|
# Corresponds to the JSON property `onUpdateAction`
|
@@ -1470,6 +1483,7 @@ module Google
|
|
1470
1483
|
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
1471
1484
|
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
1472
1485
|
@labels = args[:labels] if args.key?(:labels)
|
1486
|
+
@licenses = args[:licenses] if args.key?(:licenses)
|
1473
1487
|
@on_update_action = args[:on_update_action] if args.key?(:on_update_action)
|
1474
1488
|
@provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
|
1475
1489
|
@resource_policies = args[:resource_policies] if args.key?(:resource_policies)
|
@@ -2633,6 +2647,12 @@ module Google
|
|
2633
2647
|
# @return [Array<Google::Apis::ComputeV1::BackendBucketCdnPolicyBypassCacheOnRequestHeader>]
|
2634
2648
|
attr_accessor :bypass_cache_on_request_headers
|
2635
2649
|
|
2650
|
+
# Message containing what to include in the cache key for a request for Cloud
|
2651
|
+
# CDN.
|
2652
|
+
# Corresponds to the JSON property `cacheKeyPolicy`
|
2653
|
+
# @return [Google::Apis::ComputeV1::BackendBucketCdnPolicyCacheKeyPolicy]
|
2654
|
+
attr_accessor :cache_key_policy
|
2655
|
+
|
2636
2656
|
# Specifies the cache setting for all responses from this backend. The possible
|
2637
2657
|
# values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching
|
2638
2658
|
# headers to cache content. Responses without these headers will not be cached
|
@@ -2756,6 +2776,7 @@ module Google
|
|
2756
2776
|
# Update properties of this object
|
2757
2777
|
def update!(**args)
|
2758
2778
|
@bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
|
2779
|
+
@cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy)
|
2759
2780
|
@cache_mode = args[:cache_mode] if args.key?(:cache_mode)
|
2760
2781
|
@client_ttl = args[:client_ttl] if args.key?(:client_ttl)
|
2761
2782
|
@default_ttl = args[:default_ttl] if args.key?(:default_ttl)
|
@@ -2791,6 +2812,34 @@ module Google
|
|
2791
2812
|
end
|
2792
2813
|
end
|
2793
2814
|
|
2815
|
+
# Message containing what to include in the cache key for a request for Cloud
|
2816
|
+
# CDN.
|
2817
|
+
class BackendBucketCdnPolicyCacheKeyPolicy
|
2818
|
+
include Google::Apis::Core::Hashable
|
2819
|
+
|
2820
|
+
# Allows HTTP request headers (by name) to be used in the cache key.
|
2821
|
+
# Corresponds to the JSON property `includeHttpHeaders`
|
2822
|
+
# @return [Array<String>]
|
2823
|
+
attr_accessor :include_http_headers
|
2824
|
+
|
2825
|
+
# Names of query string parameters to include in cache keys. All other
|
2826
|
+
# parameters will be excluded. '&' and '=' will be percent encoded and not
|
2827
|
+
# treated as delimiters.
|
2828
|
+
# Corresponds to the JSON property `queryStringWhitelist`
|
2829
|
+
# @return [Array<String>]
|
2830
|
+
attr_accessor :query_string_whitelist
|
2831
|
+
|
2832
|
+
def initialize(**args)
|
2833
|
+
update!(**args)
|
2834
|
+
end
|
2835
|
+
|
2836
|
+
# Update properties of this object
|
2837
|
+
def update!(**args)
|
2838
|
+
@include_http_headers = args[:include_http_headers] if args.key?(:include_http_headers)
|
2839
|
+
@query_string_whitelist = args[:query_string_whitelist] if args.key?(:query_string_whitelist)
|
2840
|
+
end
|
2841
|
+
end
|
2842
|
+
|
2794
2843
|
# Specify CDN TTLs for response error codes.
|
2795
2844
|
class BackendBucketCdnPolicyNegativeCachingPolicy
|
2796
2845
|
include Google::Apis::Core::Hashable
|
@@ -3032,14 +3081,14 @@ module Google
|
|
3032
3081
|
|
3033
3082
|
# For load balancers that have configurable failover: [Internal TCP/UDP Load
|
3034
3083
|
# Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
|
3035
|
-
# overview) and [external TCP/UDP Load Balancing](/
|
3036
|
-
# overview). On failover or failback,
|
3037
|
-
# draining will be honored. Google Cloud
|
3038
|
-
# of 10 minutes. A setting of true
|
3039
|
-
# active pool during failover and
|
3040
|
-
# setting of false allows existing TCP
|
3041
|
-
# longer in the active pool, for up to
|
3042
|
-
# timeout (10 minutes).
|
3084
|
+
# overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
|
3085
|
+
# balancing/docs/network/networklb-failover-overview). On failover or failback,
|
3086
|
+
# this field indicates whether connection draining will be honored. Google Cloud
|
3087
|
+
# has a fixed connection draining timeout of 10 minutes. A setting of true
|
3088
|
+
# terminates existing TCP connections to the active pool during failover and
|
3089
|
+
# failback, immediately draining traffic. A setting of false allows existing TCP
|
3090
|
+
# connections to persist, even on VMs no longer in the active pool, for up to
|
3091
|
+
# the duration of the connection draining timeout (10 minutes).
|
3043
3092
|
# Corresponds to the JSON property `failoverPolicy`
|
3044
3093
|
# @return [Google::Apis::ComputeV1::BackendServiceFailoverPolicy]
|
3045
3094
|
attr_accessor :failover_policy
|
@@ -3663,14 +3712,14 @@ module Google
|
|
3663
3712
|
|
3664
3713
|
# For load balancers that have configurable failover: [Internal TCP/UDP Load
|
3665
3714
|
# Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
|
3666
|
-
# overview) and [external TCP/UDP Load Balancing](/
|
3667
|
-
# overview). On failover or failback,
|
3668
|
-
# draining will be honored. Google Cloud
|
3669
|
-
# of 10 minutes. A setting of true
|
3670
|
-
# active pool during failover and
|
3671
|
-
# setting of false allows existing TCP
|
3672
|
-
# longer in the active pool, for up to
|
3673
|
-
# timeout (10 minutes).
|
3715
|
+
# overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
|
3716
|
+
# balancing/docs/network/networklb-failover-overview). On failover or failback,
|
3717
|
+
# this field indicates whether connection draining will be honored. Google Cloud
|
3718
|
+
# has a fixed connection draining timeout of 10 minutes. A setting of true
|
3719
|
+
# terminates existing TCP connections to the active pool during failover and
|
3720
|
+
# failback, immediately draining traffic. A setting of false allows existing TCP
|
3721
|
+
# connections to persist, even on VMs no longer in the active pool, for up to
|
3722
|
+
# the duration of the connection draining timeout (10 minutes).
|
3674
3723
|
class BackendServiceFailoverPolicy
|
3675
3724
|
include Google::Apis::Core::Hashable
|
3676
3725
|
|
@@ -3685,8 +3734,9 @@ module Google
|
|
3685
3734
|
# distributed among all primary VMs when all primary and all backup backend VMs
|
3686
3735
|
# are unhealthy. For load balancers that have configurable failover: [Internal
|
3687
3736
|
# TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/
|
3688
|
-
# failover-overview) and [external TCP/UDP Load Balancing](
|
3689
|
-
# failover-overview). The default is
|
3737
|
+
# failover-overview) and [external TCP/UDP Load Balancing](https://cloud.google.
|
3738
|
+
# com/load-balancing/docs/network/networklb-failover-overview). The default is
|
3739
|
+
# false.
|
3690
3740
|
# Corresponds to the JSON property `dropTrafficIfUnhealthy`
|
3691
3741
|
# @return [Boolean]
|
3692
3742
|
attr_accessor :drop_traffic_if_unhealthy
|
@@ -3698,7 +3748,8 @@ module Google
|
|
3698
3748
|
# the total number of healthy primary VMs is less than this ratio. For load
|
3699
3749
|
# balancers that have configurable failover: [Internal TCP/UDP Load Balancing](
|
3700
3750
|
# https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [
|
3701
|
-
# external TCP/UDP Load Balancing](/
|
3751
|
+
# external TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/
|
3752
|
+
# network/networklb-failover-overview).
|
3702
3753
|
# Corresponds to the JSON property `failoverRatio`
|
3703
3754
|
# @return [Float]
|
3704
3755
|
attr_accessor :failover_ratio
|
@@ -4512,6 +4563,17 @@ module Google
|
|
4512
4563
|
attr_accessor :include_host
|
4513
4564
|
alias_method :include_host?, :include_host
|
4514
4565
|
|
4566
|
+
# Allows HTTP request headers (by name) to be used in the cache key.
|
4567
|
+
# Corresponds to the JSON property `includeHttpHeaders`
|
4568
|
+
# @return [Array<String>]
|
4569
|
+
attr_accessor :include_http_headers
|
4570
|
+
|
4571
|
+
# Allows HTTP cookies (by name) to be used in the cache key. The name=value pair
|
4572
|
+
# will be used in the cache key Cloud CDN generates.
|
4573
|
+
# Corresponds to the JSON property `includeNamedCookies`
|
4574
|
+
# @return [Array<String>]
|
4575
|
+
attr_accessor :include_named_cookies
|
4576
|
+
|
4515
4577
|
# If true, http and https requests will be cached separately.
|
4516
4578
|
# Corresponds to the JSON property `includeProtocol`
|
4517
4579
|
# @return [Boolean]
|
@@ -4550,6 +4612,8 @@ module Google
|
|
4550
4612
|
# Update properties of this object
|
4551
4613
|
def update!(**args)
|
4552
4614
|
@include_host = args[:include_host] if args.key?(:include_host)
|
4615
|
+
@include_http_headers = args[:include_http_headers] if args.key?(:include_http_headers)
|
4616
|
+
@include_named_cookies = args[:include_named_cookies] if args.key?(:include_named_cookies)
|
4553
4617
|
@include_protocol = args[:include_protocol] if args.key?(:include_protocol)
|
4554
4618
|
@include_query_string = args[:include_query_string] if args.key?(:include_query_string)
|
4555
4619
|
@query_string_blacklist = args[:query_string_blacklist] if args.key?(:query_string_blacklist)
|
@@ -4614,6 +4678,16 @@ module Google
|
|
4614
4678
|
class Commitment
|
4615
4679
|
include Google::Apis::Core::Hashable
|
4616
4680
|
|
4681
|
+
# Specifies whether to enable automatic renewal for the commitment. The default
|
4682
|
+
# value is false if not specified. The field can be updated until the day of the
|
4683
|
+
# commitment expiration at 12:00am PST. If the field is set to true, the
|
4684
|
+
# commitment will be automatically renewed for either one or three years
|
4685
|
+
# according to the terms of the existing commitment.
|
4686
|
+
# Corresponds to the JSON property `autoRenew`
|
4687
|
+
# @return [Boolean]
|
4688
|
+
attr_accessor :auto_renew
|
4689
|
+
alias_method :auto_renew?, :auto_renew
|
4690
|
+
|
4617
4691
|
# The category of the commitment. Category MACHINE specifies commitments
|
4618
4692
|
# composed of machine resources such as VCPU or MEMORY, listed in resources.
|
4619
4693
|
# Category LICENSE specifies commitments composed of software licenses, listed
|
@@ -4724,6 +4798,7 @@ module Google
|
|
4724
4798
|
|
4725
4799
|
# Update properties of this object
|
4726
4800
|
def update!(**args)
|
4801
|
+
@auto_renew = args[:auto_renew] if args.key?(:auto_renew)
|
4727
4802
|
@category = args[:category] if args.key?(:category)
|
4728
4803
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
4729
4804
|
@description = args[:description] if args.key?(:description)
|
@@ -8418,8 +8493,7 @@ module Google
|
|
8418
8493
|
attr_accessor :self_link
|
8419
8494
|
|
8420
8495
|
# Service Directory resources to register this forwarding rule with. Currently,
|
8421
|
-
# only supports a single Service Directory resource.
|
8422
|
-
# internal load balancing.
|
8496
|
+
# only supports a single Service Directory resource.
|
8423
8497
|
# Corresponds to the JSON property `serviceDirectoryRegistrations`
|
8424
8498
|
# @return [Array<Google::Apis::ComputeV1::ForwardingRuleServiceDirectoryRegistration>]
|
8425
8499
|
attr_accessor :service_directory_registrations
|
@@ -9571,8 +9645,8 @@ module Google
|
|
9571
9645
|
attr_accessor :timeout_sec
|
9572
9646
|
|
9573
9647
|
# Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2.
|
9574
|
-
#
|
9575
|
-
#
|
9648
|
+
# Exactly one of the protocol-specific health check field must be specified,
|
9649
|
+
# which must match type field.
|
9576
9650
|
# Corresponds to the JSON property `type`
|
9577
9651
|
# @return [String]
|
9578
9652
|
attr_accessor :type
|
@@ -12253,6 +12327,17 @@ module Google
|
|
12253
12327
|
# @return [Google::Apis::ComputeV1::ShieldedInstanceIntegrityPolicy]
|
12254
12328
|
attr_accessor :shielded_instance_integrity_policy
|
12255
12329
|
|
12330
|
+
# Source machine image
|
12331
|
+
# Corresponds to the JSON property `sourceMachineImage`
|
12332
|
+
# @return [String]
|
12333
|
+
attr_accessor :source_machine_image
|
12334
|
+
|
12335
|
+
# Source machine image encryption key when creating an instance from a machine
|
12336
|
+
# image.
|
12337
|
+
# Corresponds to the JSON property `sourceMachineImageEncryptionKey`
|
12338
|
+
# @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
|
12339
|
+
attr_accessor :source_machine_image_encryption_key
|
12340
|
+
|
12256
12341
|
# [Output Only] Whether a VM has been restricted for start because Compute
|
12257
12342
|
# Engine has detected suspicious activity.
|
12258
12343
|
# Corresponds to the JSON property `startRestricted`
|
@@ -12325,6 +12410,8 @@ module Google
|
|
12325
12410
|
@service_accounts = args[:service_accounts] if args.key?(:service_accounts)
|
12326
12411
|
@shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
|
12327
12412
|
@shielded_instance_integrity_policy = args[:shielded_instance_integrity_policy] if args.key?(:shielded_instance_integrity_policy)
|
12413
|
+
@source_machine_image = args[:source_machine_image] if args.key?(:source_machine_image)
|
12414
|
+
@source_machine_image_encryption_key = args[:source_machine_image_encryption_key] if args.key?(:source_machine_image_encryption_key)
|
12328
12415
|
@start_restricted = args[:start_restricted] if args.key?(:start_restricted)
|
12329
12416
|
@status = args[:status] if args.key?(:status)
|
12330
12417
|
@status_message = args[:status_message] if args.key?(:status_message)
|
@@ -13059,6 +13146,30 @@ module Google
|
|
13059
13146
|
# @return [Fixnum]
|
13060
13147
|
attr_accessor :restarting
|
13061
13148
|
|
13149
|
+
# [Output Only] The number of instances in the managed instance group that are
|
13150
|
+
# scheduled to be resumed or are currently being resumed.
|
13151
|
+
# Corresponds to the JSON property `resuming`
|
13152
|
+
# @return [Fixnum]
|
13153
|
+
attr_accessor :resuming
|
13154
|
+
|
13155
|
+
# [Output Only] The number of instances in the managed instance group that are
|
13156
|
+
# scheduled to be started or are currently being started.
|
13157
|
+
# Corresponds to the JSON property `starting`
|
13158
|
+
# @return [Fixnum]
|
13159
|
+
attr_accessor :starting
|
13160
|
+
|
13161
|
+
# [Output Only] The number of instances in the managed instance group that are
|
13162
|
+
# scheduled to be stopped or are currently being stopped.
|
13163
|
+
# Corresponds to the JSON property `stopping`
|
13164
|
+
# @return [Fixnum]
|
13165
|
+
attr_accessor :stopping
|
13166
|
+
|
13167
|
+
# [Output Only] The number of instances in the managed instance group that are
|
13168
|
+
# scheduled to be suspended or are currently being suspended.
|
13169
|
+
# Corresponds to the JSON property `suspending`
|
13170
|
+
# @return [Fixnum]
|
13171
|
+
attr_accessor :suspending
|
13172
|
+
|
13062
13173
|
# [Output Only] The number of instances in the managed instance group that are
|
13063
13174
|
# being verified. See the managedInstances[].currentAction property in the
|
13064
13175
|
# listManagedInstances method documentation.
|
@@ -13080,6 +13191,10 @@ module Google
|
|
13080
13191
|
@recreating = args[:recreating] if args.key?(:recreating)
|
13081
13192
|
@refreshing = args[:refreshing] if args.key?(:refreshing)
|
13082
13193
|
@restarting = args[:restarting] if args.key?(:restarting)
|
13194
|
+
@resuming = args[:resuming] if args.key?(:resuming)
|
13195
|
+
@starting = args[:starting] if args.key?(:starting)
|
13196
|
+
@stopping = args[:stopping] if args.key?(:stopping)
|
13197
|
+
@suspending = args[:suspending] if args.key?(:suspending)
|
13083
13198
|
@verifying = args[:verifying] if args.key?(:verifying)
|
13084
13199
|
end
|
13085
13200
|
end
|
@@ -14852,7 +14967,15 @@ module Google
|
|
14852
14967
|
# @return [Google::Apis::ComputeV1::ReservationAffinity]
|
14853
14968
|
attr_accessor :reservation_affinity
|
14854
14969
|
|
14855
|
-
# Resource
|
14970
|
+
# Resource manager tags to be bound to the instance. Tag keys and values have
|
14971
|
+
# the same definition as resource manager tags. Keys must be in the format `
|
14972
|
+
# tagKeys/`tag_key_id``, and values are in the format `tagValues/456`. The field
|
14973
|
+
# is ignored (both PUT & PATCH) when empty.
|
14974
|
+
# Corresponds to the JSON property `resourceManagerTags`
|
14975
|
+
# @return [Hash<String,String>]
|
14976
|
+
attr_accessor :resource_manager_tags
|
14977
|
+
|
14978
|
+
# Resource policies (names, not URLs) applied to instances created from these
|
14856
14979
|
# properties. Note that for MachineImage, this is not supported yet.
|
14857
14980
|
# Corresponds to the JSON property `resourcePolicies`
|
14858
14981
|
# @return [Array<String>]
|
@@ -14901,6 +15024,7 @@ module Google
|
|
14901
15024
|
@network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
|
14902
15025
|
@private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
|
14903
15026
|
@reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
|
15027
|
+
@resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
|
14904
15028
|
@resource_policies = args[:resource_policies] if args.key?(:resource_policies)
|
14905
15029
|
@scheduling = args[:scheduling] if args.key?(:scheduling)
|
14906
15030
|
@service_accounts = args[:service_accounts] if args.key?(:service_accounts)
|
@@ -15744,6 +15868,17 @@ module Google
|
|
15744
15868
|
# @return [String]
|
15745
15869
|
attr_accessor :bandwidth
|
15746
15870
|
|
15871
|
+
# Up to 16 candidate prefixes that control the allocation of
|
15872
|
+
# cloudRouterIpv6Address and customerRouterIpv6Address for this attachment. Each
|
15873
|
+
# prefix must be in the Global Unique Address (GUA) space. It is highly
|
15874
|
+
# recommended that it be in a range owned by the requestor. A GUA in a range
|
15875
|
+
# owned by Google will cause the request to fail. Google will select an
|
15876
|
+
# available prefix from the supplied candidates or fail the request. If not
|
15877
|
+
# supplied, a /125 from a Google-owned GUA block will be selected.
|
15878
|
+
# Corresponds to the JSON property `candidateIpv6Subnets`
|
15879
|
+
# @return [Array<String>]
|
15880
|
+
attr_accessor :candidate_ipv6_subnets
|
15881
|
+
|
15747
15882
|
# Up to 16 candidate prefixes that can be used to restrict the allocation of
|
15748
15883
|
# cloudRouterIpAddress and customerRouterIpAddress for this attachment. All
|
15749
15884
|
# prefixes must be within link-local address space (169.254.0.0/16) and must be /
|
@@ -15761,6 +15896,20 @@ module Google
|
|
15761
15896
|
# @return [String]
|
15762
15897
|
attr_accessor :cloud_router_ip_address
|
15763
15898
|
|
15899
|
+
# [Output Only] IPv6 address + prefix length to be configured on Cloud Router
|
15900
|
+
# Interface for this interconnect attachment.
|
15901
|
+
# Corresponds to the JSON property `cloudRouterIpv6Address`
|
15902
|
+
# @return [String]
|
15903
|
+
attr_accessor :cloud_router_ipv6_address
|
15904
|
+
|
15905
|
+
# If supplied, the interface id (index within the subnet) to be used for the
|
15906
|
+
# cloud router address. The id must be in the range of 1 to 6. If a subnet mask
|
15907
|
+
# is supplied, it must be /125, and the subnet should either be 0 or match the
|
15908
|
+
# selected subnet.
|
15909
|
+
# Corresponds to the JSON property `cloudRouterIpv6InterfaceId`
|
15910
|
+
# @return [String]
|
15911
|
+
attr_accessor :cloud_router_ipv6_interface_id
|
15912
|
+
|
15764
15913
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
15765
15914
|
# Corresponds to the JSON property `creationTimestamp`
|
15766
15915
|
# @return [String]
|
@@ -15772,7 +15921,24 @@ module Google
|
|
15772
15921
|
# @return [String]
|
15773
15922
|
attr_accessor :customer_router_ip_address
|
15774
15923
|
|
15775
|
-
# [Output Only]
|
15924
|
+
# [Output Only] IPv6 address + prefix length to be configured on the customer
|
15925
|
+
# router subinterface for this interconnect attachment.
|
15926
|
+
# Corresponds to the JSON property `customerRouterIpv6Address`
|
15927
|
+
# @return [String]
|
15928
|
+
attr_accessor :customer_router_ipv6_address
|
15929
|
+
|
15930
|
+
# If supplied, the interface id (index within the subnet) to be used for the
|
15931
|
+
# customer router address. The id must be in the range of 1 to 6. If a subnet
|
15932
|
+
# mask is supplied, it must be /125, and the subnet should either be 0 or match
|
15933
|
+
# the selected subnet.
|
15934
|
+
# Corresponds to the JSON property `customerRouterIpv6InterfaceId`
|
15935
|
+
# @return [String]
|
15936
|
+
attr_accessor :customer_router_ipv6_interface_id
|
15937
|
+
|
15938
|
+
# [Output only for types PARTNER and DEDICATED. Not present for PARTNER_PROVIDER.
|
15939
|
+
# ] Dataplane version for this InterconnectAttachment. This field is only
|
15940
|
+
# present for Dataplane version 2 and higher. Absence of this field in the API
|
15941
|
+
# output indicates that the Dataplane is version 1.
|
15776
15942
|
# Corresponds to the JSON property `dataplaneVersion`
|
15777
15943
|
# @return [Fixnum]
|
15778
15944
|
attr_accessor :dataplane_version
|
@@ -15931,6 +16097,14 @@ module Google
|
|
15931
16097
|
# @return [String]
|
15932
16098
|
attr_accessor :self_link
|
15933
16099
|
|
16100
|
+
# The stack type for this interconnect attachment to identify whether the IPv6
|
16101
|
+
# feature is enabled or not. If not specified, IPV4_ONLY will be used. This
|
16102
|
+
# field can be both set at interconnect attachments creation and update
|
16103
|
+
# interconnect attachment operations.
|
16104
|
+
# Corresponds to the JSON property `stackType`
|
16105
|
+
# @return [String]
|
16106
|
+
attr_accessor :stack_type
|
16107
|
+
|
15934
16108
|
# [Output Only] The current state of this attachment's functionality. Enum
|
15935
16109
|
# values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, PARTNER, and
|
15936
16110
|
# PARTNER_PROVIDER interconnect attachments, while enum values PENDING_PARTNER,
|
@@ -15973,10 +16147,15 @@ module Google
|
|
15973
16147
|
def update!(**args)
|
15974
16148
|
@admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled)
|
15975
16149
|
@bandwidth = args[:bandwidth] if args.key?(:bandwidth)
|
16150
|
+
@candidate_ipv6_subnets = args[:candidate_ipv6_subnets] if args.key?(:candidate_ipv6_subnets)
|
15976
16151
|
@candidate_subnets = args[:candidate_subnets] if args.key?(:candidate_subnets)
|
15977
16152
|
@cloud_router_ip_address = args[:cloud_router_ip_address] if args.key?(:cloud_router_ip_address)
|
16153
|
+
@cloud_router_ipv6_address = args[:cloud_router_ipv6_address] if args.key?(:cloud_router_ipv6_address)
|
16154
|
+
@cloud_router_ipv6_interface_id = args[:cloud_router_ipv6_interface_id] if args.key?(:cloud_router_ipv6_interface_id)
|
15978
16155
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
15979
16156
|
@customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address)
|
16157
|
+
@customer_router_ipv6_address = args[:customer_router_ipv6_address] if args.key?(:customer_router_ipv6_address)
|
16158
|
+
@customer_router_ipv6_interface_id = args[:customer_router_ipv6_interface_id] if args.key?(:customer_router_ipv6_interface_id)
|
15980
16159
|
@dataplane_version = args[:dataplane_version] if args.key?(:dataplane_version)
|
15981
16160
|
@description = args[:description] if args.key?(:description)
|
15982
16161
|
@edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
|
@@ -15997,6 +16176,7 @@ module Google
|
|
15997
16176
|
@router = args[:router] if args.key?(:router)
|
15998
16177
|
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
15999
16178
|
@self_link = args[:self_link] if args.key?(:self_link)
|
16179
|
+
@stack_type = args[:stack_type] if args.key?(:stack_type)
|
16000
16180
|
@state = args[:state] if args.key?(:state)
|
16001
16181
|
@type = args[:type] if args.key?(:type)
|
16002
16182
|
@vlan_tag8021q = args[:vlan_tag8021q] if args.key?(:vlan_tag8021q)
|
@@ -17512,7 +17692,7 @@ module Google
|
|
17512
17692
|
class LocationPolicyLocation
|
17513
17693
|
include Google::Apis::Core::Hashable
|
17514
17694
|
|
17515
|
-
# Preference for a given location
|
17695
|
+
# Preference for a given location.
|
17516
17696
|
# Corresponds to the JSON property `preference`
|
17517
17697
|
# @return [String]
|
17518
17698
|
attr_accessor :preference
|
@@ -17658,99 +17838,127 @@ module Google
|
|
17658
17838
|
end
|
17659
17839
|
end
|
17660
17840
|
|
17661
|
-
# Represents a
|
17662
|
-
#
|
17663
|
-
#
|
17664
|
-
|
17841
|
+
# Represents a machine image resource. A machine image is a Compute Engine
|
17842
|
+
# resource that stores all the configuration, metadata, permissions, and data
|
17843
|
+
# from one or more disks required to create a Virtual machine (VM) instance. For
|
17844
|
+
# more information, see Machine images.
|
17845
|
+
class MachineImage
|
17665
17846
|
include Google::Apis::Core::Hashable
|
17666
17847
|
|
17667
|
-
# [Output Only]
|
17668
|
-
#
|
17669
|
-
# Corresponds to the JSON property `accelerators`
|
17670
|
-
# @return [Array<Google::Apis::ComputeV1::MachineType::Accelerator>]
|
17671
|
-
attr_accessor :accelerators
|
17672
|
-
|
17673
|
-
# [Output Only] Creation timestamp in RFC3339 text format.
|
17848
|
+
# [Output Only] The creation timestamp for this machine image in RFC3339 text
|
17849
|
+
# format.
|
17674
17850
|
# Corresponds to the JSON property `creationTimestamp`
|
17675
17851
|
# @return [String]
|
17676
17852
|
attr_accessor :creation_timestamp
|
17677
17853
|
|
17678
|
-
#
|
17679
|
-
#
|
17680
|
-
# @return [Google::Apis::ComputeV1::DeprecationStatus]
|
17681
|
-
attr_accessor :deprecated
|
17682
|
-
|
17683
|
-
# [Output Only] An optional textual description of the resource.
|
17854
|
+
# An optional description of this resource. Provide this property when you
|
17855
|
+
# create the resource.
|
17684
17856
|
# Corresponds to the JSON property `description`
|
17685
17857
|
# @return [String]
|
17686
17858
|
attr_accessor :description
|
17687
17859
|
|
17688
|
-
# [
|
17689
|
-
#
|
17690
|
-
#
|
17691
|
-
|
17860
|
+
# [Input Only] Whether to attempt an application consistent machine image by
|
17861
|
+
# informing the OS to prepare for the snapshot process. Currently only supported
|
17862
|
+
# on Windows instances using the Volume Shadow Copy Service (VSS).
|
17863
|
+
# Corresponds to the JSON property `guestFlush`
|
17864
|
+
# @return [Boolean]
|
17865
|
+
attr_accessor :guest_flush
|
17866
|
+
alias_method :guest_flush?, :guest_flush
|
17692
17867
|
|
17693
|
-
# [Output Only]
|
17694
|
-
#
|
17868
|
+
# [Output Only] A unique identifier for this machine image. The server defines
|
17869
|
+
# this identifier.
|
17695
17870
|
# Corresponds to the JSON property `id`
|
17696
17871
|
# @return [Fixnum]
|
17697
17872
|
attr_accessor :id
|
17698
17873
|
|
17699
|
-
# [
|
17700
|
-
#
|
17701
|
-
#
|
17702
|
-
|
17703
|
-
attr_accessor :image_space_gb
|
17704
|
-
|
17705
|
-
# [Output Only] Whether this machine type has a shared CPU. See Shared-core
|
17706
|
-
# machine types for more information.
|
17707
|
-
# Corresponds to the JSON property `isSharedCpu`
|
17708
|
-
# @return [Boolean]
|
17709
|
-
attr_accessor :is_shared_cpu
|
17710
|
-
alias_method :is_shared_cpu?, :is_shared_cpu
|
17874
|
+
# [Output Only] Properties of source instance
|
17875
|
+
# Corresponds to the JSON property `instanceProperties`
|
17876
|
+
# @return [Google::Apis::ComputeV1::InstanceProperties]
|
17877
|
+
attr_accessor :instance_properties
|
17711
17878
|
|
17712
|
-
# [Output Only] The type
|
17713
|
-
#
|
17879
|
+
# [Output Only] The resource type, which is always compute#machineImage for
|
17880
|
+
# machine image.
|
17714
17881
|
# Corresponds to the JSON property `kind`
|
17715
17882
|
# @return [String]
|
17716
17883
|
attr_accessor :kind
|
17717
17884
|
|
17718
|
-
#
|
17719
|
-
#
|
17720
|
-
#
|
17721
|
-
|
17722
|
-
|
17723
|
-
#
|
17724
|
-
#
|
17725
|
-
#
|
17726
|
-
|
17727
|
-
|
17728
|
-
# [
|
17729
|
-
|
17730
|
-
# Corresponds to the JSON property `memoryMb`
|
17731
|
-
# @return [Fixnum]
|
17732
|
-
attr_accessor :memory_mb
|
17885
|
+
# Encrypts the machine image using a customer-supplied encryption key. After you
|
17886
|
+
# encrypt a machine image using a customer-supplied key, you must provide the
|
17887
|
+
# same key if you use the machine image later. For example, you must provide the
|
17888
|
+
# encryption key when you create an instance from the encrypted machine image in
|
17889
|
+
# a future request. Customer-supplied encryption keys do not protect access to
|
17890
|
+
# metadata of the machine image. If you do not provide an encryption key when
|
17891
|
+
# creating the machine image, then the machine image will be encrypted using an
|
17892
|
+
# automatically generated key and you do not need to provide a key to use the
|
17893
|
+
# machine image later.
|
17894
|
+
# Corresponds to the JSON property `machineImageEncryptionKey`
|
17895
|
+
# @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
|
17896
|
+
attr_accessor :machine_image_encryption_key
|
17733
17897
|
|
17734
|
-
#
|
17898
|
+
# Name of the resource; provided by the client when the resource is created. The
|
17899
|
+
# name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
17900
|
+
# name must be 1-63 characters long and match the regular expression `[a-z]([-a-
|
17901
|
+
# z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
|
17902
|
+
# and all following characters must be a dash, lowercase letter, or digit,
|
17903
|
+
# except the last character, which cannot be a dash.
|
17735
17904
|
# Corresponds to the JSON property `name`
|
17736
17905
|
# @return [String]
|
17737
17906
|
attr_accessor :name
|
17738
17907
|
|
17739
|
-
# [Output Only]
|
17740
|
-
# Corresponds to the JSON property `
|
17741
|
-
# @return [
|
17742
|
-
attr_accessor :
|
17908
|
+
# [Output Only] Reserved for future use.
|
17909
|
+
# Corresponds to the JSON property `satisfiesPzs`
|
17910
|
+
# @return [Boolean]
|
17911
|
+
attr_accessor :satisfies_pzs
|
17912
|
+
alias_method :satisfies_pzs?, :satisfies_pzs
|
17743
17913
|
|
17744
|
-
#
|
17914
|
+
# An array of Machine Image specific properties for disks attached to the source
|
17915
|
+
# instance
|
17916
|
+
# Corresponds to the JSON property `savedDisks`
|
17917
|
+
# @return [Array<Google::Apis::ComputeV1::SavedDisk>]
|
17918
|
+
attr_accessor :saved_disks
|
17919
|
+
|
17920
|
+
# [Output Only] The URL for this machine image. The server defines this URL.
|
17745
17921
|
# Corresponds to the JSON property `selfLink`
|
17746
17922
|
# @return [String]
|
17747
17923
|
attr_accessor :self_link
|
17748
17924
|
|
17749
|
-
# [
|
17750
|
-
#
|
17751
|
-
#
|
17925
|
+
# [Input Only] The customer-supplied encryption key of the disks attached to the
|
17926
|
+
# source instance. Required if the source disk is protected by a customer-
|
17927
|
+
# supplied encryption key.
|
17928
|
+
# Corresponds to the JSON property `sourceDiskEncryptionKeys`
|
17929
|
+
# @return [Array<Google::Apis::ComputeV1::SourceDiskEncryptionKey>]
|
17930
|
+
attr_accessor :source_disk_encryption_keys
|
17931
|
+
|
17932
|
+
# The source instance used to create the machine image. You can provide this as
|
17933
|
+
# a partial or full URL to the resource. For example, the following are valid
|
17934
|
+
# values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
|
17935
|
+
# instances/instance - projects/project/zones/zone/instances/instance
|
17936
|
+
# Corresponds to the JSON property `sourceInstance`
|
17752
17937
|
# @return [String]
|
17753
|
-
attr_accessor :
|
17938
|
+
attr_accessor :source_instance
|
17939
|
+
|
17940
|
+
# DEPRECATED: Please use compute#instanceProperties instead. New properties will
|
17941
|
+
# not be added to this field.
|
17942
|
+
# Corresponds to the JSON property `sourceInstanceProperties`
|
17943
|
+
# @return [Google::Apis::ComputeV1::SourceInstanceProperties]
|
17944
|
+
attr_accessor :source_instance_properties
|
17945
|
+
|
17946
|
+
# [Output Only] The status of the machine image. One of the following values:
|
17947
|
+
# INVALID, CREATING, READY, DELETING, and UPLOADING.
|
17948
|
+
# Corresponds to the JSON property `status`
|
17949
|
+
# @return [String]
|
17950
|
+
attr_accessor :status
|
17951
|
+
|
17952
|
+
# The regional or multi-regional Cloud Storage bucket location where the machine
|
17953
|
+
# image is stored.
|
17954
|
+
# Corresponds to the JSON property `storageLocations`
|
17955
|
+
# @return [Array<String>]
|
17956
|
+
attr_accessor :storage_locations
|
17957
|
+
|
17958
|
+
# [Output Only] Total size of the storage used by the machine image.
|
17959
|
+
# Corresponds to the JSON property `totalStorageBytes`
|
17960
|
+
# @return [Fixnum]
|
17961
|
+
attr_accessor :total_storage_bytes
|
17754
17962
|
|
17755
17963
|
def initialize(**args)
|
17756
17964
|
update!(**args)
|
@@ -17758,71 +17966,28 @@ module Google
|
|
17758
17966
|
|
17759
17967
|
# Update properties of this object
|
17760
17968
|
def update!(**args)
|
17761
|
-
@accelerators = args[:accelerators] if args.key?(:accelerators)
|
17762
17969
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
17763
|
-
@deprecated = args[:deprecated] if args.key?(:deprecated)
|
17764
17970
|
@description = args[:description] if args.key?(:description)
|
17765
|
-
@
|
17971
|
+
@guest_flush = args[:guest_flush] if args.key?(:guest_flush)
|
17766
17972
|
@id = args[:id] if args.key?(:id)
|
17767
|
-
@
|
17768
|
-
@is_shared_cpu = args[:is_shared_cpu] if args.key?(:is_shared_cpu)
|
17973
|
+
@instance_properties = args[:instance_properties] if args.key?(:instance_properties)
|
17769
17974
|
@kind = args[:kind] if args.key?(:kind)
|
17770
|
-
@
|
17771
|
-
@maximum_persistent_disks_size_gb = args[:maximum_persistent_disks_size_gb] if args.key?(:maximum_persistent_disks_size_gb)
|
17772
|
-
@memory_mb = args[:memory_mb] if args.key?(:memory_mb)
|
17975
|
+
@machine_image_encryption_key = args[:machine_image_encryption_key] if args.key?(:machine_image_encryption_key)
|
17773
17976
|
@name = args[:name] if args.key?(:name)
|
17774
|
-
@
|
17977
|
+
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
17978
|
+
@saved_disks = args[:saved_disks] if args.key?(:saved_disks)
|
17775
17979
|
@self_link = args[:self_link] if args.key?(:self_link)
|
17776
|
-
@
|
17777
|
-
|
17778
|
-
|
17779
|
-
|
17780
|
-
|
17781
|
-
|
17782
|
-
|
17783
|
-
# Number of accelerator cards exposed to the guest.
|
17784
|
-
# Corresponds to the JSON property `guestAcceleratorCount`
|
17785
|
-
# @return [Fixnum]
|
17786
|
-
attr_accessor :guest_accelerator_count
|
17787
|
-
|
17788
|
-
# The accelerator type resource name, not a full URL, e.g. 'nvidia-tesla-k80'.
|
17789
|
-
# Corresponds to the JSON property `guestAcceleratorType`
|
17790
|
-
# @return [String]
|
17791
|
-
attr_accessor :guest_accelerator_type
|
17792
|
-
|
17793
|
-
def initialize(**args)
|
17794
|
-
update!(**args)
|
17795
|
-
end
|
17796
|
-
|
17797
|
-
# Update properties of this object
|
17798
|
-
def update!(**args)
|
17799
|
-
@guest_accelerator_count = args[:guest_accelerator_count] if args.key?(:guest_accelerator_count)
|
17800
|
-
@guest_accelerator_type = args[:guest_accelerator_type] if args.key?(:guest_accelerator_type)
|
17801
|
-
end
|
17802
|
-
end
|
17803
|
-
|
17804
|
-
#
|
17805
|
-
class ScratchDisk
|
17806
|
-
include Google::Apis::Core::Hashable
|
17807
|
-
|
17808
|
-
# Size of the scratch disk, defined in GB.
|
17809
|
-
# Corresponds to the JSON property `diskGb`
|
17810
|
-
# @return [Fixnum]
|
17811
|
-
attr_accessor :disk_gb
|
17812
|
-
|
17813
|
-
def initialize(**args)
|
17814
|
-
update!(**args)
|
17815
|
-
end
|
17816
|
-
|
17817
|
-
# Update properties of this object
|
17818
|
-
def update!(**args)
|
17819
|
-
@disk_gb = args[:disk_gb] if args.key?(:disk_gb)
|
17820
|
-
end
|
17980
|
+
@source_disk_encryption_keys = args[:source_disk_encryption_keys] if args.key?(:source_disk_encryption_keys)
|
17981
|
+
@source_instance = args[:source_instance] if args.key?(:source_instance)
|
17982
|
+
@source_instance_properties = args[:source_instance_properties] if args.key?(:source_instance_properties)
|
17983
|
+
@status = args[:status] if args.key?(:status)
|
17984
|
+
@storage_locations = args[:storage_locations] if args.key?(:storage_locations)
|
17985
|
+
@total_storage_bytes = args[:total_storage_bytes] if args.key?(:total_storage_bytes)
|
17821
17986
|
end
|
17822
17987
|
end
|
17823
17988
|
|
17824
|
-
#
|
17825
|
-
class
|
17989
|
+
# A list of machine images.
|
17990
|
+
class MachineImageList
|
17826
17991
|
include Google::Apis::Core::Hashable
|
17827
17992
|
|
17828
17993
|
# [Output Only] Unique identifier for the resource; defined by the server.
|
@@ -17830,13 +17995,13 @@ module Google
|
|
17830
17995
|
# @return [String]
|
17831
17996
|
attr_accessor :id
|
17832
17997
|
|
17833
|
-
# A list of
|
17998
|
+
# A list of MachineImage resources.
|
17834
17999
|
# Corresponds to the JSON property `items`
|
17835
|
-
# @return [
|
18000
|
+
# @return [Array<Google::Apis::ComputeV1::MachineImage>]
|
17836
18001
|
attr_accessor :items
|
17837
18002
|
|
17838
|
-
# [Output Only]
|
17839
|
-
#
|
18003
|
+
# [Output Only] The resource type, which is always compute#
|
18004
|
+
# machineImagesListResponse for machine image lists.
|
17840
18005
|
# Corresponds to the JSON property `kind`
|
17841
18006
|
# @return [String]
|
17842
18007
|
attr_accessor :kind
|
@@ -17855,14 +18020,9 @@ module Google
|
|
17855
18020
|
# @return [String]
|
17856
18021
|
attr_accessor :self_link
|
17857
18022
|
|
17858
|
-
# [Output Only] Unreachable resources.
|
17859
|
-
# Corresponds to the JSON property `unreachables`
|
17860
|
-
# @return [Array<String>]
|
17861
|
-
attr_accessor :unreachables
|
17862
|
-
|
17863
18023
|
# [Output Only] Informational warning message.
|
17864
18024
|
# Corresponds to the JSON property `warning`
|
17865
|
-
# @return [Google::Apis::ComputeV1::
|
18025
|
+
# @return [Google::Apis::ComputeV1::MachineImageList::Warning]
|
17866
18026
|
attr_accessor :warning
|
17867
18027
|
|
17868
18028
|
def initialize(**args)
|
@@ -17876,7 +18036,6 @@ module Google
|
|
17876
18036
|
@kind = args[:kind] if args.key?(:kind)
|
17877
18037
|
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
17878
18038
|
@self_link = args[:self_link] if args.key?(:self_link)
|
17879
|
-
@unreachables = args[:unreachables] if args.key?(:unreachables)
|
17880
18039
|
@warning = args[:warning] if args.key?(:warning)
|
17881
18040
|
end
|
17882
18041
|
|
@@ -17893,7 +18052,294 @@ module Google
|
|
17893
18052
|
# [Output Only] Metadata about this warning in key: value format. For example: "
|
17894
18053
|
# data": [ ` "key": "scope", "value": "zones/us-east1-d" `
|
17895
18054
|
# Corresponds to the JSON property `data`
|
17896
|
-
# @return [Array<Google::Apis::ComputeV1::
|
18055
|
+
# @return [Array<Google::Apis::ComputeV1::MachineImageList::Warning::Datum>]
|
18056
|
+
attr_accessor :data
|
18057
|
+
|
18058
|
+
# [Output Only] A human-readable description of the warning code.
|
18059
|
+
# Corresponds to the JSON property `message`
|
18060
|
+
# @return [String]
|
18061
|
+
attr_accessor :message
|
18062
|
+
|
18063
|
+
def initialize(**args)
|
18064
|
+
update!(**args)
|
18065
|
+
end
|
18066
|
+
|
18067
|
+
# Update properties of this object
|
18068
|
+
def update!(**args)
|
18069
|
+
@code = args[:code] if args.key?(:code)
|
18070
|
+
@data = args[:data] if args.key?(:data)
|
18071
|
+
@message = args[:message] if args.key?(:message)
|
18072
|
+
end
|
18073
|
+
|
18074
|
+
#
|
18075
|
+
class Datum
|
18076
|
+
include Google::Apis::Core::Hashable
|
18077
|
+
|
18078
|
+
# [Output Only] A key that provides more detail on the warning being returned.
|
18079
|
+
# For example, for warnings where there are no results in a list request for a
|
18080
|
+
# particular zone, this key might be scope and the key value might be the zone
|
18081
|
+
# name. Other examples might be a key indicating a deprecated resource and a
|
18082
|
+
# suggested replacement, or a warning about invalid network settings (for
|
18083
|
+
# example, if an instance attempts to perform IP forwarding but is not enabled
|
18084
|
+
# for IP forwarding).
|
18085
|
+
# Corresponds to the JSON property `key`
|
18086
|
+
# @return [String]
|
18087
|
+
attr_accessor :key
|
18088
|
+
|
18089
|
+
# [Output Only] A warning data value corresponding to the key.
|
18090
|
+
# Corresponds to the JSON property `value`
|
18091
|
+
# @return [String]
|
18092
|
+
attr_accessor :value
|
18093
|
+
|
18094
|
+
def initialize(**args)
|
18095
|
+
update!(**args)
|
18096
|
+
end
|
18097
|
+
|
18098
|
+
# Update properties of this object
|
18099
|
+
def update!(**args)
|
18100
|
+
@key = args[:key] if args.key?(:key)
|
18101
|
+
@value = args[:value] if args.key?(:value)
|
18102
|
+
end
|
18103
|
+
end
|
18104
|
+
end
|
18105
|
+
end
|
18106
|
+
|
18107
|
+
# Represents a Machine Type resource. You can use specific machine types for
|
18108
|
+
# your VM instances based on performance and pricing requirements. For more
|
18109
|
+
# information, read Machine Types.
|
18110
|
+
class MachineType
|
18111
|
+
include Google::Apis::Core::Hashable
|
18112
|
+
|
18113
|
+
# [Output Only] A list of accelerator configurations assigned to this machine
|
18114
|
+
# type.
|
18115
|
+
# Corresponds to the JSON property `accelerators`
|
18116
|
+
# @return [Array<Google::Apis::ComputeV1::MachineType::Accelerator>]
|
18117
|
+
attr_accessor :accelerators
|
18118
|
+
|
18119
|
+
# [Output Only] Creation timestamp in RFC3339 text format.
|
18120
|
+
# Corresponds to the JSON property `creationTimestamp`
|
18121
|
+
# @return [String]
|
18122
|
+
attr_accessor :creation_timestamp
|
18123
|
+
|
18124
|
+
# Deprecation status for a public resource.
|
18125
|
+
# Corresponds to the JSON property `deprecated`
|
18126
|
+
# @return [Google::Apis::ComputeV1::DeprecationStatus]
|
18127
|
+
attr_accessor :deprecated
|
18128
|
+
|
18129
|
+
# [Output Only] An optional textual description of the resource.
|
18130
|
+
# Corresponds to the JSON property `description`
|
18131
|
+
# @return [String]
|
18132
|
+
attr_accessor :description
|
18133
|
+
|
18134
|
+
# [Output Only] The number of virtual CPUs that are available to the instance.
|
18135
|
+
# Corresponds to the JSON property `guestCpus`
|
18136
|
+
# @return [Fixnum]
|
18137
|
+
attr_accessor :guest_cpus
|
18138
|
+
|
18139
|
+
# [Output Only] The unique identifier for the resource. This identifier is
|
18140
|
+
# defined by the server.
|
18141
|
+
# Corresponds to the JSON property `id`
|
18142
|
+
# @return [Fixnum]
|
18143
|
+
attr_accessor :id
|
18144
|
+
|
18145
|
+
# [Deprecated] This property is deprecated and will never be populated with any
|
18146
|
+
# relevant values.
|
18147
|
+
# Corresponds to the JSON property `imageSpaceGb`
|
18148
|
+
# @return [Fixnum]
|
18149
|
+
attr_accessor :image_space_gb
|
18150
|
+
|
18151
|
+
# [Output Only] Whether this machine type has a shared CPU. See Shared-core
|
18152
|
+
# machine types for more information.
|
18153
|
+
# Corresponds to the JSON property `isSharedCpu`
|
18154
|
+
# @return [Boolean]
|
18155
|
+
attr_accessor :is_shared_cpu
|
18156
|
+
alias_method :is_shared_cpu?, :is_shared_cpu
|
18157
|
+
|
18158
|
+
# [Output Only] The type of the resource. Always compute#machineType for machine
|
18159
|
+
# types.
|
18160
|
+
# Corresponds to the JSON property `kind`
|
18161
|
+
# @return [String]
|
18162
|
+
attr_accessor :kind
|
18163
|
+
|
18164
|
+
# [Output Only] Maximum persistent disks allowed.
|
18165
|
+
# Corresponds to the JSON property `maximumPersistentDisks`
|
18166
|
+
# @return [Fixnum]
|
18167
|
+
attr_accessor :maximum_persistent_disks
|
18168
|
+
|
18169
|
+
# [Output Only] Maximum total persistent disks size (GB) allowed.
|
18170
|
+
# Corresponds to the JSON property `maximumPersistentDisksSizeGb`
|
18171
|
+
# @return [Fixnum]
|
18172
|
+
attr_accessor :maximum_persistent_disks_size_gb
|
18173
|
+
|
18174
|
+
# [Output Only] The amount of physical memory available to the instance, defined
|
18175
|
+
# in MB.
|
18176
|
+
# Corresponds to the JSON property `memoryMb`
|
18177
|
+
# @return [Fixnum]
|
18178
|
+
attr_accessor :memory_mb
|
18179
|
+
|
18180
|
+
# [Output Only] Name of the resource.
|
18181
|
+
# Corresponds to the JSON property `name`
|
18182
|
+
# @return [String]
|
18183
|
+
attr_accessor :name
|
18184
|
+
|
18185
|
+
# [Output Only] A list of extended scratch disks assigned to the instance.
|
18186
|
+
# Corresponds to the JSON property `scratchDisks`
|
18187
|
+
# @return [Array<Google::Apis::ComputeV1::MachineType::ScratchDisk>]
|
18188
|
+
attr_accessor :scratch_disks
|
18189
|
+
|
18190
|
+
# [Output Only] Server-defined URL for the resource.
|
18191
|
+
# Corresponds to the JSON property `selfLink`
|
18192
|
+
# @return [String]
|
18193
|
+
attr_accessor :self_link
|
18194
|
+
|
18195
|
+
# [Output Only] The name of the zone where the machine type resides, such as us-
|
18196
|
+
# central1-a.
|
18197
|
+
# Corresponds to the JSON property `zone`
|
18198
|
+
# @return [String]
|
18199
|
+
attr_accessor :zone
|
18200
|
+
|
18201
|
+
def initialize(**args)
|
18202
|
+
update!(**args)
|
18203
|
+
end
|
18204
|
+
|
18205
|
+
# Update properties of this object
|
18206
|
+
def update!(**args)
|
18207
|
+
@accelerators = args[:accelerators] if args.key?(:accelerators)
|
18208
|
+
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
18209
|
+
@deprecated = args[:deprecated] if args.key?(:deprecated)
|
18210
|
+
@description = args[:description] if args.key?(:description)
|
18211
|
+
@guest_cpus = args[:guest_cpus] if args.key?(:guest_cpus)
|
18212
|
+
@id = args[:id] if args.key?(:id)
|
18213
|
+
@image_space_gb = args[:image_space_gb] if args.key?(:image_space_gb)
|
18214
|
+
@is_shared_cpu = args[:is_shared_cpu] if args.key?(:is_shared_cpu)
|
18215
|
+
@kind = args[:kind] if args.key?(:kind)
|
18216
|
+
@maximum_persistent_disks = args[:maximum_persistent_disks] if args.key?(:maximum_persistent_disks)
|
18217
|
+
@maximum_persistent_disks_size_gb = args[:maximum_persistent_disks_size_gb] if args.key?(:maximum_persistent_disks_size_gb)
|
18218
|
+
@memory_mb = args[:memory_mb] if args.key?(:memory_mb)
|
18219
|
+
@name = args[:name] if args.key?(:name)
|
18220
|
+
@scratch_disks = args[:scratch_disks] if args.key?(:scratch_disks)
|
18221
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
18222
|
+
@zone = args[:zone] if args.key?(:zone)
|
18223
|
+
end
|
18224
|
+
|
18225
|
+
#
|
18226
|
+
class Accelerator
|
18227
|
+
include Google::Apis::Core::Hashable
|
18228
|
+
|
18229
|
+
# Number of accelerator cards exposed to the guest.
|
18230
|
+
# Corresponds to the JSON property `guestAcceleratorCount`
|
18231
|
+
# @return [Fixnum]
|
18232
|
+
attr_accessor :guest_accelerator_count
|
18233
|
+
|
18234
|
+
# The accelerator type resource name, not a full URL, e.g. 'nvidia-tesla-k80'.
|
18235
|
+
# Corresponds to the JSON property `guestAcceleratorType`
|
18236
|
+
# @return [String]
|
18237
|
+
attr_accessor :guest_accelerator_type
|
18238
|
+
|
18239
|
+
def initialize(**args)
|
18240
|
+
update!(**args)
|
18241
|
+
end
|
18242
|
+
|
18243
|
+
# Update properties of this object
|
18244
|
+
def update!(**args)
|
18245
|
+
@guest_accelerator_count = args[:guest_accelerator_count] if args.key?(:guest_accelerator_count)
|
18246
|
+
@guest_accelerator_type = args[:guest_accelerator_type] if args.key?(:guest_accelerator_type)
|
18247
|
+
end
|
18248
|
+
end
|
18249
|
+
|
18250
|
+
#
|
18251
|
+
class ScratchDisk
|
18252
|
+
include Google::Apis::Core::Hashable
|
18253
|
+
|
18254
|
+
# Size of the scratch disk, defined in GB.
|
18255
|
+
# Corresponds to the JSON property `diskGb`
|
18256
|
+
# @return [Fixnum]
|
18257
|
+
attr_accessor :disk_gb
|
18258
|
+
|
18259
|
+
def initialize(**args)
|
18260
|
+
update!(**args)
|
18261
|
+
end
|
18262
|
+
|
18263
|
+
# Update properties of this object
|
18264
|
+
def update!(**args)
|
18265
|
+
@disk_gb = args[:disk_gb] if args.key?(:disk_gb)
|
18266
|
+
end
|
18267
|
+
end
|
18268
|
+
end
|
18269
|
+
|
18270
|
+
#
|
18271
|
+
class MachineTypeAggregatedList
|
18272
|
+
include Google::Apis::Core::Hashable
|
18273
|
+
|
18274
|
+
# [Output Only] Unique identifier for the resource; defined by the server.
|
18275
|
+
# Corresponds to the JSON property `id`
|
18276
|
+
# @return [String]
|
18277
|
+
attr_accessor :id
|
18278
|
+
|
18279
|
+
# A list of MachineTypesScopedList resources.
|
18280
|
+
# Corresponds to the JSON property `items`
|
18281
|
+
# @return [Hash<String,Google::Apis::ComputeV1::MachineTypesScopedList>]
|
18282
|
+
attr_accessor :items
|
18283
|
+
|
18284
|
+
# [Output Only] Type of resource. Always compute#machineTypeAggregatedList for
|
18285
|
+
# aggregated lists of machine types.
|
18286
|
+
# Corresponds to the JSON property `kind`
|
18287
|
+
# @return [String]
|
18288
|
+
attr_accessor :kind
|
18289
|
+
|
18290
|
+
# [Output Only] This token allows you to get the next page of results for list
|
18291
|
+
# requests. If the number of results is larger than maxResults, use the
|
18292
|
+
# nextPageToken as a value for the query parameter pageToken in the next list
|
18293
|
+
# request. Subsequent list requests will have their own nextPageToken to
|
18294
|
+
# continue paging through the results.
|
18295
|
+
# Corresponds to the JSON property `nextPageToken`
|
18296
|
+
# @return [String]
|
18297
|
+
attr_accessor :next_page_token
|
18298
|
+
|
18299
|
+
# [Output Only] Server-defined URL for this resource.
|
18300
|
+
# Corresponds to the JSON property `selfLink`
|
18301
|
+
# @return [String]
|
18302
|
+
attr_accessor :self_link
|
18303
|
+
|
18304
|
+
# [Output Only] Unreachable resources.
|
18305
|
+
# Corresponds to the JSON property `unreachables`
|
18306
|
+
# @return [Array<String>]
|
18307
|
+
attr_accessor :unreachables
|
18308
|
+
|
18309
|
+
# [Output Only] Informational warning message.
|
18310
|
+
# Corresponds to the JSON property `warning`
|
18311
|
+
# @return [Google::Apis::ComputeV1::MachineTypeAggregatedList::Warning]
|
18312
|
+
attr_accessor :warning
|
18313
|
+
|
18314
|
+
def initialize(**args)
|
18315
|
+
update!(**args)
|
18316
|
+
end
|
18317
|
+
|
18318
|
+
# Update properties of this object
|
18319
|
+
def update!(**args)
|
18320
|
+
@id = args[:id] if args.key?(:id)
|
18321
|
+
@items = args[:items] if args.key?(:items)
|
18322
|
+
@kind = args[:kind] if args.key?(:kind)
|
18323
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
18324
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
18325
|
+
@unreachables = args[:unreachables] if args.key?(:unreachables)
|
18326
|
+
@warning = args[:warning] if args.key?(:warning)
|
18327
|
+
end
|
18328
|
+
|
18329
|
+
# [Output Only] Informational warning message.
|
18330
|
+
class Warning
|
18331
|
+
include Google::Apis::Core::Hashable
|
18332
|
+
|
18333
|
+
# [Output Only] A warning code, if applicable. For example, Compute Engine
|
18334
|
+
# returns NO_RESULTS_ON_PAGE if there are no results in the response.
|
18335
|
+
# Corresponds to the JSON property `code`
|
18336
|
+
# @return [String]
|
18337
|
+
attr_accessor :code
|
18338
|
+
|
18339
|
+
# [Output Only] Metadata about this warning in key: value format. For example: "
|
18340
|
+
# data": [ ` "key": "scope", "value": "zones/us-east1-d" `
|
18341
|
+
# Corresponds to the JSON property `data`
|
18342
|
+
# @return [Array<Google::Apis::ComputeV1::MachineTypeAggregatedList::Warning::Datum>]
|
17897
18343
|
attr_accessor :data
|
17898
18344
|
|
17899
18345
|
# [Output Only] A human-readable description of the warning code.
|
@@ -18786,6 +19232,12 @@ module Google
|
|
18786
19232
|
# @return [String]
|
18787
19233
|
attr_accessor :network_endpoint_type
|
18788
19234
|
|
19235
|
+
# The target service url used to set up private service connection to a Google
|
19236
|
+
# API. An example value is: "asia-northeast3-cloudkms.googleapis.com"
|
19237
|
+
# Corresponds to the JSON property `pscTargetService`
|
19238
|
+
# @return [String]
|
19239
|
+
attr_accessor :psc_target_service
|
19240
|
+
|
18789
19241
|
# [Output Only] The URL of the region where the network endpoint group is
|
18790
19242
|
# located.
|
18791
19243
|
# Corresponds to the JSON property `region`
|
@@ -18831,6 +19283,7 @@ module Google
|
|
18831
19283
|
@name = args[:name] if args.key?(:name)
|
18832
19284
|
@network = args[:network] if args.key?(:network)
|
18833
19285
|
@network_endpoint_type = args[:network_endpoint_type] if args.key?(:network_endpoint_type)
|
19286
|
+
@psc_target_service = args[:psc_target_service] if args.key?(:psc_target_service)
|
18834
19287
|
@region = args[:region] if args.key?(:region)
|
18835
19288
|
@self_link = args[:self_link] if args.key?(:self_link)
|
18836
19289
|
@size = args[:size] if args.key?(:size)
|
@@ -19531,7 +19984,7 @@ module Google
|
|
19531
19984
|
# @return [String]
|
19532
19985
|
attr_accessor :ipv6_access_type
|
19533
19986
|
|
19534
|
-
#
|
19987
|
+
# An IPv6 internal network address for this network interface.
|
19535
19988
|
# Corresponds to the JSON property `ipv6Address`
|
19536
19989
|
# @return [String]
|
19537
19990
|
attr_accessor :ipv6_address
|
@@ -28483,6 +28936,12 @@ module Google
|
|
28483
28936
|
# @return [String]
|
28484
28937
|
attr_accessor :enable
|
28485
28938
|
|
28939
|
+
# Enable IPv6 traffic over BGP Peer. If not specified, it is disabled by default.
|
28940
|
+
# Corresponds to the JSON property `enableIpv6`
|
28941
|
+
# @return [Boolean]
|
28942
|
+
attr_accessor :enable_ipv6
|
28943
|
+
alias_method :enable_ipv6?, :enable_ipv6
|
28944
|
+
|
28486
28945
|
# Name of the interface the BGP peer is associated with.
|
28487
28946
|
# Corresponds to the JSON property `interfaceName`
|
28488
28947
|
# @return [String]
|
@@ -28494,6 +28953,11 @@ module Google
|
|
28494
28953
|
# @return [String]
|
28495
28954
|
attr_accessor :ip_address
|
28496
28955
|
|
28956
|
+
# IPv6 address of the interface inside Google Cloud Platform.
|
28957
|
+
# Corresponds to the JSON property `ipv6NexthopAddress`
|
28958
|
+
# @return [String]
|
28959
|
+
attr_accessor :ipv6_nexthop_address
|
28960
|
+
|
28497
28961
|
# [Output Only] The resource that configures and manages this BGP peer. -
|
28498
28962
|
# MANAGED_BY_USER is the default value and can be managed by you or other users -
|
28499
28963
|
# MANAGED_BY_ATTACHMENT is a BGP peer that is configured and managed by Cloud
|
@@ -28526,6 +28990,11 @@ module Google
|
|
28526
28990
|
# @return [String]
|
28527
28991
|
attr_accessor :peer_ip_address
|
28528
28992
|
|
28993
|
+
# IPv6 address of the BGP interface outside Google Cloud Platform.
|
28994
|
+
# Corresponds to the JSON property `peerIpv6NexthopAddress`
|
28995
|
+
# @return [String]
|
28996
|
+
attr_accessor :peer_ipv6_nexthop_address
|
28997
|
+
|
28529
28998
|
# URI of the VM instance that is used as third-party router appliances such as
|
28530
28999
|
# Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance
|
28531
29000
|
# must be located in zones contained in the same region as this Cloud Router.
|
@@ -28546,12 +29015,15 @@ module Google
|
|
28546
29015
|
@advertised_route_priority = args[:advertised_route_priority] if args.key?(:advertised_route_priority)
|
28547
29016
|
@bfd = args[:bfd] if args.key?(:bfd)
|
28548
29017
|
@enable = args[:enable] if args.key?(:enable)
|
29018
|
+
@enable_ipv6 = args[:enable_ipv6] if args.key?(:enable_ipv6)
|
28549
29019
|
@interface_name = args[:interface_name] if args.key?(:interface_name)
|
28550
29020
|
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
29021
|
+
@ipv6_nexthop_address = args[:ipv6_nexthop_address] if args.key?(:ipv6_nexthop_address)
|
28551
29022
|
@management_type = args[:management_type] if args.key?(:management_type)
|
28552
29023
|
@name = args[:name] if args.key?(:name)
|
28553
29024
|
@peer_asn = args[:peer_asn] if args.key?(:peer_asn)
|
28554
29025
|
@peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
|
29026
|
+
@peer_ipv6_nexthop_address = args[:peer_ipv6_nexthop_address] if args.key?(:peer_ipv6_nexthop_address)
|
28555
29027
|
@router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance)
|
28556
29028
|
end
|
28557
29029
|
end
|
@@ -29616,6 +30088,171 @@ module Google
|
|
29616
30088
|
end
|
29617
30089
|
end
|
29618
30090
|
|
30091
|
+
# DEPRECATED: Please use compute#savedDisk instead. An instance-attached disk
|
30092
|
+
# resource.
|
30093
|
+
class SavedAttachedDisk
|
30094
|
+
include Google::Apis::Core::Hashable
|
30095
|
+
|
30096
|
+
# Specifies whether the disk will be auto-deleted when the instance is deleted (
|
30097
|
+
# but not when the disk is detached from the instance).
|
30098
|
+
# Corresponds to the JSON property `autoDelete`
|
30099
|
+
# @return [Boolean]
|
30100
|
+
attr_accessor :auto_delete
|
30101
|
+
alias_method :auto_delete?, :auto_delete
|
30102
|
+
|
30103
|
+
# Indicates that this is a boot disk. The virtual machine will use the first
|
30104
|
+
# partition of the disk for its root filesystem.
|
30105
|
+
# Corresponds to the JSON property `boot`
|
30106
|
+
# @return [Boolean]
|
30107
|
+
attr_accessor :boot
|
30108
|
+
alias_method :boot?, :boot
|
30109
|
+
|
30110
|
+
# Specifies the name of the disk attached to the source instance.
|
30111
|
+
# Corresponds to the JSON property `deviceName`
|
30112
|
+
# @return [String]
|
30113
|
+
attr_accessor :device_name
|
30114
|
+
|
30115
|
+
# The encryption key for the disk.
|
30116
|
+
# Corresponds to the JSON property `diskEncryptionKey`
|
30117
|
+
# @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
|
30118
|
+
attr_accessor :disk_encryption_key
|
30119
|
+
|
30120
|
+
# The size of the disk in base-2 GB.
|
30121
|
+
# Corresponds to the JSON property `diskSizeGb`
|
30122
|
+
# @return [Fixnum]
|
30123
|
+
attr_accessor :disk_size_gb
|
30124
|
+
|
30125
|
+
# [Output Only] URL of the disk type resource. For example: projects/project /
|
30126
|
+
# zones/zone/diskTypes/pd-standard or pd-ssd
|
30127
|
+
# Corresponds to the JSON property `diskType`
|
30128
|
+
# @return [String]
|
30129
|
+
attr_accessor :disk_type
|
30130
|
+
|
30131
|
+
# A list of features to enable on the guest operating system. Applicable only
|
30132
|
+
# for bootable images. Read Enabling guest operating system features to see a
|
30133
|
+
# list of available options.
|
30134
|
+
# Corresponds to the JSON property `guestOsFeatures`
|
30135
|
+
# @return [Array<Google::Apis::ComputeV1::GuestOsFeature>]
|
30136
|
+
attr_accessor :guest_os_features
|
30137
|
+
|
30138
|
+
# Specifies zero-based index of the disk that is attached to the source instance.
|
30139
|
+
# Corresponds to the JSON property `index`
|
30140
|
+
# @return [Fixnum]
|
30141
|
+
attr_accessor :index
|
30142
|
+
|
30143
|
+
# Specifies the disk interface to use for attaching this disk, which is either
|
30144
|
+
# SCSI or NVME.
|
30145
|
+
# Corresponds to the JSON property `interface`
|
30146
|
+
# @return [String]
|
30147
|
+
attr_accessor :interface
|
30148
|
+
|
30149
|
+
# [Output Only] Type of the resource. Always compute#attachedDisk for attached
|
30150
|
+
# disks.
|
30151
|
+
# Corresponds to the JSON property `kind`
|
30152
|
+
# @return [String]
|
30153
|
+
attr_accessor :kind
|
30154
|
+
|
30155
|
+
# [Output Only] Any valid publicly visible licenses.
|
30156
|
+
# Corresponds to the JSON property `licenses`
|
30157
|
+
# @return [Array<String>]
|
30158
|
+
attr_accessor :licenses
|
30159
|
+
|
30160
|
+
# The mode in which this disk is attached to the source instance, either
|
30161
|
+
# READ_WRITE or READ_ONLY.
|
30162
|
+
# Corresponds to the JSON property `mode`
|
30163
|
+
# @return [String]
|
30164
|
+
attr_accessor :mode
|
30165
|
+
|
30166
|
+
# Specifies a URL of the disk attached to the source instance.
|
30167
|
+
# Corresponds to the JSON property `source`
|
30168
|
+
# @return [String]
|
30169
|
+
attr_accessor :source
|
30170
|
+
|
30171
|
+
# [Output Only] A size of the storage used by the disk's snapshot by this
|
30172
|
+
# machine image.
|
30173
|
+
# Corresponds to the JSON property `storageBytes`
|
30174
|
+
# @return [Fixnum]
|
30175
|
+
attr_accessor :storage_bytes
|
30176
|
+
|
30177
|
+
# [Output Only] An indicator whether storageBytes is in a stable state or it is
|
30178
|
+
# being adjusted as a result of shared storage reallocation. This status can
|
30179
|
+
# either be UPDATING, meaning the size of the snapshot is being updated, or
|
30180
|
+
# UP_TO_DATE, meaning the size of the snapshot is up-to-date.
|
30181
|
+
# Corresponds to the JSON property `storageBytesStatus`
|
30182
|
+
# @return [String]
|
30183
|
+
attr_accessor :storage_bytes_status
|
30184
|
+
|
30185
|
+
# Specifies the type of the attached disk, either SCRATCH or PERSISTENT.
|
30186
|
+
# Corresponds to the JSON property `type`
|
30187
|
+
# @return [String]
|
30188
|
+
attr_accessor :type
|
30189
|
+
|
30190
|
+
def initialize(**args)
|
30191
|
+
update!(**args)
|
30192
|
+
end
|
30193
|
+
|
30194
|
+
# Update properties of this object
|
30195
|
+
def update!(**args)
|
30196
|
+
@auto_delete = args[:auto_delete] if args.key?(:auto_delete)
|
30197
|
+
@boot = args[:boot] if args.key?(:boot)
|
30198
|
+
@device_name = args[:device_name] if args.key?(:device_name)
|
30199
|
+
@disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
|
30200
|
+
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
30201
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
30202
|
+
@guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
|
30203
|
+
@index = args[:index] if args.key?(:index)
|
30204
|
+
@interface = args[:interface] if args.key?(:interface)
|
30205
|
+
@kind = args[:kind] if args.key?(:kind)
|
30206
|
+
@licenses = args[:licenses] if args.key?(:licenses)
|
30207
|
+
@mode = args[:mode] if args.key?(:mode)
|
30208
|
+
@source = args[:source] if args.key?(:source)
|
30209
|
+
@storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes)
|
30210
|
+
@storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status)
|
30211
|
+
@type = args[:type] if args.key?(:type)
|
30212
|
+
end
|
30213
|
+
end
|
30214
|
+
|
30215
|
+
# An instance-attached disk resource.
|
30216
|
+
class SavedDisk
|
30217
|
+
include Google::Apis::Core::Hashable
|
30218
|
+
|
30219
|
+
# [Output Only] Type of the resource. Always compute#savedDisk for attached
|
30220
|
+
# disks.
|
30221
|
+
# Corresponds to the JSON property `kind`
|
30222
|
+
# @return [String]
|
30223
|
+
attr_accessor :kind
|
30224
|
+
|
30225
|
+
# Specifies a URL of the disk attached to the source instance.
|
30226
|
+
# Corresponds to the JSON property `sourceDisk`
|
30227
|
+
# @return [String]
|
30228
|
+
attr_accessor :source_disk
|
30229
|
+
|
30230
|
+
# [Output Only] Size of the individual disk snapshot used by this machine image.
|
30231
|
+
# Corresponds to the JSON property `storageBytes`
|
30232
|
+
# @return [Fixnum]
|
30233
|
+
attr_accessor :storage_bytes
|
30234
|
+
|
30235
|
+
# [Output Only] An indicator whether storageBytes is in a stable state or it is
|
30236
|
+
# being adjusted as a result of shared storage reallocation. This status can
|
30237
|
+
# either be UPDATING, meaning the size of the snapshot is being updated, or
|
30238
|
+
# UP_TO_DATE, meaning the size of the snapshot is up-to-date.
|
30239
|
+
# Corresponds to the JSON property `storageBytesStatus`
|
30240
|
+
# @return [String]
|
30241
|
+
attr_accessor :storage_bytes_status
|
30242
|
+
|
30243
|
+
def initialize(**args)
|
30244
|
+
update!(**args)
|
30245
|
+
end
|
30246
|
+
|
30247
|
+
# Update properties of this object
|
30248
|
+
def update!(**args)
|
30249
|
+
@kind = args[:kind] if args.key?(:kind)
|
30250
|
+
@source_disk = args[:source_disk] if args.key?(:source_disk)
|
30251
|
+
@storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes)
|
30252
|
+
@storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status)
|
30253
|
+
end
|
30254
|
+
end
|
30255
|
+
|
29619
30256
|
#
|
29620
30257
|
class ScalingScheduleStatus
|
29621
30258
|
include Google::Apis::Core::Hashable
|
@@ -29665,6 +30302,11 @@ module Google
|
|
29665
30302
|
attr_accessor :automatic_restart
|
29666
30303
|
alias_method :automatic_restart?, :automatic_restart
|
29667
30304
|
|
30305
|
+
# Specifies the termination action for the instance.
|
30306
|
+
# Corresponds to the JSON property `instanceTerminationAction`
|
30307
|
+
# @return [String]
|
30308
|
+
attr_accessor :instance_termination_action
|
30309
|
+
|
29668
30310
|
# An opaque location hint used to place the instance close to other resources.
|
29669
30311
|
# This field is for use by internal tools that use the public API.
|
29670
30312
|
# Corresponds to the JSON property `locationHint`
|
@@ -29685,8 +30327,8 @@ module Google
|
|
29685
30327
|
|
29686
30328
|
# Defines the maintenance behavior for this instance. For standard instances,
|
29687
30329
|
# the default behavior is MIGRATE. For preemptible instances, the default and
|
29688
|
-
# only possible behavior is TERMINATE. For more information, see
|
29689
|
-
#
|
30330
|
+
# only possible behavior is TERMINATE. For more information, see Set VM
|
30331
|
+
# availability policies.
|
29690
30332
|
# Corresponds to the JSON property `onHostMaintenance`
|
29691
30333
|
# @return [String]
|
29692
30334
|
attr_accessor :on_host_maintenance
|
@@ -29700,6 +30342,11 @@ module Google
|
|
29700
30342
|
attr_accessor :preemptible
|
29701
30343
|
alias_method :preemptible?, :preemptible
|
29702
30344
|
|
30345
|
+
# Specifies the provisioning model of the instance.
|
30346
|
+
# Corresponds to the JSON property `provisioningModel`
|
30347
|
+
# @return [String]
|
30348
|
+
attr_accessor :provisioning_model
|
30349
|
+
|
29703
30350
|
def initialize(**args)
|
29704
30351
|
update!(**args)
|
29705
30352
|
end
|
@@ -29707,11 +30354,13 @@ module Google
|
|
29707
30354
|
# Update properties of this object
|
29708
30355
|
def update!(**args)
|
29709
30356
|
@automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
|
30357
|
+
@instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action)
|
29710
30358
|
@location_hint = args[:location_hint] if args.key?(:location_hint)
|
29711
30359
|
@min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
|
29712
30360
|
@node_affinities = args[:node_affinities] if args.key?(:node_affinities)
|
29713
30361
|
@on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance)
|
29714
30362
|
@preemptible = args[:preemptible] if args.key?(:preemptible)
|
30363
|
+
@provisioning_model = args[:provisioning_model] if args.key?(:provisioning_model)
|
29715
30364
|
end
|
29716
30365
|
end
|
29717
30366
|
|
@@ -29873,6 +30522,11 @@ module Google
|
|
29873
30522
|
# @return [String]
|
29874
30523
|
attr_accessor :name
|
29875
30524
|
|
30525
|
+
#
|
30526
|
+
# Corresponds to the JSON property `recaptchaOptionsConfig`
|
30527
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRecaptchaOptionsConfig]
|
30528
|
+
attr_accessor :recaptcha_options_config
|
30529
|
+
|
29876
30530
|
# A list of rules that belong to this policy. There must always be a default
|
29877
30531
|
# rule (rule with priority 2147483647 and match "*"). If no rules are provided
|
29878
30532
|
# when creating a security policy, a default rule with action "allow" will be
|
@@ -29911,6 +30565,7 @@ module Google
|
|
29911
30565
|
@id = args[:id] if args.key?(:id)
|
29912
30566
|
@kind = args[:kind] if args.key?(:kind)
|
29913
30567
|
@name = args[:name] if args.key?(:name)
|
30568
|
+
@recaptcha_options_config = args[:recaptcha_options_config] if args.key?(:recaptcha_options_config)
|
29914
30569
|
@rules = args[:rules] if args.key?(:rules)
|
29915
30570
|
@self_link = args[:self_link] if args.key?(:self_link)
|
29916
30571
|
@type = args[:type] if args.key?(:type)
|
@@ -30100,6 +30755,29 @@ module Google
|
|
30100
30755
|
end
|
30101
30756
|
end
|
30102
30757
|
|
30758
|
+
#
|
30759
|
+
class SecurityPolicyRecaptchaOptionsConfig
|
30760
|
+
include Google::Apis::Core::Hashable
|
30761
|
+
|
30762
|
+
# An optional field to supply a reCAPTCHA site key to be used for all the rules
|
30763
|
+
# using the redirect action with the type of GOOGLE_RECAPTCHA under the security
|
30764
|
+
# policy. The specified site key needs to be created from the reCAPTCHA API. The
|
30765
|
+
# user is responsible for the validity of the specified site key. If not
|
30766
|
+
# specified, a Google-managed site key is used.
|
30767
|
+
# Corresponds to the JSON property `redirectSiteKey`
|
30768
|
+
# @return [String]
|
30769
|
+
attr_accessor :redirect_site_key
|
30770
|
+
|
30771
|
+
def initialize(**args)
|
30772
|
+
update!(**args)
|
30773
|
+
end
|
30774
|
+
|
30775
|
+
# Update properties of this object
|
30776
|
+
def update!(**args)
|
30777
|
+
@redirect_site_key = args[:redirect_site_key] if args.key?(:redirect_site_key)
|
30778
|
+
end
|
30779
|
+
end
|
30780
|
+
|
30103
30781
|
#
|
30104
30782
|
class SecurityPolicyReference
|
30105
30783
|
include Google::Apis::Core::Hashable
|
@@ -30124,9 +30802,17 @@ module Google
|
|
30124
30802
|
class SecurityPolicyRule
|
30125
30803
|
include Google::Apis::Core::Hashable
|
30126
30804
|
|
30127
|
-
# The Action to perform when the
|
30128
|
-
#
|
30129
|
-
# 404, and 502.
|
30805
|
+
# The Action to perform when the rule is matched. The following are the valid
|
30806
|
+
# actions: - allow: allow access to target. - deny(): deny access to target,
|
30807
|
+
# returns the HTTP response code specified (valid values are 403, 404, and 502).
|
30808
|
+
# - rate_based_ban: limit client traffic to the configured threshold and ban the
|
30809
|
+
# client if the traffic exceeds the threshold. Configure parameters for this
|
30810
|
+
# action in RateLimitOptions. Requires rate_limit_options to be set. - redirect:
|
30811
|
+
# redirect to a different target. This can either be an internal reCAPTCHA
|
30812
|
+
# redirect, or an external URL-based redirect via a 302 response. Parameters for
|
30813
|
+
# this action can be configured via redirectOptions. - throttle: limit client
|
30814
|
+
# traffic to the configured threshold. Configure parameters for this action in
|
30815
|
+
# rateLimitOptions. Requires rate_limit_options to be set for this.
|
30130
30816
|
# Corresponds to the JSON property `action`
|
30131
30817
|
# @return [String]
|
30132
30818
|
attr_accessor :action
|
@@ -30137,6 +30823,11 @@ module Google
|
|
30137
30823
|
# @return [String]
|
30138
30824
|
attr_accessor :description
|
30139
30825
|
|
30826
|
+
# Optional, additional actions that are performed on headers.
|
30827
|
+
# Corresponds to the JSON property `headerAction`
|
30828
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleHttpHeaderAction]
|
30829
|
+
attr_accessor :header_action
|
30830
|
+
|
30140
30831
|
# [Output only] Type of the resource. Always compute#securityPolicyRule for
|
30141
30832
|
# security policy rules
|
30142
30833
|
# Corresponds to the JSON property `kind`
|
@@ -30163,6 +30854,18 @@ module Google
|
|
30163
30854
|
# @return [Fixnum]
|
30164
30855
|
attr_accessor :priority
|
30165
30856
|
|
30857
|
+
# Must be specified if the action is "rate_based_ban" or "throttle". Cannot be
|
30858
|
+
# specified for any other actions.
|
30859
|
+
# Corresponds to the JSON property `rateLimitOptions`
|
30860
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRateLimitOptions]
|
30861
|
+
attr_accessor :rate_limit_options
|
30862
|
+
|
30863
|
+
# Parameters defining the redirect action. Cannot be specified for any other
|
30864
|
+
# actions.
|
30865
|
+
# Corresponds to the JSON property `redirectOptions`
|
30866
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRedirectOptions]
|
30867
|
+
attr_accessor :redirect_options
|
30868
|
+
|
30166
30869
|
def initialize(**args)
|
30167
30870
|
update!(**args)
|
30168
30871
|
end
|
@@ -30171,10 +30874,57 @@ module Google
|
|
30171
30874
|
def update!(**args)
|
30172
30875
|
@action = args[:action] if args.key?(:action)
|
30173
30876
|
@description = args[:description] if args.key?(:description)
|
30877
|
+
@header_action = args[:header_action] if args.key?(:header_action)
|
30174
30878
|
@kind = args[:kind] if args.key?(:kind)
|
30175
30879
|
@match = args[:match] if args.key?(:match)
|
30176
30880
|
@preview = args[:preview] if args.key?(:preview)
|
30177
30881
|
@priority = args[:priority] if args.key?(:priority)
|
30882
|
+
@rate_limit_options = args[:rate_limit_options] if args.key?(:rate_limit_options)
|
30883
|
+
@redirect_options = args[:redirect_options] if args.key?(:redirect_options)
|
30884
|
+
end
|
30885
|
+
end
|
30886
|
+
|
30887
|
+
#
|
30888
|
+
class SecurityPolicyRuleHttpHeaderAction
|
30889
|
+
include Google::Apis::Core::Hashable
|
30890
|
+
|
30891
|
+
# The list of request headers to add or overwrite if they're already present.
|
30892
|
+
# Corresponds to the JSON property `requestHeadersToAdds`
|
30893
|
+
# @return [Array<Google::Apis::ComputeV1::SecurityPolicyRuleHttpHeaderActionHttpHeaderOption>]
|
30894
|
+
attr_accessor :request_headers_to_adds
|
30895
|
+
|
30896
|
+
def initialize(**args)
|
30897
|
+
update!(**args)
|
30898
|
+
end
|
30899
|
+
|
30900
|
+
# Update properties of this object
|
30901
|
+
def update!(**args)
|
30902
|
+
@request_headers_to_adds = args[:request_headers_to_adds] if args.key?(:request_headers_to_adds)
|
30903
|
+
end
|
30904
|
+
end
|
30905
|
+
|
30906
|
+
#
|
30907
|
+
class SecurityPolicyRuleHttpHeaderActionHttpHeaderOption
|
30908
|
+
include Google::Apis::Core::Hashable
|
30909
|
+
|
30910
|
+
# The name of the header to set.
|
30911
|
+
# Corresponds to the JSON property `headerName`
|
30912
|
+
# @return [String]
|
30913
|
+
attr_accessor :header_name
|
30914
|
+
|
30915
|
+
# The value to set the named header to.
|
30916
|
+
# Corresponds to the JSON property `headerValue`
|
30917
|
+
# @return [String]
|
30918
|
+
attr_accessor :header_value
|
30919
|
+
|
30920
|
+
def initialize(**args)
|
30921
|
+
update!(**args)
|
30922
|
+
end
|
30923
|
+
|
30924
|
+
# Update properties of this object
|
30925
|
+
def update!(**args)
|
30926
|
+
@header_name = args[:header_name] if args.key?(:header_name)
|
30927
|
+
@header_value = args[:header_value] if args.key?(:header_value)
|
30178
30928
|
end
|
30179
30929
|
end
|
30180
30930
|
|
@@ -30248,6 +30998,144 @@ module Google
|
|
30248
30998
|
end
|
30249
30999
|
end
|
30250
31000
|
|
31001
|
+
#
|
31002
|
+
class SecurityPolicyRuleRateLimitOptions
|
31003
|
+
include Google::Apis::Core::Hashable
|
31004
|
+
|
31005
|
+
# Can only be specified if the action for the rule is "rate_based_ban". If
|
31006
|
+
# specified, determines the time (in seconds) the traffic will continue to be
|
31007
|
+
# banned by the rate limit after the rate falls below the threshold.
|
31008
|
+
# Corresponds to the JSON property `banDurationSec`
|
31009
|
+
# @return [Fixnum]
|
31010
|
+
attr_accessor :ban_duration_sec
|
31011
|
+
|
31012
|
+
# Can only be specified if the action for the rule is "rate_based_ban". If
|
31013
|
+
# specified, the key will be banned for the configured 'ban_duration_sec' when
|
31014
|
+
# the number of requests that exceed the 'rate_limit_threshold' also exceed this
|
31015
|
+
# 'ban_threshold'.
|
31016
|
+
# Corresponds to the JSON property `banThreshold`
|
31017
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRateLimitOptionsThreshold]
|
31018
|
+
attr_accessor :ban_threshold
|
31019
|
+
|
31020
|
+
# Action to take for requests that are under the configured rate limit threshold.
|
31021
|
+
# Valid option is "allow" only.
|
31022
|
+
# Corresponds to the JSON property `conformAction`
|
31023
|
+
# @return [String]
|
31024
|
+
attr_accessor :conform_action
|
31025
|
+
|
31026
|
+
# Determines the key to enforce the rate_limit_threshold on. Possible values are:
|
31027
|
+
# - ALL: A single rate limit threshold is applied to all the requests matching
|
31028
|
+
# this rule. This is the default value if this field 'enforce_on_key' is not
|
31029
|
+
# configured. - IP: The source IP address of the request is the key. Each IP has
|
31030
|
+
# this limit enforced separately. - HTTP_HEADER: The value of the HTTP header
|
31031
|
+
# whose name is configured under "enforce_on_key_name". The key value is
|
31032
|
+
# truncated to the first 128 bytes of the header value. If no such header is
|
31033
|
+
# present in the request, the key type defaults to ALL. - XFF_IP: The first IP
|
31034
|
+
# address (i.e. the originating client IP address) specified in the list of IPs
|
31035
|
+
# under X-Forwarded-For HTTP header. If no such header is present or the value
|
31036
|
+
# is not a valid IP, the key type defaults to ALL. - HTTP_COOKIE: The value of
|
31037
|
+
# the HTTP cookie whose name is configured under "enforce_on_key_name". The key
|
31038
|
+
# value is truncated to the first 128 bytes of the cookie value. If no such
|
31039
|
+
# cookie is present in the request, the key type defaults to ALL.
|
31040
|
+
# Corresponds to the JSON property `enforceOnKey`
|
31041
|
+
# @return [String]
|
31042
|
+
attr_accessor :enforce_on_key
|
31043
|
+
|
31044
|
+
# Rate limit key name applicable only for the following key types: HTTP_HEADER --
|
31045
|
+
# Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE --
|
31046
|
+
# Name of the HTTP cookie whose value is taken as the key value.
|
31047
|
+
# Corresponds to the JSON property `enforceOnKeyName`
|
31048
|
+
# @return [String]
|
31049
|
+
attr_accessor :enforce_on_key_name
|
31050
|
+
|
31051
|
+
# Action to take for requests that are above the configured rate limit threshold,
|
31052
|
+
# to either deny with a specified HTTP response code, or redirect to a
|
31053
|
+
# different endpoint. Valid options are "deny()" where valid values for status
|
31054
|
+
# are 403, 404, 429, and 502, and "redirect" where the redirect parameters come
|
31055
|
+
# from exceed_redirect_options below.
|
31056
|
+
# Corresponds to the JSON property `exceedAction`
|
31057
|
+
# @return [String]
|
31058
|
+
attr_accessor :exceed_action
|
31059
|
+
|
31060
|
+
# Parameters defining the redirect action that is used as the exceed action.
|
31061
|
+
# Cannot be specified if the exceed action is not redirect.
|
31062
|
+
# Corresponds to the JSON property `exceedRedirectOptions`
|
31063
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRedirectOptions]
|
31064
|
+
attr_accessor :exceed_redirect_options
|
31065
|
+
|
31066
|
+
# Threshold at which to begin ratelimiting.
|
31067
|
+
# Corresponds to the JSON property `rateLimitThreshold`
|
31068
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRateLimitOptionsThreshold]
|
31069
|
+
attr_accessor :rate_limit_threshold
|
31070
|
+
|
31071
|
+
def initialize(**args)
|
31072
|
+
update!(**args)
|
31073
|
+
end
|
31074
|
+
|
31075
|
+
# Update properties of this object
|
31076
|
+
def update!(**args)
|
31077
|
+
@ban_duration_sec = args[:ban_duration_sec] if args.key?(:ban_duration_sec)
|
31078
|
+
@ban_threshold = args[:ban_threshold] if args.key?(:ban_threshold)
|
31079
|
+
@conform_action = args[:conform_action] if args.key?(:conform_action)
|
31080
|
+
@enforce_on_key = args[:enforce_on_key] if args.key?(:enforce_on_key)
|
31081
|
+
@enforce_on_key_name = args[:enforce_on_key_name] if args.key?(:enforce_on_key_name)
|
31082
|
+
@exceed_action = args[:exceed_action] if args.key?(:exceed_action)
|
31083
|
+
@exceed_redirect_options = args[:exceed_redirect_options] if args.key?(:exceed_redirect_options)
|
31084
|
+
@rate_limit_threshold = args[:rate_limit_threshold] if args.key?(:rate_limit_threshold)
|
31085
|
+
end
|
31086
|
+
end
|
31087
|
+
|
31088
|
+
#
|
31089
|
+
class SecurityPolicyRuleRateLimitOptionsThreshold
|
31090
|
+
include Google::Apis::Core::Hashable
|
31091
|
+
|
31092
|
+
# Number of HTTP(S) requests for calculating the threshold.
|
31093
|
+
# Corresponds to the JSON property `count`
|
31094
|
+
# @return [Fixnum]
|
31095
|
+
attr_accessor :count
|
31096
|
+
|
31097
|
+
# Interval over which the threshold is computed.
|
31098
|
+
# Corresponds to the JSON property `intervalSec`
|
31099
|
+
# @return [Fixnum]
|
31100
|
+
attr_accessor :interval_sec
|
31101
|
+
|
31102
|
+
def initialize(**args)
|
31103
|
+
update!(**args)
|
31104
|
+
end
|
31105
|
+
|
31106
|
+
# Update properties of this object
|
31107
|
+
def update!(**args)
|
31108
|
+
@count = args[:count] if args.key?(:count)
|
31109
|
+
@interval_sec = args[:interval_sec] if args.key?(:interval_sec)
|
31110
|
+
end
|
31111
|
+
end
|
31112
|
+
|
31113
|
+
#
|
31114
|
+
class SecurityPolicyRuleRedirectOptions
|
31115
|
+
include Google::Apis::Core::Hashable
|
31116
|
+
|
31117
|
+
# Target for the redirect action. This is required if the type is EXTERNAL_302
|
31118
|
+
# and cannot be specified for GOOGLE_RECAPTCHA.
|
31119
|
+
# Corresponds to the JSON property `target`
|
31120
|
+
# @return [String]
|
31121
|
+
attr_accessor :target
|
31122
|
+
|
31123
|
+
# Type of the redirect action.
|
31124
|
+
# Corresponds to the JSON property `type`
|
31125
|
+
# @return [String]
|
31126
|
+
attr_accessor :type
|
31127
|
+
|
31128
|
+
def initialize(**args)
|
31129
|
+
update!(**args)
|
31130
|
+
end
|
31131
|
+
|
31132
|
+
# Update properties of this object
|
31133
|
+
def update!(**args)
|
31134
|
+
@target = args[:target] if args.key?(:target)
|
31135
|
+
@type = args[:type] if args.key?(:type)
|
31136
|
+
end
|
31137
|
+
end
|
31138
|
+
|
30251
31139
|
# The authentication and authorization settings for a BackendService.
|
30252
31140
|
class SecuritySettings
|
30253
31141
|
include Google::Apis::Core::Hashable
|
@@ -30425,6 +31313,13 @@ module Google
|
|
30425
31313
|
# @return [String]
|
30426
31314
|
attr_accessor :description
|
30427
31315
|
|
31316
|
+
# If specified, the domain name will be used during the integration between the
|
31317
|
+
# PSC connected endpoints and the Cloud DNS. For example, this is a valid domain
|
31318
|
+
# name: "p.mycompany.com.". Current max number of domain names supported is 1.
|
31319
|
+
# Corresponds to the JSON property `domainNames`
|
31320
|
+
# @return [Array<String>]
|
31321
|
+
attr_accessor :domain_names
|
31322
|
+
|
30428
31323
|
# If true, enable the proxy protocol which is for supplying client TCP/IP
|
30429
31324
|
# address data in TCP connections that traverse proxies on their way to
|
30430
31325
|
# destination servers.
|
@@ -30513,6 +31408,7 @@ module Google
|
|
30513
31408
|
@consumer_reject_lists = args[:consumer_reject_lists] if args.key?(:consumer_reject_lists)
|
30514
31409
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
30515
31410
|
@description = args[:description] if args.key?(:description)
|
31411
|
+
@domain_names = args[:domain_names] if args.key?(:domain_names)
|
30516
31412
|
@enable_proxy_protocol = args[:enable_proxy_protocol] if args.key?(:enable_proxy_protocol)
|
30517
31413
|
@fingerprint = args[:fingerprint] if args.key?(:fingerprint)
|
30518
31414
|
@id = args[:id] if args.key?(:id)
|
@@ -31426,6 +32322,35 @@ module Google
|
|
31426
32322
|
end
|
31427
32323
|
end
|
31428
32324
|
|
32325
|
+
#
|
32326
|
+
class SourceDiskEncryptionKey
|
32327
|
+
include Google::Apis::Core::Hashable
|
32328
|
+
|
32329
|
+
# The customer-supplied encryption key of the source disk. Required if the
|
32330
|
+
# source disk is protected by a customer-supplied encryption key.
|
32331
|
+
# Corresponds to the JSON property `diskEncryptionKey`
|
32332
|
+
# @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
|
32333
|
+
attr_accessor :disk_encryption_key
|
32334
|
+
|
32335
|
+
# URL of the disk attached to the source instance. This can be a full or valid
|
32336
|
+
# partial URL. For example, the following are valid values: - https://www.
|
32337
|
+
# googleapis.com/compute/v1/projects/project/zones/zone /disks/disk - projects/
|
32338
|
+
# project/zones/zone/disks/disk - zones/zone/disks/disk
|
32339
|
+
# Corresponds to the JSON property `sourceDisk`
|
32340
|
+
# @return [String]
|
32341
|
+
attr_accessor :source_disk
|
32342
|
+
|
32343
|
+
def initialize(**args)
|
32344
|
+
update!(**args)
|
32345
|
+
end
|
32346
|
+
|
32347
|
+
# Update properties of this object
|
32348
|
+
def update!(**args)
|
32349
|
+
@disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
|
32350
|
+
@source_disk = args[:source_disk] if args.key?(:source_disk)
|
32351
|
+
end
|
32352
|
+
end
|
32353
|
+
|
31429
32354
|
# A specification of the parameters to use when creating the instance template
|
31430
32355
|
# from a source instance.
|
31431
32356
|
class SourceInstanceParams
|
@@ -31449,6 +32374,116 @@ module Google
|
|
31449
32374
|
end
|
31450
32375
|
end
|
31451
32376
|
|
32377
|
+
# DEPRECATED: Please use compute#instanceProperties instead. New properties will
|
32378
|
+
# not be added to this field.
|
32379
|
+
class SourceInstanceProperties
|
32380
|
+
include Google::Apis::Core::Hashable
|
32381
|
+
|
32382
|
+
# Enables instances created based on this machine image to send packets with
|
32383
|
+
# source IP addresses other than their own and receive packets with destination
|
32384
|
+
# IP addresses other than their own. If these instances will be used as an IP
|
32385
|
+
# gateway or it will be set as the next-hop in a Route resource, specify true.
|
32386
|
+
# If unsure, leave this set to false. See the Enable IP forwarding documentation
|
32387
|
+
# for more information.
|
32388
|
+
# Corresponds to the JSON property `canIpForward`
|
32389
|
+
# @return [Boolean]
|
32390
|
+
attr_accessor :can_ip_forward
|
32391
|
+
alias_method :can_ip_forward?, :can_ip_forward
|
32392
|
+
|
32393
|
+
# Whether the instance created from this machine image should be protected
|
32394
|
+
# against deletion.
|
32395
|
+
# Corresponds to the JSON property `deletionProtection`
|
32396
|
+
# @return [Boolean]
|
32397
|
+
attr_accessor :deletion_protection
|
32398
|
+
alias_method :deletion_protection?, :deletion_protection
|
32399
|
+
|
32400
|
+
# An optional text description for the instances that are created from this
|
32401
|
+
# machine image.
|
32402
|
+
# Corresponds to the JSON property `description`
|
32403
|
+
# @return [String]
|
32404
|
+
attr_accessor :description
|
32405
|
+
|
32406
|
+
# An array of disks that are associated with the instances that are created from
|
32407
|
+
# this machine image.
|
32408
|
+
# Corresponds to the JSON property `disks`
|
32409
|
+
# @return [Array<Google::Apis::ComputeV1::SavedAttachedDisk>]
|
32410
|
+
attr_accessor :disks
|
32411
|
+
|
32412
|
+
# A list of guest accelerator cards' type and count to use for instances created
|
32413
|
+
# from this machine image.
|
32414
|
+
# Corresponds to the JSON property `guestAccelerators`
|
32415
|
+
# @return [Array<Google::Apis::ComputeV1::AcceleratorConfig>]
|
32416
|
+
attr_accessor :guest_accelerators
|
32417
|
+
|
32418
|
+
# Labels to apply to instances that are created from this machine image.
|
32419
|
+
# Corresponds to the JSON property `labels`
|
32420
|
+
# @return [Hash<String,String>]
|
32421
|
+
attr_accessor :labels
|
32422
|
+
|
32423
|
+
# The machine type to use for instances that are created from this machine image.
|
32424
|
+
# Corresponds to the JSON property `machineType`
|
32425
|
+
# @return [String]
|
32426
|
+
attr_accessor :machine_type
|
32427
|
+
|
32428
|
+
# A metadata key/value entry.
|
32429
|
+
# Corresponds to the JSON property `metadata`
|
32430
|
+
# @return [Google::Apis::ComputeV1::Metadata]
|
32431
|
+
attr_accessor :metadata
|
32432
|
+
|
32433
|
+
# Minimum cpu/platform to be used by instances created from this machine image.
|
32434
|
+
# The instance may be scheduled on the specified or newer cpu/platform.
|
32435
|
+
# Applicable values are the friendly names of CPU platforms, such as
|
32436
|
+
# minCpuPlatform: "Intel Haswell" or minCpuPlatform: "Intel Sandy Bridge". For
|
32437
|
+
# more information, read Specifying a Minimum CPU Platform.
|
32438
|
+
# Corresponds to the JSON property `minCpuPlatform`
|
32439
|
+
# @return [String]
|
32440
|
+
attr_accessor :min_cpu_platform
|
32441
|
+
|
32442
|
+
# An array of network access configurations for this interface.
|
32443
|
+
# Corresponds to the JSON property `networkInterfaces`
|
32444
|
+
# @return [Array<Google::Apis::ComputeV1::NetworkInterface>]
|
32445
|
+
attr_accessor :network_interfaces
|
32446
|
+
|
32447
|
+
# Sets the scheduling options for an Instance. NextID: 21
|
32448
|
+
# Corresponds to the JSON property `scheduling`
|
32449
|
+
# @return [Google::Apis::ComputeV1::Scheduling]
|
32450
|
+
attr_accessor :scheduling
|
32451
|
+
|
32452
|
+
# A list of service accounts with specified scopes. Access tokens for these
|
32453
|
+
# service accounts are available to the instances that are created from this
|
32454
|
+
# machine image. Use metadata queries to obtain the access tokens for these
|
32455
|
+
# instances.
|
32456
|
+
# Corresponds to the JSON property `serviceAccounts`
|
32457
|
+
# @return [Array<Google::Apis::ComputeV1::ServiceAccount>]
|
32458
|
+
attr_accessor :service_accounts
|
32459
|
+
|
32460
|
+
# A set of instance tags.
|
32461
|
+
# Corresponds to the JSON property `tags`
|
32462
|
+
# @return [Google::Apis::ComputeV1::Tags]
|
32463
|
+
attr_accessor :tags
|
32464
|
+
|
32465
|
+
def initialize(**args)
|
32466
|
+
update!(**args)
|
32467
|
+
end
|
32468
|
+
|
32469
|
+
# Update properties of this object
|
32470
|
+
def update!(**args)
|
32471
|
+
@can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
|
32472
|
+
@deletion_protection = args[:deletion_protection] if args.key?(:deletion_protection)
|
32473
|
+
@description = args[:description] if args.key?(:description)
|
32474
|
+
@disks = args[:disks] if args.key?(:disks)
|
32475
|
+
@guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
|
32476
|
+
@labels = args[:labels] if args.key?(:labels)
|
32477
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
32478
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
32479
|
+
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
|
32480
|
+
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
32481
|
+
@scheduling = args[:scheduling] if args.key?(:scheduling)
|
32482
|
+
@service_accounts = args[:service_accounts] if args.key?(:service_accounts)
|
32483
|
+
@tags = args[:tags] if args.key?(:tags)
|
32484
|
+
end
|
32485
|
+
end
|
32486
|
+
|
31452
32487
|
# Represents an SSL Certificate resource. Google Compute Engine has two SSL
|
31453
32488
|
# Certificate resources: * [Global](/compute/docs/reference/rest/v1/
|
31454
32489
|
# sslCertificates) * [Regional](/compute/docs/reference/rest/v1/
|
@@ -32433,7 +33468,7 @@ module Google
|
|
32433
33468
|
attr_accessor :ipv6_access_type
|
32434
33469
|
|
32435
33470
|
# [Output Only] The range of internal IPv6 addresses that are owned by this
|
32436
|
-
# subnetwork.
|
33471
|
+
# subnetwork. Note this will be for private google access only eventually.
|
32437
33472
|
# Corresponds to the JSON property `ipv6CidrRange`
|
32438
33473
|
# @return [String]
|
32439
33474
|
attr_accessor :ipv6_cidr_range
|
@@ -37575,6 +38610,12 @@ module Google
|
|
37575
38610
|
# @return [String]
|
37576
38611
|
attr_accessor :self_link
|
37577
38612
|
|
38613
|
+
# The stack type for this VPN gateway to identify the IP protocols that are
|
38614
|
+
# enabled. If not specified, IPV4_ONLY will be used.
|
38615
|
+
# Corresponds to the JSON property `stackType`
|
38616
|
+
# @return [String]
|
38617
|
+
attr_accessor :stack_type
|
38618
|
+
|
37578
38619
|
# The list of VPN interfaces associated with this VPN gateway.
|
37579
38620
|
# Corresponds to the JSON property `vpnInterfaces`
|
37580
38621
|
# @return [Array<Google::Apis::ComputeV1::VpnGatewayVpnGatewayInterface>]
|
@@ -37596,6 +38637,7 @@ module Google
|
|
37596
38637
|
@network = args[:network] if args.key?(:network)
|
37597
38638
|
@region = args[:region] if args.key?(:region)
|
37598
38639
|
@self_link = args[:self_link] if args.key?(:self_link)
|
38640
|
+
@stack_type = args[:stack_type] if args.key?(:stack_type)
|
37599
38641
|
@vpn_interfaces = args[:vpn_interfaces] if args.key?(:vpn_interfaces)
|
37600
38642
|
end
|
37601
38643
|
end
|