google-apis-compute_v1 0.76.0 → 0.78.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/google/apis/compute_v1/classes.rb +398 -99
- data/lib/google/apis/compute_v1/gem_version.rb +2 -2
- data/lib/google/apis/compute_v1/representations.rb +106 -0
- data/lib/google/apis/compute_v1/service.rb +220 -0
- metadata +4 -4
@@ -567,6 +567,12 @@ module Google
|
|
567
567
|
# @return [String]
|
568
568
|
attr_accessor :public_ptr_domain_name
|
569
569
|
|
570
|
+
# [Output Only] The resource URL for the security policy associated with this
|
571
|
+
# access config.
|
572
|
+
# Corresponds to the JSON property `securityPolicy`
|
573
|
+
# @return [String]
|
574
|
+
attr_accessor :security_policy
|
575
|
+
|
570
576
|
# Specifies whether a public DNS 'PTR' record should be created to map the
|
571
577
|
# external IP address of the instance to a DNS domain name. This field is not
|
572
578
|
# used in ipv6AccessConfig. A default PTR record will be created if the VM has
|
@@ -596,6 +602,7 @@ module Google
|
|
596
602
|
@nat_ip = args[:nat_ip] if args.key?(:nat_ip)
|
597
603
|
@network_tier = args[:network_tier] if args.key?(:network_tier)
|
598
604
|
@public_ptr_domain_name = args[:public_ptr_domain_name] if args.key?(:public_ptr_domain_name)
|
605
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
599
606
|
@set_public_ptr = args[:set_public_ptr] if args.key?(:set_public_ptr)
|
600
607
|
@type = args[:type] if args.key?(:type)
|
601
608
|
end
|
@@ -2616,7 +2623,7 @@ module Google
|
|
2616
2623
|
attr_accessor :schedule
|
2617
2624
|
|
2618
2625
|
# The time zone to use when interpreting the schedule. The value of this field
|
2619
|
-
# must be a time zone name from the tz database:
|
2626
|
+
# must be a time zone name from the tz database: https://en.wikipedia.org/wiki/
|
2620
2627
|
# Tz_database. This field is assigned a default value of “UTC” if left empty.
|
2621
2628
|
# Corresponds to the JSON property `timeZone`
|
2622
2629
|
# @return [String]
|
@@ -4930,6 +4937,50 @@ module Google
|
|
4930
4937
|
end
|
4931
4938
|
end
|
4932
4939
|
|
4940
|
+
#
|
4941
|
+
class BulkInsertOperationStatus
|
4942
|
+
include Google::Apis::Core::Hashable
|
4943
|
+
|
4944
|
+
# [Output Only] Count of VMs successfully created so far.
|
4945
|
+
# Corresponds to the JSON property `createdVmCount`
|
4946
|
+
# @return [Fixnum]
|
4947
|
+
attr_accessor :created_vm_count
|
4948
|
+
|
4949
|
+
# [Output Only] Count of VMs that got deleted during rollback.
|
4950
|
+
# Corresponds to the JSON property `deletedVmCount`
|
4951
|
+
# @return [Fixnum]
|
4952
|
+
attr_accessor :deleted_vm_count
|
4953
|
+
|
4954
|
+
# [Output Only] Count of VMs that started creating but encountered an error.
|
4955
|
+
# Corresponds to the JSON property `failedToCreateVmCount`
|
4956
|
+
# @return [Fixnum]
|
4957
|
+
attr_accessor :failed_to_create_vm_count
|
4958
|
+
|
4959
|
+
# [Output Only] Creation status of BulkInsert operation - information if the
|
4960
|
+
# flow is rolling forward or rolling back.
|
4961
|
+
# Corresponds to the JSON property `status`
|
4962
|
+
# @return [String]
|
4963
|
+
attr_accessor :status
|
4964
|
+
|
4965
|
+
# [Output Only] Count of VMs originally planned to be created.
|
4966
|
+
# Corresponds to the JSON property `targetVmCount`
|
4967
|
+
# @return [Fixnum]
|
4968
|
+
attr_accessor :target_vm_count
|
4969
|
+
|
4970
|
+
def initialize(**args)
|
4971
|
+
update!(**args)
|
4972
|
+
end
|
4973
|
+
|
4974
|
+
# Update properties of this object
|
4975
|
+
def update!(**args)
|
4976
|
+
@created_vm_count = args[:created_vm_count] if args.key?(:created_vm_count)
|
4977
|
+
@deleted_vm_count = args[:deleted_vm_count] if args.key?(:deleted_vm_count)
|
4978
|
+
@failed_to_create_vm_count = args[:failed_to_create_vm_count] if args.key?(:failed_to_create_vm_count)
|
4979
|
+
@status = args[:status] if args.key?(:status)
|
4980
|
+
@target_vm_count = args[:target_vm_count] if args.key?(:target_vm_count)
|
4981
|
+
end
|
4982
|
+
end
|
4983
|
+
|
4933
4984
|
#
|
4934
4985
|
class CacheInvalidationRule
|
4935
4986
|
include Google::Apis::Core::Hashable
|
@@ -6152,7 +6203,7 @@ module Google
|
|
6152
6203
|
# a persistent disk using the sourceImage, sourceSnapshot, or sourceDisk
|
6153
6204
|
# parameter, or specify it alone to create an empty persistent disk. If you
|
6154
6205
|
# specify this field along with a source, the value of sizeGb must not be less
|
6155
|
-
# than the size of the source. Acceptable values are
|
6206
|
+
# than the size of the source. Acceptable values are greater than 0.
|
6156
6207
|
# Corresponds to the JSON property `sizeGb`
|
6157
6208
|
# @return [Fixnum]
|
6158
6209
|
attr_accessor :size_gb
|
@@ -12310,8 +12361,8 @@ module Google
|
|
12310
12361
|
# weightedBackendServices, service must not be set. Conversely if service is set,
|
12311
12362
|
# routeAction cannot contain any weightedBackendServices. Only one of
|
12312
12363
|
# urlRedirect, service or routeAction.weightedBackendService must be set. URL
|
12313
|
-
# maps for
|
12314
|
-
#
|
12364
|
+
# maps for classic Application Load Balancers only support the urlRewrite action
|
12365
|
+
# within a route rule's routeAction.
|
12315
12366
|
# Corresponds to the JSON property `routeAction`
|
12316
12367
|
# @return [Google::Apis::ComputeV1::HttpRouteAction]
|
12317
12368
|
attr_accessor :route_action
|
@@ -16744,6 +16795,26 @@ module Google
|
|
16744
16795
|
end
|
16745
16796
|
end
|
16746
16797
|
|
16798
|
+
#
|
16799
|
+
class InstancesBulkInsertOperationMetadata
|
16800
|
+
include Google::Apis::Core::Hashable
|
16801
|
+
|
16802
|
+
# Status information per location (location name is key). Example key: zones/us-
|
16803
|
+
# central1-a
|
16804
|
+
# Corresponds to the JSON property `perLocationStatus`
|
16805
|
+
# @return [Hash<String,Google::Apis::ComputeV1::BulkInsertOperationStatus>]
|
16806
|
+
attr_accessor :per_location_status
|
16807
|
+
|
16808
|
+
def initialize(**args)
|
16809
|
+
update!(**args)
|
16810
|
+
end
|
16811
|
+
|
16812
|
+
# Update properties of this object
|
16813
|
+
def update!(**args)
|
16814
|
+
@per_location_status = args[:per_location_status] if args.key?(:per_location_status)
|
16815
|
+
end
|
16816
|
+
end
|
16817
|
+
|
16747
16818
|
#
|
16748
16819
|
class InstancesGetEffectiveFirewallsResponse
|
16749
16820
|
include Google::Apis::Core::Hashable
|
@@ -17037,6 +17108,34 @@ module Google
|
|
17037
17108
|
end
|
17038
17109
|
end
|
17039
17110
|
|
17111
|
+
#
|
17112
|
+
class InstancesSetSecurityPolicyRequest
|
17113
|
+
include Google::Apis::Core::Hashable
|
17114
|
+
|
17115
|
+
# The network interfaces that the security policy will be applied to. Network
|
17116
|
+
# interfaces use the nicN naming format. You can only set a security policy for
|
17117
|
+
# network interfaces with an access config.
|
17118
|
+
# Corresponds to the JSON property `networkInterfaces`
|
17119
|
+
# @return [Array<String>]
|
17120
|
+
attr_accessor :network_interfaces
|
17121
|
+
|
17122
|
+
# A full or partial URL to a security policy to add to this instance. If this
|
17123
|
+
# field is set to an empty string it will remove the associated security policy.
|
17124
|
+
# Corresponds to the JSON property `securityPolicy`
|
17125
|
+
# @return [String]
|
17126
|
+
attr_accessor :security_policy
|
17127
|
+
|
17128
|
+
def initialize(**args)
|
17129
|
+
update!(**args)
|
17130
|
+
end
|
17131
|
+
|
17132
|
+
# Update properties of this object
|
17133
|
+
def update!(**args)
|
17134
|
+
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
17135
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
17136
|
+
end
|
17137
|
+
end
|
17138
|
+
|
17040
17139
|
#
|
17041
17140
|
class InstancesSetServiceAccountRequest
|
17042
17141
|
include Google::Apis::Core::Hashable
|
@@ -17549,9 +17648,8 @@ module Google
|
|
17549
17648
|
attr_accessor :operational_status
|
17550
17649
|
|
17551
17650
|
# [Output only for type PARTNER. Input only for PARTNER_PROVIDER. Not present
|
17552
|
-
# for DEDICATED]. The opaque identifier of
|
17553
|
-
#
|
17554
|
-
# domain"
|
17651
|
+
# for DEDICATED]. The opaque identifier of a PARTNER attachment used to initiate
|
17652
|
+
# provisioning with a selected partner. Of the form "XXXXX/region/domain"
|
17555
17653
|
# Corresponds to the JSON property `pairingKey`
|
17556
17654
|
# @return [String]
|
17557
17655
|
attr_accessor :pairing_key
|
@@ -22158,9 +22256,8 @@ module Google
|
|
22158
22256
|
|
22159
22257
|
# Represents a collection of network endpoints. A network endpoint group (NEG)
|
22160
22258
|
# defines how a set of endpoints should be reached, whether they are reachable,
|
22161
|
-
# and where they are located. For more information about using NEGs
|
22162
|
-
#
|
22163
|
-
# or Setting up external HTTP(S) Load Balancing with serverless NEGs.
|
22259
|
+
# and where they are located. For more information about using NEGs for
|
22260
|
+
# different use cases, see Network endpoint groups overview.
|
22164
22261
|
class NetworkEndpointGroup
|
22165
22262
|
include Google::Apis::Core::Hashable
|
22166
22263
|
|
@@ -25623,6 +25720,11 @@ module Google
|
|
25623
25720
|
# @return [String]
|
25624
25721
|
attr_accessor :insert_time
|
25625
25722
|
|
25723
|
+
#
|
25724
|
+
# Corresponds to the JSON property `instancesBulkInsertOperationMetadata`
|
25725
|
+
# @return [Google::Apis::ComputeV1::InstancesBulkInsertOperationMetadata]
|
25726
|
+
attr_accessor :instances_bulk_insert_operation_metadata
|
25727
|
+
|
25626
25728
|
# [Output Only] Type of the resource. Always `compute#operation` for Operation
|
25627
25729
|
# resources.
|
25628
25730
|
# Corresponds to the JSON property `kind`
|
@@ -25735,6 +25837,7 @@ module Google
|
|
25735
25837
|
@http_error_status_code = args[:http_error_status_code] if args.key?(:http_error_status_code)
|
25736
25838
|
@id = args[:id] if args.key?(:id)
|
25737
25839
|
@insert_time = args[:insert_time] if args.key?(:insert_time)
|
25840
|
+
@instances_bulk_insert_operation_metadata = args[:instances_bulk_insert_operation_metadata] if args.key?(:instances_bulk_insert_operation_metadata)
|
25738
25841
|
@kind = args[:kind] if args.key?(:kind)
|
25739
25842
|
@name = args[:name] if args.key?(:name)
|
25740
25843
|
@operation_group_id = args[:operation_group_id] if args.key?(:operation_group_id)
|
@@ -27061,8 +27164,8 @@ module Google
|
|
27061
27164
|
# If defaultRouteAction specifies any weightedBackendServices, defaultService
|
27062
27165
|
# must not be set. Conversely if defaultService is set, defaultRouteAction
|
27063
27166
|
# cannot contain any weightedBackendServices. Only one of defaultRouteAction or
|
27064
|
-
# defaultUrlRedirect must be set. URL maps for
|
27065
|
-
#
|
27167
|
+
# defaultUrlRedirect must be set. URL maps for classic Application Load
|
27168
|
+
# Balancers only support the urlRewrite action within a path matcher's
|
27066
27169
|
# defaultRouteAction.
|
27067
27170
|
# Corresponds to the JSON property `defaultRouteAction`
|
27068
27171
|
# @return [Google::Apis::ComputeV1::HttpRouteAction]
|
@@ -27162,9 +27265,8 @@ module Google
|
|
27162
27265
|
# the request to the selected backend. If routeAction specifies any
|
27163
27266
|
# weightedBackendServices, service must not be set. Conversely if service is set,
|
27164
27267
|
# routeAction cannot contain any weightedBackendServices. Only one of
|
27165
|
-
# routeAction or urlRedirect must be set. URL maps for
|
27166
|
-
#
|
27167
|
-
# routeAction.
|
27268
|
+
# routeAction or urlRedirect must be set. URL maps for classic Application Load
|
27269
|
+
# Balancers only support the urlRewrite action within a path rule's routeAction.
|
27168
27270
|
# Corresponds to the JSON property `routeAction`
|
27169
27271
|
# @return [Google::Apis::ComputeV1::HttpRouteAction]
|
27170
27272
|
attr_accessor :route_action
|
@@ -30117,17 +30219,19 @@ module Google
|
|
30117
30219
|
# Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
|
30118
30220
|
# reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
|
30119
30221
|
# types of cloud load balancers and Traffic Director: * urlMaps are used by
|
30120
|
-
# external
|
30121
|
-
#
|
30122
|
-
# by
|
30123
|
-
#
|
30124
|
-
#
|
30125
|
-
#
|
30126
|
-
#
|
30127
|
-
#
|
30128
|
-
#
|
30129
|
-
#
|
30130
|
-
#
|
30222
|
+
# global external Application Load Balancers, classic Application Load Balancers,
|
30223
|
+
# and cross-region internal Application Load Balancers. * regionUrlMaps are
|
30224
|
+
# used by internal Application Load Balancers, regional external Application
|
30225
|
+
# Load Balancers and regional internal Application Load Balancers. For a list of
|
30226
|
+
# supported URL map features by the load balancer type, see the Load balancing
|
30227
|
+
# features: Routing and traffic management table. For a list of supported URL
|
30228
|
+
# map features for Traffic Director, see the Traffic Director features: Routing
|
30229
|
+
# and traffic management table. This resource defines mappings from hostnames
|
30230
|
+
# and URL paths to either a backend service or a backend bucket. To use the
|
30231
|
+
# global urlMaps resource, the backend service must have a loadBalancingScheme
|
30232
|
+
# of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource,
|
30233
|
+
# the backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For
|
30234
|
+
# more information, read URL Map Concepts.
|
30131
30235
|
# Corresponds to the JSON property `resource`
|
30132
30236
|
# @return [Google::Apis::ComputeV1::UrlMap]
|
30133
30237
|
attr_accessor :resource
|
@@ -32063,9 +32167,11 @@ module Google
|
|
32063
32167
|
# @return [Fixnum]
|
32064
32168
|
attr_accessor :id
|
32065
32169
|
|
32066
|
-
# Router interfaces.
|
32067
|
-
#
|
32068
|
-
#
|
32170
|
+
# Router interfaces. To create a BGP peer that uses a router interface, the
|
32171
|
+
# interface must have one of the following fields specified: - linkedVpnTunnel -
|
32172
|
+
# linkedInterconnectAttachment - subnetwork You can create a router interface
|
32173
|
+
# without any of these fields specified. However, you cannot create a BGP peer
|
32174
|
+
# that uses that interface.
|
32069
32175
|
# Corresponds to the JSON property `interfaces`
|
32070
32176
|
# @return [Array<Google::Apis::ComputeV1::RouterInterface>]
|
32071
32177
|
attr_accessor :interfaces
|
@@ -32592,14 +32698,14 @@ module Google
|
|
32592
32698
|
|
32593
32699
|
# URI of the linked Interconnect attachment. It must be in the same region as
|
32594
32700
|
# the router. Each interface can have one linked resource, which can be a VPN
|
32595
|
-
# tunnel, an Interconnect attachment, or a
|
32701
|
+
# tunnel, an Interconnect attachment, or a subnetwork.
|
32596
32702
|
# Corresponds to the JSON property `linkedInterconnectAttachment`
|
32597
32703
|
# @return [String]
|
32598
32704
|
attr_accessor :linked_interconnect_attachment
|
32599
32705
|
|
32600
32706
|
# URI of the linked VPN tunnel, which must be in the same region as the router.
|
32601
32707
|
# Each interface can have one linked resource, which can be a VPN tunnel, an
|
32602
|
-
# Interconnect attachment, or a
|
32708
|
+
# Interconnect attachment, or a subnetwork.
|
32603
32709
|
# Corresponds to the JSON property `linkedVpnTunnel`
|
32604
32710
|
# @return [String]
|
32605
32711
|
attr_accessor :linked_vpn_tunnel
|
@@ -32800,7 +32906,7 @@ module Google
|
|
32800
32906
|
attr_accessor :key
|
32801
32907
|
|
32802
32908
|
# Name used to identify the key. Must be unique within a router. Must be
|
32803
|
-
# referenced by
|
32909
|
+
# referenced by exactly one bgpPeer. Must comply with RFC1035.
|
32804
32910
|
# Corresponds to the JSON property `name`
|
32805
32911
|
# @return [String]
|
32806
32912
|
attr_accessor :name
|
@@ -32824,8 +32930,9 @@ module Google
|
|
32824
32930
|
class RouterNat
|
32825
32931
|
include Google::Apis::Core::Hashable
|
32826
32932
|
|
32827
|
-
# The network tier to use when automatically reserving IP addresses. Must be
|
32828
|
-
# of: PREMIUM, STANDARD. If not specified,
|
32933
|
+
# The network tier to use when automatically reserving NAT IP addresses. Must be
|
32934
|
+
# one of: PREMIUM, STANDARD. If not specified, then the current project-level
|
32935
|
+
# default tier is used.
|
32829
32936
|
# Corresponds to the JSON property `autoNetworkTier`
|
32830
32937
|
# @return [String]
|
32831
32938
|
attr_accessor :auto_network_tier
|
@@ -34410,6 +34517,16 @@ module Google
|
|
34410
34517
|
# @return [String]
|
34411
34518
|
attr_accessor :type
|
34412
34519
|
|
34520
|
+
# Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-
|
34521
|
+
# defined field consists of up to 4 bytes extracted from a fixed offset in the
|
34522
|
+
# packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask
|
34523
|
+
# to select certain bits. Rules may then specify matching values for these
|
34524
|
+
# fields. Example: userDefinedFields: - name: "ipv4_fragment_offset" base: IPV4
|
34525
|
+
# offset: 6 size: 2 mask: "0x1fff"
|
34526
|
+
# Corresponds to the JSON property `userDefinedFields`
|
34527
|
+
# @return [Array<Google::Apis::ComputeV1::SecurityPolicyUserDefinedField>]
|
34528
|
+
attr_accessor :user_defined_fields
|
34529
|
+
|
34413
34530
|
def initialize(**args)
|
34414
34531
|
update!(**args)
|
34415
34532
|
end
|
@@ -34432,6 +34549,7 @@ module Google
|
|
34432
34549
|
@rules = args[:rules] if args.key?(:rules)
|
34433
34550
|
@self_link = args[:self_link] if args.key?(:self_link)
|
34434
34551
|
@type = args[:type] if args.key?(:type)
|
34552
|
+
@user_defined_fields = args[:user_defined_fields] if args.key?(:user_defined_fields)
|
34435
34553
|
end
|
34436
34554
|
end
|
34437
34555
|
|
@@ -34811,6 +34929,12 @@ module Google
|
|
34811
34929
|
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleMatcher]
|
34812
34930
|
attr_accessor :match
|
34813
34931
|
|
34932
|
+
# Represents a match condition that incoming network traffic is evaluated
|
34933
|
+
# against.
|
34934
|
+
# Corresponds to the JSON property `networkMatch`
|
34935
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleNetworkMatcher]
|
34936
|
+
attr_accessor :network_match
|
34937
|
+
|
34814
34938
|
# Preconfigured WAF configuration to be applied for the rule. If the rule does
|
34815
34939
|
# not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is
|
34816
34940
|
# not used, this field will have no effect.
|
@@ -34856,6 +34980,7 @@ module Google
|
|
34856
34980
|
@header_action = args[:header_action] if args.key?(:header_action)
|
34857
34981
|
@kind = args[:kind] if args.key?(:kind)
|
34858
34982
|
@match = args[:match] if args.key?(:match)
|
34983
|
+
@network_match = args[:network_match] if args.key?(:network_match)
|
34859
34984
|
@preconfigured_waf_config = args[:preconfigured_waf_config] if args.key?(:preconfigured_waf_config)
|
34860
34985
|
@preview = args[:preview] if args.key?(:preview)
|
34861
34986
|
@priority = args[:priority] if args.key?(:priority)
|
@@ -34978,6 +35103,102 @@ module Google
|
|
34978
35103
|
end
|
34979
35104
|
end
|
34980
35105
|
|
35106
|
+
# Represents a match condition that incoming network traffic is evaluated
|
35107
|
+
# against.
|
35108
|
+
class SecurityPolicyRuleNetworkMatcher
|
35109
|
+
include Google::Apis::Core::Hashable
|
35110
|
+
|
35111
|
+
# Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
|
35112
|
+
# Corresponds to the JSON property `destIpRanges`
|
35113
|
+
# @return [Array<String>]
|
35114
|
+
attr_accessor :dest_ip_ranges
|
35115
|
+
|
35116
|
+
# Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit
|
35117
|
+
# unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
|
35118
|
+
# Corresponds to the JSON property `destPorts`
|
35119
|
+
# @return [Array<String>]
|
35120
|
+
attr_accessor :dest_ports
|
35121
|
+
|
35122
|
+
# IPv4 protocol / IPv6 next header (after extension headers). Each element can
|
35123
|
+
# be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one
|
35124
|
+
# of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or
|
35125
|
+
# "sctp".
|
35126
|
+
# Corresponds to the JSON property `ipProtocols`
|
35127
|
+
# @return [Array<String>]
|
35128
|
+
attr_accessor :ip_protocols
|
35129
|
+
|
35130
|
+
# BGP Autonomous System Number associated with the source IP address.
|
35131
|
+
# Corresponds to the JSON property `srcAsns`
|
35132
|
+
# @return [Array<Fixnum>]
|
35133
|
+
attr_accessor :src_asns
|
35134
|
+
|
35135
|
+
# Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
|
35136
|
+
# Corresponds to the JSON property `srcIpRanges`
|
35137
|
+
# @return [Array<String>]
|
35138
|
+
attr_accessor :src_ip_ranges
|
35139
|
+
|
35140
|
+
# Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned
|
35141
|
+
# decimal number (e.g. "80") or range (e.g. "0-1023").
|
35142
|
+
# Corresponds to the JSON property `srcPorts`
|
35143
|
+
# @return [Array<String>]
|
35144
|
+
attr_accessor :src_ports
|
35145
|
+
|
35146
|
+
# Two-letter ISO 3166-1 alpha-2 country code associated with the source IP
|
35147
|
+
# address.
|
35148
|
+
# Corresponds to the JSON property `srcRegionCodes`
|
35149
|
+
# @return [Array<String>]
|
35150
|
+
attr_accessor :src_region_codes
|
35151
|
+
|
35152
|
+
# User-defined fields. Each element names a defined field and lists the matching
|
35153
|
+
# values for that field.
|
35154
|
+
# Corresponds to the JSON property `userDefinedFields`
|
35155
|
+
# @return [Array<Google::Apis::ComputeV1::SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch>]
|
35156
|
+
attr_accessor :user_defined_fields
|
35157
|
+
|
35158
|
+
def initialize(**args)
|
35159
|
+
update!(**args)
|
35160
|
+
end
|
35161
|
+
|
35162
|
+
# Update properties of this object
|
35163
|
+
def update!(**args)
|
35164
|
+
@dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
|
35165
|
+
@dest_ports = args[:dest_ports] if args.key?(:dest_ports)
|
35166
|
+
@ip_protocols = args[:ip_protocols] if args.key?(:ip_protocols)
|
35167
|
+
@src_asns = args[:src_asns] if args.key?(:src_asns)
|
35168
|
+
@src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
|
35169
|
+
@src_ports = args[:src_ports] if args.key?(:src_ports)
|
35170
|
+
@src_region_codes = args[:src_region_codes] if args.key?(:src_region_codes)
|
35171
|
+
@user_defined_fields = args[:user_defined_fields] if args.key?(:user_defined_fields)
|
35172
|
+
end
|
35173
|
+
end
|
35174
|
+
|
35175
|
+
#
|
35176
|
+
class SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch
|
35177
|
+
include Google::Apis::Core::Hashable
|
35178
|
+
|
35179
|
+
# Name of the user-defined field, as given in the definition.
|
35180
|
+
# Corresponds to the JSON property `name`
|
35181
|
+
# @return [String]
|
35182
|
+
attr_accessor :name
|
35183
|
+
|
35184
|
+
# Matching values of the field. Each element can be a 32-bit unsigned decimal or
|
35185
|
+
# hexadecimal (starting with "0x") number (e.g. "64") or range (e.g. "0x400-
|
35186
|
+
# 0x7ff").
|
35187
|
+
# Corresponds to the JSON property `values`
|
35188
|
+
# @return [Array<String>]
|
35189
|
+
attr_accessor :values
|
35190
|
+
|
35191
|
+
def initialize(**args)
|
35192
|
+
update!(**args)
|
35193
|
+
end
|
35194
|
+
|
35195
|
+
# Update properties of this object
|
35196
|
+
def update!(**args)
|
35197
|
+
@name = args[:name] if args.key?(:name)
|
35198
|
+
@values = args[:values] if args.key?(:values)
|
35199
|
+
end
|
35200
|
+
end
|
35201
|
+
|
34981
35202
|
#
|
34982
35203
|
class SecurityPolicyRulePreconfiguredWafConfig
|
34983
35204
|
include Google::Apis::Core::Hashable
|
@@ -35278,6 +35499,59 @@ module Google
|
|
35278
35499
|
end
|
35279
35500
|
end
|
35280
35501
|
|
35502
|
+
#
|
35503
|
+
class SecurityPolicyUserDefinedField
|
35504
|
+
include Google::Apis::Core::Hashable
|
35505
|
+
|
35506
|
+
# The base relative to which 'offset' is measured. Possible values are: - IPV4:
|
35507
|
+
# Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of
|
35508
|
+
# the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping
|
35509
|
+
# over any IPv4 options or IPv6 extension headers. Not present for non-first
|
35510
|
+
# fragments. - UDP: Points to the beginning of the UDP header, skipping over any
|
35511
|
+
# IPv4 options or IPv6 extension headers. Not present for non-first fragments.
|
35512
|
+
# required
|
35513
|
+
# Corresponds to the JSON property `base`
|
35514
|
+
# @return [String]
|
35515
|
+
attr_accessor :base
|
35516
|
+
|
35517
|
+
# If specified, apply this mask (bitwise AND) to the field to ignore bits before
|
35518
|
+
# matching. Encoded as a hexadecimal number (starting with "0x"). The last byte
|
35519
|
+
# of the field (in network byte order) corresponds to the least significant byte
|
35520
|
+
# of the mask.
|
35521
|
+
# Corresponds to the JSON property `mask`
|
35522
|
+
# @return [String]
|
35523
|
+
attr_accessor :mask
|
35524
|
+
|
35525
|
+
# The name of this field. Must be unique within the policy.
|
35526
|
+
# Corresponds to the JSON property `name`
|
35527
|
+
# @return [String]
|
35528
|
+
attr_accessor :name
|
35529
|
+
|
35530
|
+
# Offset of the first byte of the field (in network byte order) relative to '
|
35531
|
+
# base'.
|
35532
|
+
# Corresponds to the JSON property `offset`
|
35533
|
+
# @return [Fixnum]
|
35534
|
+
attr_accessor :offset
|
35535
|
+
|
35536
|
+
# Size of the field in bytes. Valid values: 1-4.
|
35537
|
+
# Corresponds to the JSON property `size`
|
35538
|
+
# @return [Fixnum]
|
35539
|
+
attr_accessor :size
|
35540
|
+
|
35541
|
+
def initialize(**args)
|
35542
|
+
update!(**args)
|
35543
|
+
end
|
35544
|
+
|
35545
|
+
# Update properties of this object
|
35546
|
+
def update!(**args)
|
35547
|
+
@base = args[:base] if args.key?(:base)
|
35548
|
+
@mask = args[:mask] if args.key?(:mask)
|
35549
|
+
@name = args[:name] if args.key?(:name)
|
35550
|
+
@offset = args[:offset] if args.key?(:offset)
|
35551
|
+
@size = args[:size] if args.key?(:size)
|
35552
|
+
end
|
35553
|
+
end
|
35554
|
+
|
35281
35555
|
# The authentication and authorization settings for a BackendService.
|
35282
35556
|
class SecuritySettings
|
35283
35557
|
include Google::Apis::Core::Hashable
|
@@ -36757,17 +37031,20 @@ module Google
|
|
36757
37031
|
end
|
36758
37032
|
end
|
36759
37033
|
|
36760
|
-
# Represents an SSL
|
36761
|
-
#
|
37034
|
+
# Represents an SSL certificate resource. Google Compute Engine has two SSL
|
37035
|
+
# certificate resources: * [Global](/compute/docs/reference/rest/v1/
|
36762
37036
|
# sslCertificates) * [Regional](/compute/docs/reference/rest/v1/
|
36763
|
-
# regionSslCertificates) The sslCertificates are used
|
36764
|
-
#
|
36765
|
-
#
|
36766
|
-
#
|
36767
|
-
#
|
36768
|
-
#
|
36769
|
-
#
|
36770
|
-
#
|
37037
|
+
# regionSslCertificates) The global SSL certificates (sslCertificates) are used
|
37038
|
+
# by: - Global external Application Load Balancers - Classic Application Load
|
37039
|
+
# Balancers - Proxy Network Load Balancers (with target SSL proxies) The
|
37040
|
+
# regional SSL certificates (regionSslCertificates) are used by: - Regional
|
37041
|
+
# external Application Load Balancers - Regional internal Application Load
|
37042
|
+
# Balancers Optionally, certificate file contents that you upload can contain a
|
37043
|
+
# set of up to five PEM-encoded certificates. The API call creates an object (
|
37044
|
+
# sslCertificate) that holds this data. You can use SSL keys and certificates to
|
37045
|
+
# secure connections to a load balancer. For more information, read Creating and
|
37046
|
+
# using SSL certificates, SSL certificates quotas and limits, and
|
37047
|
+
# Troubleshooting SSL certificates.
|
36771
37048
|
class SslCertificate
|
36772
37049
|
include Google::Apis::Core::Hashable
|
36773
37050
|
|
@@ -39063,11 +39340,13 @@ module Google
|
|
39063
39340
|
# HTTP Proxy resources: * [Global](/compute/docs/reference/rest/v1/
|
39064
39341
|
# targetHttpProxies) * [Regional](/compute/docs/reference/rest/v1/
|
39065
39342
|
# regionTargetHttpProxies) A target HTTP proxy is a component of GCP HTTP load
|
39066
|
-
# balancers. * targetHttpProxies are used by external
|
39067
|
-
#
|
39068
|
-
#
|
39069
|
-
#
|
39070
|
-
#
|
39343
|
+
# balancers. * targetHttpProxies are used by global external Application Load
|
39344
|
+
# Balancers, classic Application Load Balancers, cross-region internal
|
39345
|
+
# Application Load Balancers, and Traffic Director. * regionTargetHttpProxies
|
39346
|
+
# are used by regional internal Application Load Balancers and regional external
|
39347
|
+
# Application Load Balancers. Forwarding rules reference a target HTTP proxy,
|
39348
|
+
# and the target proxy then references a URL map. For more information, read
|
39349
|
+
# Using Target Proxies and Forwarding rule concepts.
|
39071
39350
|
class TargetHttpProxy
|
39072
39351
|
include Google::Apis::Core::Hashable
|
39073
39352
|
|
@@ -39095,10 +39374,10 @@ module Google
|
|
39095
39374
|
|
39096
39375
|
# Specifies how long to keep a connection open, after completing a response,
|
39097
39376
|
# while there is no matching traffic (in seconds). If an HTTP keep-alive is not
|
39098
|
-
# specified, a default value (610 seconds) will be used. For
|
39099
|
-
#
|
39100
|
-
# allowed value is 1200 seconds. For
|
39101
|
-
#
|
39377
|
+
# specified, a default value (610 seconds) will be used. For global external
|
39378
|
+
# Application Load Balancers, the minimum allowed value is 5 seconds and the
|
39379
|
+
# maximum allowed value is 1200 seconds. For classic Application Load Balancers,
|
39380
|
+
# this option is not supported.
|
39102
39381
|
# Corresponds to the JSON property `httpKeepAliveTimeoutSec`
|
39103
39382
|
# @return [Fixnum]
|
39104
39383
|
attr_accessor :http_keep_alive_timeout_sec
|
@@ -39503,11 +39782,13 @@ module Google
|
|
39503
39782
|
# HTTPS Proxy resources: * [Global](/compute/docs/reference/rest/v1/
|
39504
39783
|
# targetHttpsProxies) * [Regional](/compute/docs/reference/rest/v1/
|
39505
39784
|
# regionTargetHttpsProxies) A target HTTPS proxy is a component of GCP HTTPS
|
39506
|
-
# load balancers. *
|
39507
|
-
#
|
39508
|
-
#
|
39509
|
-
#
|
39510
|
-
# Forwarding
|
39785
|
+
# load balancers. * targetHttpProxies are used by global external Application
|
39786
|
+
# Load Balancers, classic Application Load Balancers, cross-region internal
|
39787
|
+
# Application Load Balancers, and Traffic Director. * regionTargetHttpProxies
|
39788
|
+
# are used by regional internal Application Load Balancers and regional external
|
39789
|
+
# Application Load Balancers. Forwarding rules reference a target HTTPS proxy,
|
39790
|
+
# and the target proxy then references a URL map. For more information, read
|
39791
|
+
# Using Target Proxies and Forwarding rule concepts.
|
39511
39792
|
class TargetHttpsProxy
|
39512
39793
|
include Google::Apis::Core::Hashable
|
39513
39794
|
|
@@ -39555,10 +39836,10 @@ module Google
|
|
39555
39836
|
|
39556
39837
|
# Specifies how long to keep a connection open, after completing a response,
|
39557
39838
|
# while there is no matching traffic (in seconds). If an HTTP keep-alive is not
|
39558
|
-
# specified, a default value (610 seconds) will be used. For
|
39559
|
-
#
|
39560
|
-
# allowed value is 1200 seconds. For
|
39561
|
-
#
|
39839
|
+
# specified, a default value (610 seconds) will be used. For global external
|
39840
|
+
# Application Load Balancers, the minimum allowed value is 5 seconds and the
|
39841
|
+
# maximum allowed value is 1200 seconds. For classic Application Load Balancers,
|
39842
|
+
# this option is not supported.
|
39562
39843
|
# Corresponds to the JSON property `httpKeepAliveTimeoutSec`
|
39563
39844
|
# @return [Fixnum]
|
39564
39845
|
attr_accessor :http_keep_alive_timeout_sec
|
@@ -39989,6 +40270,12 @@ module Google
|
|
39989
40270
|
# @return [String]
|
39990
40271
|
attr_accessor :network
|
39991
40272
|
|
40273
|
+
# [Output Only] The resource URL for the security policy associated with this
|
40274
|
+
# target instance.
|
40275
|
+
# Corresponds to the JSON property `securityPolicy`
|
40276
|
+
# @return [String]
|
40277
|
+
attr_accessor :security_policy
|
40278
|
+
|
39992
40279
|
# [Output Only] Server-defined URL for the resource.
|
39993
40280
|
# Corresponds to the JSON property `selfLink`
|
39994
40281
|
# @return [String]
|
@@ -40015,6 +40302,7 @@ module Google
|
|
40015
40302
|
@name = args[:name] if args.key?(:name)
|
40016
40303
|
@nat_policy = args[:nat_policy] if args.key?(:nat_policy)
|
40017
40304
|
@network = args[:network] if args.key?(:network)
|
40305
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
40018
40306
|
@self_link = args[:self_link] if args.key?(:self_link)
|
40019
40307
|
@zone = args[:zone] if args.key?(:zone)
|
40020
40308
|
end
|
@@ -40438,6 +40726,12 @@ module Google
|
|
40438
40726
|
# @return [String]
|
40439
40727
|
attr_accessor :region
|
40440
40728
|
|
40729
|
+
# [Output Only] The resource URL for the security policy associated with this
|
40730
|
+
# target pool.
|
40731
|
+
# Corresponds to the JSON property `securityPolicy`
|
40732
|
+
# @return [String]
|
40733
|
+
attr_accessor :security_policy
|
40734
|
+
|
40441
40735
|
# [Output Only] Server-defined URL for the resource.
|
40442
40736
|
# Corresponds to the JSON property `selfLink`
|
40443
40737
|
# @return [String]
|
@@ -40469,6 +40763,7 @@ module Google
|
|
40469
40763
|
@kind = args[:kind] if args.key?(:kind)
|
40470
40764
|
@name = args[:name] if args.key?(:name)
|
40471
40765
|
@region = args[:region] if args.key?(:region)
|
40766
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
40472
40767
|
@self_link = args[:self_link] if args.key?(:self_link)
|
40473
40768
|
@session_affinity = args[:session_affinity] if args.key?(:session_affinity)
|
40474
40769
|
end
|
@@ -42288,17 +42583,19 @@ module Google
|
|
42288
42583
|
# Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
|
42289
42584
|
# reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
|
42290
42585
|
# types of cloud load balancers and Traffic Director: * urlMaps are used by
|
42291
|
-
# external
|
42292
|
-
#
|
42293
|
-
# by
|
42294
|
-
#
|
42295
|
-
#
|
42296
|
-
#
|
42297
|
-
#
|
42298
|
-
#
|
42299
|
-
#
|
42300
|
-
#
|
42301
|
-
#
|
42586
|
+
# global external Application Load Balancers, classic Application Load Balancers,
|
42587
|
+
# and cross-region internal Application Load Balancers. * regionUrlMaps are
|
42588
|
+
# used by internal Application Load Balancers, regional external Application
|
42589
|
+
# Load Balancers and regional internal Application Load Balancers. For a list of
|
42590
|
+
# supported URL map features by the load balancer type, see the Load balancing
|
42591
|
+
# features: Routing and traffic management table. For a list of supported URL
|
42592
|
+
# map features for Traffic Director, see the Traffic Director features: Routing
|
42593
|
+
# and traffic management table. This resource defines mappings from hostnames
|
42594
|
+
# and URL paths to either a backend service or a backend bucket. To use the
|
42595
|
+
# global urlMaps resource, the backend service must have a loadBalancingScheme
|
42596
|
+
# of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource,
|
42597
|
+
# the backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For
|
42598
|
+
# more information, read URL Map Concepts.
|
42302
42599
|
class UrlMap
|
42303
42600
|
include Google::Apis::Core::Hashable
|
42304
42601
|
|
@@ -42313,8 +42610,8 @@ module Google
|
|
42313
42610
|
# defaultRouteAction specifies any weightedBackendServices, defaultService must
|
42314
42611
|
# not be set. Conversely if defaultService is set, defaultRouteAction cannot
|
42315
42612
|
# contain any weightedBackendServices. Only one of defaultRouteAction or
|
42316
|
-
# defaultUrlRedirect must be set. URL maps for
|
42317
|
-
#
|
42613
|
+
# defaultUrlRedirect must be set. URL maps for classic Application Load
|
42614
|
+
# Balancers only support the urlRewrite action within defaultRouteAction.
|
42318
42615
|
# defaultRouteAction has no effect when the URL map is bound to a target gRPC
|
42319
42616
|
# proxy that has the validateForProxyless field set to true.
|
42320
42617
|
# Corresponds to the JSON property `defaultRouteAction`
|
@@ -42931,16 +43228,16 @@ module Google
|
|
42931
43228
|
include Google::Apis::Core::Hashable
|
42932
43229
|
|
42933
43230
|
# Specifies the load balancer type(s) this validation request is for. Use
|
42934
|
-
# EXTERNAL_MANAGED for
|
42935
|
-
#
|
42936
|
-
#
|
42937
|
-
# refer to Choosing a load balancer. If unspecified, the load
|
42938
|
-
# will be inferred from the backend service resources this URL
|
42939
|
-
# If that can not be inferred (for example, this URL map only
|
42940
|
-
# buckets, or this Url map is for rewrites and redirects only
|
42941
|
-
# reference any backends), EXTERNAL will be used as the default type.
|
42942
|
-
# specified, the scheme(s) must not conflict with the load balancing scheme
|
42943
|
-
# the backend service resources this Url map references.
|
43231
|
+
# EXTERNAL_MANAGED for global external Application Load Balancers and regional
|
43232
|
+
# external Application Load Balancers. Use EXTERNAL for classic Application Load
|
43233
|
+
# Balancers. Use INTERNAL_MANAGED for internal Application Load Balancers. For
|
43234
|
+
# more information, refer to Choosing a load balancer. If unspecified, the load
|
43235
|
+
# balancing scheme will be inferred from the backend service resources this URL
|
43236
|
+
# map references. If that can not be inferred (for example, this URL map only
|
43237
|
+
# references backend buckets, or this Url map is for rewrites and redirects only
|
43238
|
+
# and doesn't reference any backends), EXTERNAL will be used as the default type.
|
43239
|
+
# If specified, the scheme(s) must not conflict with the load balancing scheme
|
43240
|
+
# of the backend service resources this Url map references.
|
42944
43241
|
# Corresponds to the JSON property `loadBalancingSchemes`
|
42945
43242
|
# @return [Array<String>]
|
42946
43243
|
attr_accessor :load_balancing_schemes
|
@@ -42949,17 +43246,19 @@ module Google
|
|
42949
43246
|
# Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
|
42950
43247
|
# reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
|
42951
43248
|
# types of cloud load balancers and Traffic Director: * urlMaps are used by
|
42952
|
-
# external
|
42953
|
-
#
|
42954
|
-
# by
|
42955
|
-
#
|
42956
|
-
#
|
42957
|
-
#
|
42958
|
-
#
|
42959
|
-
#
|
42960
|
-
#
|
42961
|
-
#
|
42962
|
-
#
|
43249
|
+
# global external Application Load Balancers, classic Application Load Balancers,
|
43250
|
+
# and cross-region internal Application Load Balancers. * regionUrlMaps are
|
43251
|
+
# used by internal Application Load Balancers, regional external Application
|
43252
|
+
# Load Balancers and regional internal Application Load Balancers. For a list of
|
43253
|
+
# supported URL map features by the load balancer type, see the Load balancing
|
43254
|
+
# features: Routing and traffic management table. For a list of supported URL
|
43255
|
+
# map features for Traffic Director, see the Traffic Director features: Routing
|
43256
|
+
# and traffic management table. This resource defines mappings from hostnames
|
43257
|
+
# and URL paths to either a backend service or a backend bucket. To use the
|
43258
|
+
# global urlMaps resource, the backend service must have a loadBalancingScheme
|
43259
|
+
# of either EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource,
|
43260
|
+
# the backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For
|
43261
|
+
# more information, read URL Map Concepts.
|
42963
43262
|
# Corresponds to the JSON property `resource`
|
42964
43263
|
# @return [Google::Apis::ComputeV1::UrlMap]
|
42965
43264
|
attr_accessor :resource
|
@@ -44289,12 +44588,12 @@ module Google
|
|
44289
44588
|
# @return [Fixnum]
|
44290
44589
|
attr_accessor :peer_external_gateway_interface
|
44291
44590
|
|
44292
|
-
# URL of the peer side HA
|
44591
|
+
# URL of the peer side HA VPN gateway to which this VPN tunnel is connected.
|
44293
44592
|
# Provided by the client when the VPN tunnel is created. This field can be used
|
44294
44593
|
# when creating highly available VPN from VPC network to VPC network, the field
|
44295
44594
|
# is exclusive with the field peerExternalGateway. If provided, the VPN tunnel
|
44296
|
-
# will automatically use the same vpnGatewayInterface ID in the peer
|
44297
|
-
# gateway.
|
44595
|
+
# will automatically use the same vpnGatewayInterface ID in the peer Google
|
44596
|
+
# Cloud VPN gateway.
|
44298
44597
|
# Corresponds to the JSON property `peerGcpGateway`
|
44299
44598
|
# @return [String]
|
44300
44599
|
attr_accessor :peer_gcp_gateway
|