Class: Google::Apis::BaremetalsolutionV2::NetworkConfig

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

Overview

Configuration parameters for a new network.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NetworkConfig

Returns a new instance of NetworkConfig.



1447
1448
1449
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1447

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

Instance Attribute Details

#bandwidthString

Interconnect bandwidth. Set only when type is CLIENT. Corresponds to the JSON property bandwidth

Returns:

  • (String)


1381
1382
1383
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1381

def bandwidth
  @bandwidth
end

#cidrString

CIDR range of the network. Corresponds to the JSON property cidr

Returns:

  • (String)


1386
1387
1388
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1386

def cidr
  @cidr
end

#gcp_serviceString

The GCP service of the network. Available gcp_service are in https://cloud. google.com/bare-metal/docs/bms-planning. Corresponds to the JSON property gcpService

Returns:

  • (String)


1392
1393
1394
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1392

def gcp_service
  @gcp_service
end

#idString

A transient unique identifier to identify a volume within an ProvisioningConfig request. Corresponds to the JSON property id

Returns:

  • (String)


1398
1399
1400
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1398

def id
  @id
end

#jumbo_frames_enabledBoolean Also known as: jumbo_frames_enabled?

The JumboFramesEnabled option for customer to set. Corresponds to the JSON property jumboFramesEnabled

Returns:

  • (Boolean)


1403
1404
1405
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1403

def jumbo_frames_enabled
  @jumbo_frames_enabled
end

#nameString

Output only. The name of the network config. Corresponds to the JSON property name

Returns:

  • (String)


1409
1410
1411
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1409

def name
  @name
end

#service_cidrString

Service CIDR, if any. Corresponds to the JSON property serviceCidr

Returns:

  • (String)


1414
1415
1416
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1414

def service_cidr
  @service_cidr
end

#typeString

The type of this network, either Client or Private. Corresponds to the JSON property type

Returns:

  • (String)


1419
1420
1421
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1419

def type
  @type
end

#user_noteString

User note field, it can be used by customers to add additional information for the BMS Ops team . Corresponds to the JSON property userNote

Returns:

  • (String)


1425
1426
1427
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1425

def user_note
  @user_note
end

#vlan_attachmentsArray<Google::Apis::BaremetalsolutionV2::IntakeVlanAttachment>

List of VLAN attachments. As of now there are always 2 attachments, but it is going to change in the future (multi vlan). Use only one of vlan_attachments or vrf Corresponds to the JSON property vlanAttachments



1432
1433
1434
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1432

def vlan_attachments
  @vlan_attachments
end

#vlan_same_projectBoolean Also known as: vlan_same_project?

Whether the VLAN attachment pair is located in the same project. Corresponds to the JSON property vlanSameProject

Returns:

  • (Boolean)


1437
1438
1439
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1437

def vlan_same_project
  @vlan_same_project
end

#vrfString

Optional. The name of a pre-existing Vrf that the network should be attached to. Format is vrfs/vrf`. If vrf is specified, vlan_attachments must be empty. Corresponds to the JSON propertyvrf`

Returns:

  • (String)


1445
1446
1447
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1445

def vrf
  @vrf
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1452

def update!(**args)
  @bandwidth = args[:bandwidth] if args.key?(:bandwidth)
  @cidr = args[:cidr] if args.key?(:cidr)
  @gcp_service = args[:gcp_service] if args.key?(:gcp_service)
  @id = args[:id] if args.key?(:id)
  @jumbo_frames_enabled = args[:jumbo_frames_enabled] if args.key?(:jumbo_frames_enabled)
  @name = args[:name] if args.key?(:name)
  @service_cidr = args[:service_cidr] if args.key?(:service_cidr)
  @type = args[:type] if args.key?(:type)
  @user_note = args[:user_note] if args.key?(:user_note)
  @vlan_attachments = args[:vlan_attachments] if args.key?(:vlan_attachments)
  @vlan_same_project = args[:vlan_same_project] if args.key?(:vlan_same_project)
  @vrf = args[:vrf] if args.key?(:vrf)
end