Class: Google::Apis::ServicenetworkingV1::AddSubnetworkRequest

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

Overview

Request to create a subnetwork in a previously peered service network.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ AddSubnetworkRequest

Returns a new instance of AddSubnetworkRequest.



322
323
324
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 322

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

Instance Attribute Details

#check_service_networking_use_permissionBoolean Also known as: check_service_networking_use_permission?

Optional. The IAM permission check determines whether the consumer project has 'servicenetworking.services.use' permission or not. Corresponds to the JSON property checkServiceNetworkingUsePermission

Returns:

  • (Boolean)


222
223
224
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 222

def check_service_networking_use_permission
  @check_service_networking_use_permission
end

#consumerString

Required. A resource that represents the service consumer, such as projects/ 123456. The project number can be different from the value in the consumer network parameter. For example, the network might be part of a Shared VPC network. In those cases, Service Networking validates that this resource belongs to that Shared VPC. Corresponds to the JSON property consumer

Returns:

  • (String)


232
233
234
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 232

def consumer
  @consumer
end

#consumer_networkString

Required. The name of the service consumer's VPC network. The network must have an existing private connection that was provisioned through the connections.create method. The name must be in the following format: projects/ project/global/networks/network`, whereprojectis a project number, such as12345.networkis the name of a VPC network in the project. Corresponds to the JSON propertyconsumerNetwork`

Returns:

  • (String)


241
242
243
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 241

def consumer_network
  @consumer_network
end

#descriptionString

Optional. Description of the subnet. Corresponds to the JSON property description

Returns:

  • (String)


246
247
248
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 246

def description
  @description
end

#ip_prefix_lengthFixnum

Required. The prefix length of the subnet's IP address range. Use CIDR range notation, such as 30 to provision a subnet with an x.x.x.x/30 CIDR range. The IP address range is drawn from a pool of available ranges in the service consumer's allocated range. Corresponds to the JSON property ipPrefixLength

Returns:

  • (Fixnum)


254
255
256
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 254

def ip_prefix_length
  @ip_prefix_length
end

#outside_allocation_public_ip_rangeString

Optional. Enable outside allocation using public IP addresses. Any public IP range may be specified. If this field is provided, we will not use customer reserved ranges for this primary IP range. Corresponds to the JSON property outsideAllocationPublicIpRange

Returns:

  • (String)


261
262
263
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 261

def outside_allocation_public_ip_range
  @outside_allocation_public_ip_range
end

#private_ipv6_google_accessString

Optional. The private IPv6 google access type for the VMs in this subnet. For information about the access types that can be set using this field, see subnetwork in the Compute API documentation. Corresponds to the JSON property privateIpv6GoogleAccess

Returns:

  • (String)


269
270
271
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 269

def private_ipv6_google_access
  @private_ipv6_google_access
end

#purposeString

Optional. Defines the purpose field of the subnet, e.g. ' PRIVATE_SERVICE_CONNECT'. For information about the purposes that can be set using this field, see subnetwork in the Compute API documentation. Corresponds to the JSON property purpose

Returns:

  • (String)


277
278
279
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 277

def purpose
  @purpose
end

#regionString

Required. The name of a region for the subnet, such europe-west1. Corresponds to the JSON property region

Returns:

  • (String)


283
284
285
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 283

def region
  @region
end

#requested_addressString

Optional. The starting address of a range. The address must be a valid IPv4 address in the x.x.x.x format. This value combined with the IP prefix range is the CIDR range for the subnet. The range must be within the allocated range that is assigned to the private connection. If the CIDR range isn't available, the call fails. Corresponds to the JSON property requestedAddress

Returns:

  • (String)


292
293
294
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 292

def requested_address
  @requested_address
end

#requested_rangesArray<String>

Optional. The name of one or more allocated IP address ranges associated with this private service access connection. If no range names are provided all ranges associated with this connection will be considered. If a CIDR range with the specified IP prefix length is not available within these ranges, the call fails. Corresponds to the JSON property requestedRanges

Returns:

  • (Array<String>)


301
302
303
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 301

def requested_ranges
  @requested_ranges
end

#secondary_ip_range_specsArray<Google::Apis::ServicenetworkingV1::SecondaryIpRangeSpec>

Optional. A list of secondary IP ranges to be created within the new subnetwork. Corresponds to the JSON property secondaryIpRangeSpecs



307
308
309
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 307

def secondary_ip_range_specs
  @secondary_ip_range_specs
end

#subnetworkString

Required. A name for the new subnet. For information about the naming requirements, see subnetwork in the Compute API documentation. Corresponds to the JSON property subnetwork

Returns:

  • (String)


314
315
316
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 314

def subnetwork
  @subnetwork
end

#subnetwork_usersArray<String>

A list of members that are granted the compute.networkUser role on the subnet. Corresponds to the JSON property subnetworkUsers

Returns:

  • (Array<String>)


320
321
322
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 320

def subnetwork_users
  @subnetwork_users
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
# File 'lib/google/apis/servicenetworking_v1/classes.rb', line 327

def update!(**args)
  @check_service_networking_use_permission = args[:check_service_networking_use_permission] if args.key?(:check_service_networking_use_permission)
  @consumer = args[:consumer] if args.key?(:consumer)
  @consumer_network = args[:consumer_network] if args.key?(:consumer_network)
  @description = args[:description] if args.key?(:description)
  @ip_prefix_length = args[:ip_prefix_length] if args.key?(:ip_prefix_length)
  @outside_allocation_public_ip_range = args[:outside_allocation_public_ip_range] if args.key?(:outside_allocation_public_ip_range)
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
  @purpose = args[:purpose] if args.key?(:purpose)
  @region = args[:region] if args.key?(:region)
  @requested_address = args[:requested_address] if args.key?(:requested_address)
  @requested_ranges = args[:requested_ranges] if args.key?(:requested_ranges)
  @secondary_ip_range_specs = args[:secondary_ip_range_specs] if args.key?(:secondary_ip_range_specs)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
  @subnetwork_users = args[:subnetwork_users] if args.key?(:subnetwork_users)
end