google-apis-compute_v1 0.76.0 → 0.78.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 +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
|