google-apis-compute_v1 0.77.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 992484af235c3975bcee3e3c7f8ae7c4def5d7abc48d26a4853a142a3ee1f362
4
- data.tar.gz: 01b8ea4e4b096540217a0dad07953649bdfb4f4c0e945204e67f387f8a32112b
3
+ metadata.gz: bd13d3a93347df8afff775b42ff622564a926e3aafc72686e36820ddc24bbebc
4
+ data.tar.gz: 3683443ccf5cc89d27dd145a7eccfa5c6402d73fbea43ee67644bd781319d253
5
5
  SHA512:
6
- metadata.gz: 598a9fda88989fe70e8523fd9a2d80040eff2ae67ba436239e6f198226d5ea46792000a7bef382964334e209f78ff92b5295180f617dd9d7018a961a1995c30f
7
- data.tar.gz: d4268e21a53aaed102af245bd64af42eec7afd9ec82428d75e08c301c376788a56e8f22e6d1f1d9ba671b889cfb594f147ee40e7521d19b8ef6b6fe4dcac2af4
6
+ metadata.gz: 446e2da6f6b22edd0f1de9f9c028e43994acfaeda2d23a9f44d93a2e6d84fe580e0d045f86ff3fc9c9b38e2c13c2f319ed5529116d641d93dfc976a373f51bf4
7
+ data.tar.gz: 7642f14714d17dc602969f4aa66950bd27dc1518979d3d85106e2c202027fb9ec343baf1c7e4c065a69ef01da0fa3c3d13caacfa4e0ddeaf0dca83e8698d7234
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Release history for google-apis-compute_v1
2
2
 
3
+ ### v0.78.0 (2023-09-10)
4
+
5
+ * Regenerated from discovery document revision 20230829
6
+
3
7
  ### v0.77.0 (2023-08-27)
4
8
 
5
9
  * Regenerated from discovery document revision 20230814
@@ -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: http://en.wikipedia.org/wiki/
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]
@@ -12354,8 +12361,8 @@ module Google
12354
12361
  # weightedBackendServices, service must not be set. Conversely if service is set,
12355
12362
  # routeAction cannot contain any weightedBackendServices. Only one of
12356
12363
  # urlRedirect, service or routeAction.weightedBackendService must be set. URL
12357
- # maps for Classic external HTTP(S) load balancers only support the urlRewrite
12358
- # action within a route rule's routeAction.
12364
+ # maps for classic Application Load Balancers only support the urlRewrite action
12365
+ # within a route rule's routeAction.
12359
12366
  # Corresponds to the JSON property `routeAction`
12360
12367
  # @return [Google::Apis::ComputeV1::HttpRouteAction]
12361
12368
  attr_accessor :route_action
@@ -17101,6 +17108,34 @@ module Google
17101
17108
  end
17102
17109
  end
17103
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
+
17104
17139
  #
17105
17140
  class InstancesSetServiceAccountRequest
17106
17141
  include Google::Apis::Core::Hashable
@@ -22221,9 +22256,8 @@ module Google
22221
22256
 
22222
22257
  # Represents a collection of network endpoints. A network endpoint group (NEG)
22223
22258
  # defines how a set of endpoints should be reached, whether they are reachable,
22224
- # and where they are located. For more information about using NEGs, see Setting
22225
- # up external HTTP(S) Load Balancing with internet NEGs, Setting up zonal NEGs,
22226
- # 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.
22227
22261
  class NetworkEndpointGroup
22228
22262
  include Google::Apis::Core::Hashable
22229
22263
 
@@ -27130,8 +27164,8 @@ module Google
27130
27164
  # If defaultRouteAction specifies any weightedBackendServices, defaultService
27131
27165
  # must not be set. Conversely if defaultService is set, defaultRouteAction
27132
27166
  # cannot contain any weightedBackendServices. Only one of defaultRouteAction or
27133
- # defaultUrlRedirect must be set. URL maps for Classic external HTTP(S) load
27134
- # balancers only support the urlRewrite action within a path matcher's
27167
+ # defaultUrlRedirect must be set. URL maps for classic Application Load
27168
+ # Balancers only support the urlRewrite action within a path matcher's
27135
27169
  # defaultRouteAction.
27136
27170
  # Corresponds to the JSON property `defaultRouteAction`
27137
27171
  # @return [Google::Apis::ComputeV1::HttpRouteAction]
@@ -27231,9 +27265,8 @@ module Google
27231
27265
  # the request to the selected backend. If routeAction specifies any
27232
27266
  # weightedBackendServices, service must not be set. Conversely if service is set,
27233
27267
  # routeAction cannot contain any weightedBackendServices. Only one of
27234
- # routeAction or urlRedirect must be set. URL maps for Classic external HTTP(S)
27235
- # load balancers only support the urlRewrite action within a path rule's
27236
- # 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.
27237
27270
  # Corresponds to the JSON property `routeAction`
27238
27271
  # @return [Google::Apis::ComputeV1::HttpRouteAction]
27239
27272
  attr_accessor :route_action
@@ -30186,17 +30219,19 @@ module Google
30186
30219
  # Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
30187
30220
  # reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
30188
30221
  # types of cloud load balancers and Traffic Director: * urlMaps are used by
30189
- # external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used
30190
- # by internal HTTP(S) load balancers. For a list of supported URL map features
30191
- # by the load balancer type, see the Load balancing features: Routing and
30192
- # traffic management table. For a list of supported URL map features for Traffic
30193
- # Director, see the Traffic Director features: Routing and traffic management
30194
- # table. This resource defines mappings from hostnames and URL paths to either a
30195
- # backend service or a backend bucket. To use the global urlMaps resource, the
30196
- # backend service must have a loadBalancingScheme of either EXTERNAL or
30197
- # INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
30198
- # must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
30199
- # read URL Map Concepts.
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.
30200
30235
  # Corresponds to the JSON property `resource`
30201
30236
  # @return [Google::Apis::ComputeV1::UrlMap]
30202
30237
  attr_accessor :resource
@@ -32132,9 +32167,11 @@ module Google
32132
32167
  # @return [Fixnum]
32133
32168
  attr_accessor :id
32134
32169
 
32135
- # Router interfaces. Each interface requires either one linked resource, (for
32136
- # example, linkedVpnTunnel), or IP address and IP address range (for example,
32137
- # ipRange), or both.
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.
32138
32175
  # Corresponds to the JSON property `interfaces`
32139
32176
  # @return [Array<Google::Apis::ComputeV1::RouterInterface>]
32140
32177
  attr_accessor :interfaces
@@ -32661,14 +32698,14 @@ module Google
32661
32698
 
32662
32699
  # URI of the linked Interconnect attachment. It must be in the same region as
32663
32700
  # the router. Each interface can have one linked resource, which can be a VPN
32664
- # tunnel, an Interconnect attachment, or a virtual machine instance.
32701
+ # tunnel, an Interconnect attachment, or a subnetwork.
32665
32702
  # Corresponds to the JSON property `linkedInterconnectAttachment`
32666
32703
  # @return [String]
32667
32704
  attr_accessor :linked_interconnect_attachment
32668
32705
 
32669
32706
  # URI of the linked VPN tunnel, which must be in the same region as the router.
32670
32707
  # Each interface can have one linked resource, which can be a VPN tunnel, an
32671
- # Interconnect attachment, or a virtual machine instance.
32708
+ # Interconnect attachment, or a subnetwork.
32672
32709
  # Corresponds to the JSON property `linkedVpnTunnel`
32673
32710
  # @return [String]
32674
32711
  attr_accessor :linked_vpn_tunnel
@@ -32869,7 +32906,7 @@ module Google
32869
32906
  attr_accessor :key
32870
32907
 
32871
32908
  # Name used to identify the key. Must be unique within a router. Must be
32872
- # referenced by at least one bgpPeer. Must comply with RFC1035.
32909
+ # referenced by exactly one bgpPeer. Must comply with RFC1035.
32873
32910
  # Corresponds to the JSON property `name`
32874
32911
  # @return [String]
32875
32912
  attr_accessor :name
@@ -34480,6 +34517,16 @@ module Google
34480
34517
  # @return [String]
34481
34518
  attr_accessor :type
34482
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
+
34483
34530
  def initialize(**args)
34484
34531
  update!(**args)
34485
34532
  end
@@ -34502,6 +34549,7 @@ module Google
34502
34549
  @rules = args[:rules] if args.key?(:rules)
34503
34550
  @self_link = args[:self_link] if args.key?(:self_link)
34504
34551
  @type = args[:type] if args.key?(:type)
34552
+ @user_defined_fields = args[:user_defined_fields] if args.key?(:user_defined_fields)
34505
34553
  end
34506
34554
  end
34507
34555
 
@@ -34881,6 +34929,12 @@ module Google
34881
34929
  # @return [Google::Apis::ComputeV1::SecurityPolicyRuleMatcher]
34882
34930
  attr_accessor :match
34883
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
+
34884
34938
  # Preconfigured WAF configuration to be applied for the rule. If the rule does
34885
34939
  # not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is
34886
34940
  # not used, this field will have no effect.
@@ -34926,6 +34980,7 @@ module Google
34926
34980
  @header_action = args[:header_action] if args.key?(:header_action)
34927
34981
  @kind = args[:kind] if args.key?(:kind)
34928
34982
  @match = args[:match] if args.key?(:match)
34983
+ @network_match = args[:network_match] if args.key?(:network_match)
34929
34984
  @preconfigured_waf_config = args[:preconfigured_waf_config] if args.key?(:preconfigured_waf_config)
34930
34985
  @preview = args[:preview] if args.key?(:preview)
34931
34986
  @priority = args[:priority] if args.key?(:priority)
@@ -35048,6 +35103,102 @@ module Google
35048
35103
  end
35049
35104
  end
35050
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
+
35051
35202
  #
35052
35203
  class SecurityPolicyRulePreconfiguredWafConfig
35053
35204
  include Google::Apis::Core::Hashable
@@ -35348,6 +35499,59 @@ module Google
35348
35499
  end
35349
35500
  end
35350
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
+
35351
35555
  # The authentication and authorization settings for a BackendService.
35352
35556
  class SecuritySettings
35353
35557
  include Google::Apis::Core::Hashable
@@ -36827,17 +37031,20 @@ module Google
36827
37031
  end
36828
37032
  end
36829
37033
 
36830
- # Represents an SSL Certificate resource. Google Compute Engine has two SSL
36831
- # Certificate resources: * [Global](/compute/docs/reference/rest/v1/
37034
+ # Represents an SSL certificate resource. Google Compute Engine has two SSL
37035
+ # certificate resources: * [Global](/compute/docs/reference/rest/v1/
36832
37036
  # sslCertificates) * [Regional](/compute/docs/reference/rest/v1/
36833
- # regionSslCertificates) The sslCertificates are used by: - external HTTPS load
36834
- # balancers - SSL proxy load balancers The regionSslCertificates are used by
36835
- # internal HTTPS load balancers. Optionally, certificate file contents that you
36836
- # upload can contain a set of up to five PEM-encoded certificates. The API call
36837
- # creates an object (sslCertificate) that holds this data. You can use SSL keys
36838
- # and certificates to secure connections to a load balancer. For more
36839
- # information, read Creating and using SSL certificates, SSL certificates quotas
36840
- # and limits, and Troubleshooting SSL certificates.
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.
36841
37048
  class SslCertificate
36842
37049
  include Google::Apis::Core::Hashable
36843
37050
 
@@ -39133,11 +39340,13 @@ module Google
39133
39340
  # HTTP Proxy resources: * [Global](/compute/docs/reference/rest/v1/
39134
39341
  # targetHttpProxies) * [Regional](/compute/docs/reference/rest/v1/
39135
39342
  # regionTargetHttpProxies) A target HTTP proxy is a component of GCP HTTP load
39136
- # balancers. * targetHttpProxies are used by external HTTP load balancers and
39137
- # Traffic Director. * regionTargetHttpProxies are used by internal HTTP load
39138
- # balancers. Forwarding rules reference a target HTTP proxy, and the target
39139
- # proxy then references a URL map. For more information, read Using Target
39140
- # Proxies and Forwarding rule concepts.
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.
39141
39350
  class TargetHttpProxy
39142
39351
  include Google::Apis::Core::Hashable
39143
39352
 
@@ -39165,10 +39374,10 @@ module Google
39165
39374
 
39166
39375
  # Specifies how long to keep a connection open, after completing a response,
39167
39376
  # while there is no matching traffic (in seconds). If an HTTP keep-alive is not
39168
- # specified, a default value (610 seconds) will be used. For Global external
39169
- # HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum
39170
- # allowed value is 1200 seconds. For Global external HTTP(S) load balancer (
39171
- # classic), this option is not available publicly.
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.
39172
39381
  # Corresponds to the JSON property `httpKeepAliveTimeoutSec`
39173
39382
  # @return [Fixnum]
39174
39383
  attr_accessor :http_keep_alive_timeout_sec
@@ -39573,11 +39782,13 @@ module Google
39573
39782
  # HTTPS Proxy resources: * [Global](/compute/docs/reference/rest/v1/
39574
39783
  # targetHttpsProxies) * [Regional](/compute/docs/reference/rest/v1/
39575
39784
  # regionTargetHttpsProxies) A target HTTPS proxy is a component of GCP HTTPS
39576
- # load balancers. * targetHttpsProxies are used by external HTTPS load balancers.
39577
- # * regionTargetHttpsProxies are used by internal HTTPS load balancers.
39578
- # Forwarding rules reference a target HTTPS proxy, and the target proxy then
39579
- # references a URL map. For more information, read Using Target Proxies and
39580
- # Forwarding rule concepts.
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.
39581
39792
  class TargetHttpsProxy
39582
39793
  include Google::Apis::Core::Hashable
39583
39794
 
@@ -39625,10 +39836,10 @@ module Google
39625
39836
 
39626
39837
  # Specifies how long to keep a connection open, after completing a response,
39627
39838
  # while there is no matching traffic (in seconds). If an HTTP keep-alive is not
39628
- # specified, a default value (610 seconds) will be used. For Global external
39629
- # HTTP(S) load balancer, the minimum allowed value is 5 seconds and the maximum
39630
- # allowed value is 1200 seconds. For Global external HTTP(S) load balancer (
39631
- # classic), this option is not available publicly.
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.
39632
39843
  # Corresponds to the JSON property `httpKeepAliveTimeoutSec`
39633
39844
  # @return [Fixnum]
39634
39845
  attr_accessor :http_keep_alive_timeout_sec
@@ -40059,6 +40270,12 @@ module Google
40059
40270
  # @return [String]
40060
40271
  attr_accessor :network
40061
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
+
40062
40279
  # [Output Only] Server-defined URL for the resource.
40063
40280
  # Corresponds to the JSON property `selfLink`
40064
40281
  # @return [String]
@@ -40085,6 +40302,7 @@ module Google
40085
40302
  @name = args[:name] if args.key?(:name)
40086
40303
  @nat_policy = args[:nat_policy] if args.key?(:nat_policy)
40087
40304
  @network = args[:network] if args.key?(:network)
40305
+ @security_policy = args[:security_policy] if args.key?(:security_policy)
40088
40306
  @self_link = args[:self_link] if args.key?(:self_link)
40089
40307
  @zone = args[:zone] if args.key?(:zone)
40090
40308
  end
@@ -40508,6 +40726,12 @@ module Google
40508
40726
  # @return [String]
40509
40727
  attr_accessor :region
40510
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
+
40511
40735
  # [Output Only] Server-defined URL for the resource.
40512
40736
  # Corresponds to the JSON property `selfLink`
40513
40737
  # @return [String]
@@ -40539,6 +40763,7 @@ module Google
40539
40763
  @kind = args[:kind] if args.key?(:kind)
40540
40764
  @name = args[:name] if args.key?(:name)
40541
40765
  @region = args[:region] if args.key?(:region)
40766
+ @security_policy = args[:security_policy] if args.key?(:security_policy)
40542
40767
  @self_link = args[:self_link] if args.key?(:self_link)
40543
40768
  @session_affinity = args[:session_affinity] if args.key?(:session_affinity)
40544
40769
  end
@@ -42358,17 +42583,19 @@ module Google
42358
42583
  # Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
42359
42584
  # reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
42360
42585
  # types of cloud load balancers and Traffic Director: * urlMaps are used by
42361
- # external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used
42362
- # by internal HTTP(S) load balancers. For a list of supported URL map features
42363
- # by the load balancer type, see the Load balancing features: Routing and
42364
- # traffic management table. For a list of supported URL map features for Traffic
42365
- # Director, see the Traffic Director features: Routing and traffic management
42366
- # table. This resource defines mappings from hostnames and URL paths to either a
42367
- # backend service or a backend bucket. To use the global urlMaps resource, the
42368
- # backend service must have a loadBalancingScheme of either EXTERNAL or
42369
- # INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
42370
- # must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
42371
- # read URL Map Concepts.
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.
42372
42599
  class UrlMap
42373
42600
  include Google::Apis::Core::Hashable
42374
42601
 
@@ -42383,8 +42610,8 @@ module Google
42383
42610
  # defaultRouteAction specifies any weightedBackendServices, defaultService must
42384
42611
  # not be set. Conversely if defaultService is set, defaultRouteAction cannot
42385
42612
  # contain any weightedBackendServices. Only one of defaultRouteAction or
42386
- # defaultUrlRedirect must be set. URL maps for Classic external HTTP(S) load
42387
- # balancers only support the urlRewrite action within defaultRouteAction.
42613
+ # defaultUrlRedirect must be set. URL maps for classic Application Load
42614
+ # Balancers only support the urlRewrite action within defaultRouteAction.
42388
42615
  # defaultRouteAction has no effect when the URL map is bound to a target gRPC
42389
42616
  # proxy that has the validateForProxyless field set to true.
42390
42617
  # Corresponds to the JSON property `defaultRouteAction`
@@ -43001,16 +43228,16 @@ module Google
43001
43228
  include Google::Apis::Core::Hashable
43002
43229
 
43003
43230
  # Specifies the load balancer type(s) this validation request is for. Use
43004
- # EXTERNAL_MANAGED for HTTP/HTTPS External Global Load Balancer with Advanced
43005
- # Traffic Management. Use EXTERNAL for Classic HTTP/HTTPS External Global Load
43006
- # Balancer. Other load balancer types are not supported. For more information,
43007
- # refer to Choosing a load balancer. If unspecified, the load balancing scheme
43008
- # will be inferred from the backend service resources this URL map references.
43009
- # If that can not be inferred (for example, this URL map only references backend
43010
- # buckets, or this Url map is for rewrites and redirects only and doesn't
43011
- # reference any backends), EXTERNAL will be used as the default type. If
43012
- # specified, the scheme(s) must not conflict with the load balancing scheme of
43013
- # 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.
43014
43241
  # Corresponds to the JSON property `loadBalancingSchemes`
43015
43242
  # @return [Array<String>]
43016
43243
  attr_accessor :load_balancing_schemes
@@ -43019,17 +43246,19 @@ module Google
43019
43246
  # Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
43020
43247
  # reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
43021
43248
  # types of cloud load balancers and Traffic Director: * urlMaps are used by
43022
- # external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used
43023
- # by internal HTTP(S) load balancers. For a list of supported URL map features
43024
- # by the load balancer type, see the Load balancing features: Routing and
43025
- # traffic management table. For a list of supported URL map features for Traffic
43026
- # Director, see the Traffic Director features: Routing and traffic management
43027
- # table. This resource defines mappings from hostnames and URL paths to either a
43028
- # backend service or a backend bucket. To use the global urlMaps resource, the
43029
- # backend service must have a loadBalancingScheme of either EXTERNAL or
43030
- # INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
43031
- # must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
43032
- # read URL Map Concepts.
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.
43033
43262
  # Corresponds to the JSON property `resource`
43034
43263
  # @return [Google::Apis::ComputeV1::UrlMap]
43035
43264
  attr_accessor :resource
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module ComputeV1
18
18
  # Version of the google-apis-compute_v1 gem
19
- GEM_VERSION = "0.77.0"
19
+ GEM_VERSION = "0.78.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.12.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20230814"
25
+ REVISION = "20230829"
26
26
  end
27
27
  end
28
28
  end
@@ -2110,6 +2110,12 @@ module Google
2110
2110
  include Google::Apis::Core::JsonObjectSupport
2111
2111
  end
2112
2112
 
2113
+ class InstancesSetSecurityPolicyRequest
2114
+ class Representation < Google::Apis::Core::JsonRepresentation; end
2115
+
2116
+ include Google::Apis::Core::JsonObjectSupport
2117
+ end
2118
+
2113
2119
  class InstancesSetServiceAccountRequest
2114
2120
  class Representation < Google::Apis::Core::JsonRepresentation; end
2115
2121
 
@@ -4564,6 +4570,18 @@ module Google
4564
4570
  include Google::Apis::Core::JsonObjectSupport
4565
4571
  end
4566
4572
 
4573
+ class SecurityPolicyRuleNetworkMatcher
4574
+ class Representation < Google::Apis::Core::JsonRepresentation; end
4575
+
4576
+ include Google::Apis::Core::JsonObjectSupport
4577
+ end
4578
+
4579
+ class SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch
4580
+ class Representation < Google::Apis::Core::JsonRepresentation; end
4581
+
4582
+ include Google::Apis::Core::JsonObjectSupport
4583
+ end
4584
+
4567
4585
  class SecurityPolicyRulePreconfiguredWafConfig
4568
4586
  class Representation < Google::Apis::Core::JsonRepresentation; end
4569
4587
 
@@ -4606,6 +4624,12 @@ module Google
4606
4624
  include Google::Apis::Core::JsonObjectSupport
4607
4625
  end
4608
4626
 
4627
+ class SecurityPolicyUserDefinedField
4628
+ class Representation < Google::Apis::Core::JsonRepresentation; end
4629
+
4630
+ include Google::Apis::Core::JsonObjectSupport
4631
+ end
4632
+
4609
4633
  class SecuritySettings
4610
4634
  class Representation < Google::Apis::Core::JsonRepresentation; end
4611
4635
 
@@ -6135,6 +6159,7 @@ module Google
6135
6159
  property :nat_ip, as: 'natIP'
6136
6160
  property :network_tier, as: 'networkTier'
6137
6161
  property :public_ptr_domain_name, as: 'publicPtrDomainName'
6162
+ property :security_policy, as: 'securityPolicy'
6138
6163
  property :set_public_ptr, as: 'setPublicPtr'
6139
6164
  property :type, as: 'type'
6140
6165
  end
@@ -10004,6 +10029,14 @@ module Google
10004
10029
  end
10005
10030
  end
10006
10031
 
10032
+ class InstancesSetSecurityPolicyRequest
10033
+ # @private
10034
+ class Representation < Google::Apis::Core::JsonRepresentation
10035
+ collection :network_interfaces, as: 'networkInterfaces'
10036
+ property :security_policy, as: 'securityPolicy'
10037
+ end
10038
+ end
10039
+
10007
10040
  class InstancesSetServiceAccountRequest
10008
10041
  # @private
10009
10042
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -14385,6 +14418,8 @@ module Google
14385
14418
 
14386
14419
  property :self_link, as: 'selfLink'
14387
14420
  property :type, as: 'type'
14421
+ collection :user_defined_fields, as: 'userDefinedFields', class: Google::Apis::ComputeV1::SecurityPolicyUserDefinedField, decorator: Google::Apis::ComputeV1::SecurityPolicyUserDefinedField::Representation
14422
+
14388
14423
  end
14389
14424
  end
14390
14425
 
@@ -14496,6 +14531,8 @@ module Google
14496
14531
  property :kind, as: 'kind'
14497
14532
  property :match, as: 'match', class: Google::Apis::ComputeV1::SecurityPolicyRuleMatcher, decorator: Google::Apis::ComputeV1::SecurityPolicyRuleMatcher::Representation
14498
14533
 
14534
+ property :network_match, as: 'networkMatch', class: Google::Apis::ComputeV1::SecurityPolicyRuleNetworkMatcher, decorator: Google::Apis::ComputeV1::SecurityPolicyRuleNetworkMatcher::Representation
14535
+
14499
14536
  property :preconfigured_waf_config, as: 'preconfiguredWafConfig', class: Google::Apis::ComputeV1::SecurityPolicyRulePreconfiguredWafConfig, decorator: Google::Apis::ComputeV1::SecurityPolicyRulePreconfiguredWafConfig::Representation
14500
14537
 
14501
14538
  property :preview, as: 'preview'
@@ -14541,6 +14578,29 @@ module Google
14541
14578
  end
14542
14579
  end
14543
14580
 
14581
+ class SecurityPolicyRuleNetworkMatcher
14582
+ # @private
14583
+ class Representation < Google::Apis::Core::JsonRepresentation
14584
+ collection :dest_ip_ranges, as: 'destIpRanges'
14585
+ collection :dest_ports, as: 'destPorts'
14586
+ collection :ip_protocols, as: 'ipProtocols'
14587
+ collection :src_asns, as: 'srcAsns'
14588
+ collection :src_ip_ranges, as: 'srcIpRanges'
14589
+ collection :src_ports, as: 'srcPorts'
14590
+ collection :src_region_codes, as: 'srcRegionCodes'
14591
+ collection :user_defined_fields, as: 'userDefinedFields', class: Google::Apis::ComputeV1::SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch, decorator: Google::Apis::ComputeV1::SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch::Representation
14592
+
14593
+ end
14594
+ end
14595
+
14596
+ class SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch
14597
+ # @private
14598
+ class Representation < Google::Apis::Core::JsonRepresentation
14599
+ property :name, as: 'name'
14600
+ collection :values, as: 'values'
14601
+ end
14602
+ end
14603
+
14544
14604
  class SecurityPolicyRulePreconfiguredWafConfig
14545
14605
  # @private
14546
14606
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -14616,6 +14676,17 @@ module Google
14616
14676
  end
14617
14677
  end
14618
14678
 
14679
+ class SecurityPolicyUserDefinedField
14680
+ # @private
14681
+ class Representation < Google::Apis::Core::JsonRepresentation
14682
+ property :base, as: 'base'
14683
+ property :mask, as: 'mask'
14684
+ property :name, as: 'name'
14685
+ property :offset, as: 'offset'
14686
+ property :size, as: 'size'
14687
+ end
14688
+ end
14689
+
14619
14690
  class SecuritySettings
14620
14691
  # @private
14621
14692
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -15764,6 +15835,7 @@ module Google
15764
15835
  property :name, as: 'name'
15765
15836
  property :nat_policy, as: 'natPolicy'
15766
15837
  property :network, as: 'network'
15838
+ property :security_policy, as: 'securityPolicy'
15767
15839
  property :self_link, as: 'selfLink'
15768
15840
  property :zone, as: 'zone'
15769
15841
  end
@@ -15875,6 +15947,7 @@ module Google
15875
15947
  property :kind, as: 'kind'
15876
15948
  property :name, as: 'name'
15877
15949
  property :region, as: 'region'
15950
+ property :security_policy, as: 'securityPolicy'
15878
15951
  property :self_link, as: 'selfLink'
15879
15952
  property :session_affinity, as: 'sessionAffinity'
15880
15953
  end
@@ -13106,6 +13106,61 @@ module Google
13106
13106
  execute_or_queue_command(command, &block)
13107
13107
  end
13108
13108
 
13109
+ # Sets the Google Cloud Armor security policy for the specified instance. For
13110
+ # more information, see Google Cloud Armor Overview
13111
+ # @param [String] project
13112
+ # Project ID for this request.
13113
+ # @param [String] zone
13114
+ # Name of the zone scoping this request.
13115
+ # @param [String] instance
13116
+ # Name of the Instance resource to which the security policy should be set. The
13117
+ # name should conform to RFC1035.
13118
+ # @param [Google::Apis::ComputeV1::InstancesSetSecurityPolicyRequest] instances_set_security_policy_request_object
13119
+ # @param [String] request_id
13120
+ # An optional request ID to identify requests. Specify a unique request ID so
13121
+ # that if you must retry your request, the server will know to ignore the
13122
+ # request if it has already been completed. For example, consider a situation
13123
+ # where you make an initial request and the request times out. If you make the
13124
+ # request again with the same request ID, the server can check if original
13125
+ # operation with the same request ID was received, and if so, will ignore the
13126
+ # second request. This prevents clients from accidentally creating duplicate
13127
+ # commitments. The request ID must be a valid UUID with the exception that zero
13128
+ # UUID is not supported ( 00000000-0000-0000-0000-000000000000).
13129
+ # @param [String] fields
13130
+ # Selector specifying which fields to include in a partial response.
13131
+ # @param [String] quota_user
13132
+ # Available to use for quota purposes for server-side applications. Can be any
13133
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
13134
+ # @param [String] user_ip
13135
+ # Legacy name for parameter that has been superseded by `quotaUser`.
13136
+ # @param [Google::Apis::RequestOptions] options
13137
+ # Request-specific options
13138
+ #
13139
+ # @yield [result, err] Result & error if block supplied
13140
+ # @yieldparam result [Google::Apis::ComputeV1::Operation] parsed result object
13141
+ # @yieldparam err [StandardError] error object if request failed
13142
+ #
13143
+ # @return [Google::Apis::ComputeV1::Operation]
13144
+ #
13145
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
13146
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
13147
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
13148
+ def set_instance_security_policy(project, zone, instance, instances_set_security_policy_request_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
13149
+ command = make_simple_command(:post, 'projects/{project}/zones/{zone}/instances/{instance}/setSecurityPolicy', options)
13150
+ command.request_representation = Google::Apis::ComputeV1::InstancesSetSecurityPolicyRequest::Representation
13151
+ command.request_object = instances_set_security_policy_request_object
13152
+ command.response_representation = Google::Apis::ComputeV1::Operation::Representation
13153
+ command.response_class = Google::Apis::ComputeV1::Operation
13154
+ command.params['project'] = project unless project.nil?
13155
+ command.params['zone'] = zone unless zone.nil?
13156
+ command.params['instance'] = instance unless instance.nil?
13157
+ command.query['requestId'] = request_id unless request_id.nil?
13158
+ command.query['fields'] = fields unless fields.nil?
13159
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
13160
+ command.query['userIp'] = user_ip unless user_ip.nil?
13161
+ execute_or_queue_command(command, &block)
13162
+ end
13163
+
13109
13164
  # Sets the service account on the instance. For more information, read Changing
13110
13165
  # the service account and access scopes for an instance.
13111
13166
  # @param [String] project
@@ -22674,6 +22729,61 @@ module Google
22674
22729
  execute_or_queue_command(command, &block)
22675
22730
  end
22676
22731
 
22732
+ # Sets the Google Cloud Armor security policy for the specified backend service.
22733
+ # For more information, see Google Cloud Armor Overview
22734
+ # @param [String] project
22735
+ # Project ID for this request.
22736
+ # @param [String] region
22737
+ # Name of the region scoping this request.
22738
+ # @param [String] backend_service
22739
+ # Name of the BackendService resource to which the security policy should be set.
22740
+ # The name should conform to RFC1035.
22741
+ # @param [Google::Apis::ComputeV1::SecurityPolicyReference] security_policy_reference_object
22742
+ # @param [String] request_id
22743
+ # An optional request ID to identify requests. Specify a unique request ID so
22744
+ # that if you must retry your request, the server will know to ignore the
22745
+ # request if it has already been completed. For example, consider a situation
22746
+ # where you make an initial request and the request times out. If you make the
22747
+ # request again with the same request ID, the server can check if original
22748
+ # operation with the same request ID was received, and if so, will ignore the
22749
+ # second request. This prevents clients from accidentally creating duplicate
22750
+ # commitments. The request ID must be a valid UUID with the exception that zero
22751
+ # UUID is not supported ( 00000000-0000-0000-0000-000000000000).
22752
+ # @param [String] fields
22753
+ # Selector specifying which fields to include in a partial response.
22754
+ # @param [String] quota_user
22755
+ # Available to use for quota purposes for server-side applications. Can be any
22756
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
22757
+ # @param [String] user_ip
22758
+ # Legacy name for parameter that has been superseded by `quotaUser`.
22759
+ # @param [Google::Apis::RequestOptions] options
22760
+ # Request-specific options
22761
+ #
22762
+ # @yield [result, err] Result & error if block supplied
22763
+ # @yieldparam result [Google::Apis::ComputeV1::Operation] parsed result object
22764
+ # @yieldparam err [StandardError] error object if request failed
22765
+ #
22766
+ # @return [Google::Apis::ComputeV1::Operation]
22767
+ #
22768
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
22769
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
22770
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
22771
+ def set_region_backend_service_security_policy(project, region, backend_service, security_policy_reference_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
22772
+ command = make_simple_command(:post, 'projects/{project}/regions/{region}/backendServices/{backendService}/setSecurityPolicy', options)
22773
+ command.request_representation = Google::Apis::ComputeV1::SecurityPolicyReference::Representation
22774
+ command.request_object = security_policy_reference_object
22775
+ command.response_representation = Google::Apis::ComputeV1::Operation::Representation
22776
+ command.response_class = Google::Apis::ComputeV1::Operation
22777
+ command.params['project'] = project unless project.nil?
22778
+ command.params['region'] = region unless region.nil?
22779
+ command.params['backendService'] = backend_service unless backend_service.nil?
22780
+ command.query['requestId'] = request_id unless request_id.nil?
22781
+ command.query['fields'] = fields unless fields.nil?
22782
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
22783
+ command.query['userIp'] = user_ip unless user_ip.nil?
22784
+ execute_or_queue_command(command, &block)
22785
+ end
22786
+
22677
22787
  # Updates the specified regional BackendService resource with the data included
22678
22788
  # in the request. For more information, see Backend services overview .
22679
22789
  # @param [String] project
@@ -37009,6 +37119,61 @@ module Google
37009
37119
  execute_or_queue_command(command, &block)
37010
37120
  end
37011
37121
 
37122
+ # Sets the Google Cloud Armor security policy for the specified target instance.
37123
+ # For more information, see Google Cloud Armor Overview
37124
+ # @param [String] project
37125
+ # Project ID for this request.
37126
+ # @param [String] zone
37127
+ # Name of the zone scoping this request.
37128
+ # @param [String] target_instance
37129
+ # Name of the TargetInstance resource to which the security policy should be set.
37130
+ # The name should conform to RFC1035.
37131
+ # @param [Google::Apis::ComputeV1::SecurityPolicyReference] security_policy_reference_object
37132
+ # @param [String] request_id
37133
+ # An optional request ID to identify requests. Specify a unique request ID so
37134
+ # that if you must retry your request, the server will know to ignore the
37135
+ # request if it has already been completed. For example, consider a situation
37136
+ # where you make an initial request and the request times out. If you make the
37137
+ # request again with the same request ID, the server can check if original
37138
+ # operation with the same request ID was received, and if so, will ignore the
37139
+ # second request. This prevents clients from accidentally creating duplicate
37140
+ # commitments. The request ID must be a valid UUID with the exception that zero
37141
+ # UUID is not supported ( 00000000-0000-0000-0000-000000000000).
37142
+ # @param [String] fields
37143
+ # Selector specifying which fields to include in a partial response.
37144
+ # @param [String] quota_user
37145
+ # Available to use for quota purposes for server-side applications. Can be any
37146
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
37147
+ # @param [String] user_ip
37148
+ # Legacy name for parameter that has been superseded by `quotaUser`.
37149
+ # @param [Google::Apis::RequestOptions] options
37150
+ # Request-specific options
37151
+ #
37152
+ # @yield [result, err] Result & error if block supplied
37153
+ # @yieldparam result [Google::Apis::ComputeV1::Operation] parsed result object
37154
+ # @yieldparam err [StandardError] error object if request failed
37155
+ #
37156
+ # @return [Google::Apis::ComputeV1::Operation]
37157
+ #
37158
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
37159
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
37160
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
37161
+ def set_target_instance_security_policy(project, zone, target_instance, security_policy_reference_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
37162
+ command = make_simple_command(:post, 'projects/{project}/zones/{zone}/targetInstances/{targetInstance}/setSecurityPolicy', options)
37163
+ command.request_representation = Google::Apis::ComputeV1::SecurityPolicyReference::Representation
37164
+ command.request_object = security_policy_reference_object
37165
+ command.response_representation = Google::Apis::ComputeV1::Operation::Representation
37166
+ command.response_class = Google::Apis::ComputeV1::Operation
37167
+ command.params['project'] = project unless project.nil?
37168
+ command.params['zone'] = zone unless zone.nil?
37169
+ command.params['targetInstance'] = target_instance unless target_instance.nil?
37170
+ command.query['requestId'] = request_id unless request_id.nil?
37171
+ command.query['fields'] = fields unless fields.nil?
37172
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
37173
+ command.query['userIp'] = user_ip unless user_ip.nil?
37174
+ execute_or_queue_command(command, &block)
37175
+ end
37176
+
37012
37177
  # Adds health check URLs to a target pool.
37013
37178
  # @param [String] project
37014
37179
  # Project ID for this request.
@@ -37647,6 +37812,61 @@ module Google
37647
37812
  execute_or_queue_command(command, &block)
37648
37813
  end
37649
37814
 
37815
+ # Sets the Google Cloud Armor security policy for the specified target pool. For
37816
+ # more information, see Google Cloud Armor Overview
37817
+ # @param [String] project
37818
+ # Project ID for this request.
37819
+ # @param [String] region
37820
+ # Name of the region scoping this request.
37821
+ # @param [String] target_pool
37822
+ # Name of the TargetPool resource to which the security policy should be set.
37823
+ # The name should conform to RFC1035.
37824
+ # @param [Google::Apis::ComputeV1::SecurityPolicyReference] security_policy_reference_object
37825
+ # @param [String] request_id
37826
+ # An optional request ID to identify requests. Specify a unique request ID so
37827
+ # that if you must retry your request, the server will know to ignore the
37828
+ # request if it has already been completed. For example, consider a situation
37829
+ # where you make an initial request and the request times out. If you make the
37830
+ # request again with the same request ID, the server can check if original
37831
+ # operation with the same request ID was received, and if so, will ignore the
37832
+ # second request. This prevents clients from accidentally creating duplicate
37833
+ # commitments. The request ID must be a valid UUID with the exception that zero
37834
+ # UUID is not supported ( 00000000-0000-0000-0000-000000000000).
37835
+ # @param [String] fields
37836
+ # Selector specifying which fields to include in a partial response.
37837
+ # @param [String] quota_user
37838
+ # Available to use for quota purposes for server-side applications. Can be any
37839
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
37840
+ # @param [String] user_ip
37841
+ # Legacy name for parameter that has been superseded by `quotaUser`.
37842
+ # @param [Google::Apis::RequestOptions] options
37843
+ # Request-specific options
37844
+ #
37845
+ # @yield [result, err] Result & error if block supplied
37846
+ # @yieldparam result [Google::Apis::ComputeV1::Operation] parsed result object
37847
+ # @yieldparam err [StandardError] error object if request failed
37848
+ #
37849
+ # @return [Google::Apis::ComputeV1::Operation]
37850
+ #
37851
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
37852
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
37853
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
37854
+ def set_target_pool_security_policy(project, region, target_pool, security_policy_reference_object = nil, request_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
37855
+ command = make_simple_command(:post, 'projects/{project}/regions/{region}/targetPools/{targetPool}/setSecurityPolicy', options)
37856
+ command.request_representation = Google::Apis::ComputeV1::SecurityPolicyReference::Representation
37857
+ command.request_object = security_policy_reference_object
37858
+ command.response_representation = Google::Apis::ComputeV1::Operation::Representation
37859
+ command.response_class = Google::Apis::ComputeV1::Operation
37860
+ command.params['project'] = project unless project.nil?
37861
+ command.params['region'] = region unless region.nil?
37862
+ command.params['targetPool'] = target_pool unless target_pool.nil?
37863
+ command.query['requestId'] = request_id unless request_id.nil?
37864
+ command.query['fields'] = fields unless fields.nil?
37865
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
37866
+ command.query['userIp'] = user_ip unless user_ip.nil?
37867
+ execute_or_queue_command(command, &block)
37868
+ end
37869
+
37650
37870
  # Deletes the specified TargetSslProxy resource.
37651
37871
  # @param [String] project
37652
37872
  # Project ID for this request.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-compute_v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.77.0
4
+ version: 0.78.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-27 00:00:00.000000000 Z
11
+ date: 2023-09-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-compute_v1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-compute_v1/v0.77.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-compute_v1/v0.78.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-compute_v1
63
63
  post_install_message:
64
64
  rdoc_options: []