Class: Google::Apis::NetworkconnectivityV1::PscConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networkconnectivity_v1/classes.rb,
lib/google/apis/networkconnectivity_v1/representations.rb,
lib/google/apis/networkconnectivity_v1/representations.rb

Overview

Configuration used for Private Service Connect connections. Used when Infrastructure is PSC.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ PscConfig

Returns a new instance of PscConfig.



2389
2390
2391
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2389

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#allowed_google_producers_resource_hierarchy_levelArray<String>

Optional. List of Projects, Folders, or Organizations from where the Producer instance can be within. For example, a network administrator can provide both ' organizations/foo' and 'projects/bar' as allowed_google_producers_resource_hierarchy_levels. This allowlists this network to connect with any Producer instance within the 'foo' organization or the 'bar' project. By default, allowed_google_producers_resource_hierarchy_level is empty. The format for each allowed_google_producers_resource_hierarchy_level is / where is one of ' projects', 'folders', or 'organizations' and is either the ID or the number of the resource type. Format for each allowed_google_producers_resource_hierarchy_level value: 'projects/' or ' folders/' or 'organizations/' Eg. [projects/my-project-id, projects/567, folders/891, organizations/123] Corresponds to the JSON property allowedGoogleProducersResourceHierarchyLevel

Returns:

  • (Array<String>)


2369
2370
2371
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2369

def allowed_google_producers_resource_hierarchy_level
  @allowed_google_producers_resource_hierarchy_level
end

#limitFixnum

Optional. Max number of PSC connections for this policy. Corresponds to the JSON property limit

Returns:

  • (Fixnum)


2374
2375
2376
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2374

def limit
  @limit
end

#producer_instance_locationString

Required. ProducerInstanceLocation is used to specify which authorization mechanism to use to determine which projects the Producer instance can be within. Corresponds to the JSON property producerInstanceLocation

Returns:

  • (String)


2381
2382
2383
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2381

def producer_instance_location
  @producer_instance_location
end

#subnetworksArray<String>

The resource paths of subnetworks to use for IP address management. Example: projects/projectNumOrId/regions/region/subnetworks/resourceId. Corresponds to the JSON property subnetworks

Returns:

  • (Array<String>)


2387
2388
2389
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2387

def subnetworks
  @subnetworks
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2394
2395
2396
2397
2398
2399
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 2394

def update!(**args)
  @allowed_google_producers_resource_hierarchy_level = args[:allowed_google_producers_resource_hierarchy_level] if args.key?(:allowed_google_producers_resource_hierarchy_level)
  @limit = args[:limit] if args.key?(:limit)
  @producer_instance_location = args[:producer_instance_location] if args.key?(:producer_instance_location)
  @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
end