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.



1108
1109
1110
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1108

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)


1050
1051
1052
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1050

def bandwidth
  @bandwidth
end

#cidrString

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

Returns:

  • (String)


1055
1056
1057
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1055

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)


1061
1062
1063
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1061

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)


1067
1068
1069
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1067

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)


1072
1073
1074
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1072

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)


1078
1079
1080
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1078

def name
  @name
end

#service_cidrString

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

Returns:

  • (String)


1083
1084
1085
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1083

def service_cidr
  @service_cidr
end

#typeString

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

Returns:

  • (String)


1088
1089
1090
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1088

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)


1094
1095
1096
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1094

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



1100
1101
1102
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1100

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)


1105
1106
1107
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1105

def vlan_same_project
  @vlan_same_project
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1113

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