@@ -411,6 +411,44 @@ def update!(**args)
411411 end
412412 end
413413
414+ # The Direct VPC network interface. This is mutually exclusive with VPC
415+ # Connector.
416+ class DirectVpcNetworkInterface
417+ include Google ::Apis ::Core ::Hashable
418+
419+ # Optional. The name of the VPC network to which the function will be connected.
420+ # Specify either a VPC network or a subnet, or both. If you specify only a
421+ # network, the subnet uses the same name as the network.
422+ # Corresponds to the JSON property `network`
423+ # @return [String]
424+ attr_accessor :network
425+
426+ # Optional. The name of the VPC subnetwork that the Cloud Function resource will
427+ # get IPs from. Specify either a VPC network or a subnet, or both. If both
428+ # network and subnetwork are specified, the given VPC subnetwork must belong to
429+ # the given VPC network. If subnetwork is not specified, the subnetwork with the
430+ # same name with the network will be used.
431+ # Corresponds to the JSON property `subnetwork`
432+ # @return [String]
433+ attr_accessor :subnetwork
434+
435+ # Optional. Network tags applied to this Cloud Function resource.
436+ # Corresponds to the JSON property `tags`
437+ # @return [Array<String>]
438+ attr_accessor :tags
439+
440+ def initialize ( **args )
441+ update! ( **args )
442+ end
443+
444+ # Update properties of this object
445+ def update! ( **args )
446+ @network = args [ :network ] if args . key? ( :network )
447+ @subnetwork = args [ :subnetwork ] if args . key? ( :subnetwork )
448+ @tags = args [ :tags ] if args . key? ( :tags )
449+ end
450+ end
451+
414452 # Filters events based on exact matches on the CloudEvents attributes.
415453 class EventFilter
416454 include Google ::Apis ::Core ::Hashable
@@ -1705,6 +1743,18 @@ class ServiceConfig
17051743 # @return [String]
17061744 attr_accessor :binary_authorization_policy
17071745
1746+ # Optional. Egress settings for direct VPC. If not provided, it defaults to
1747+ # VPC_EGRESS_PRIVATE_RANGES_ONLY.
1748+ # Corresponds to the JSON property `directVpcEgress`
1749+ # @return [String]
1750+ attr_accessor :direct_vpc_egress
1751+
1752+ # Optional. The Direct VPC network interface for the Cloud Function. Currently
1753+ # only a single Direct VPC is supported.
1754+ # Corresponds to the JSON property `directVpcNetworkInterface`
1755+ # @return [Array<Google::Apis::CloudfunctionsV2beta::DirectVpcNetworkInterface>]
1756+ attr_accessor :direct_vpc_network_interface
1757+
17081758 # Environment variables that shall be available during function execution.
17091759 # Corresponds to the JSON property `environmentVariables`
17101760 # @return [Hash<String,String>]
@@ -1812,6 +1862,8 @@ def update!(**args)
18121862 @available_cpu = args [ :available_cpu ] if args . key? ( :available_cpu )
18131863 @available_memory = args [ :available_memory ] if args . key? ( :available_memory )
18141864 @binary_authorization_policy = args [ :binary_authorization_policy ] if args . key? ( :binary_authorization_policy )
1865+ @direct_vpc_egress = args [ :direct_vpc_egress ] if args . key? ( :direct_vpc_egress )
1866+ @direct_vpc_network_interface = args [ :direct_vpc_network_interface ] if args . key? ( :direct_vpc_network_interface )
18151867 @environment_variables = args [ :environment_variables ] if args . key? ( :environment_variables )
18161868 @ingress_settings = args [ :ingress_settings ] if args . key? ( :ingress_settings )
18171869 @max_instance_count = args [ :max_instance_count ] if args . key? ( :max_instance_count )
0 commit comments