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.



1236
1237
1238
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1236

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)


1178
1179
1180
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1178

def bandwidth
  @bandwidth
end

#cidrString

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

Returns:

  • (String)


1183
1184
1185
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1183

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)


1189
1190
1191
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1189

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)


1195
1196
1197
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1195

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)


1200
1201
1202
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1200

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)


1206
1207
1208
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1206

def name
  @name
end

#service_cidrString

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

Returns:

  • (String)


1211
1212
1213
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1211

def service_cidr
  @service_cidr
end

#typeString

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

Returns:

  • (String)


1216
1217
1218
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1216

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)


1222
1223
1224
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1222

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). Corresponds to the JSON property vlanAttachments



1228
1229
1230
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1228

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)


1233
1234
1235
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1233

def vlan_same_project
  @vlan_same_project
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1241

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)
end