Class: Google::Apis::BaremetalsolutionV2::Network

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

A Network.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Network

Returns a new instance of Network.



1204
1205
1206
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1204

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

Instance Attribute Details

#cidrString

The cidr of the Network. Corresponds to the JSON property cidr

Returns:

  • (String)


1119
1120
1121
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1119

def cidr
  @cidr
end

#gateway_ipString

Output only. Gateway ip address. Corresponds to the JSON property gatewayIp

Returns:

  • (String)


1124
1125
1126
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1124

def gateway_ip
  @gateway_ip
end

#idString

An identifier for the Network, generated by the backend. Corresponds to the JSON property id

Returns:

  • (String)


1129
1130
1131
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1129

def id
  @id
end

#ip_addressString

IP address configured. Corresponds to the JSON property ipAddress

Returns:

  • (String)


1134
1135
1136
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1134

def ip_address
  @ip_address
end

#jumbo_frames_enabledBoolean Also known as: jumbo_frames_enabled?

Whether network uses standard frames or jumbo ones. Corresponds to the JSON property jumboFramesEnabled

Returns:

  • (Boolean)


1139
1140
1141
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1139

def jumbo_frames_enabled
  @jumbo_frames_enabled
end

#labelsHash<String,String>

Labels as key value pairs. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


1145
1146
1147
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1145

def labels
  @labels
end

#mac_addressArray<String>

List of physical interfaces. Corresponds to the JSON property macAddress

Returns:

  • (Array<String>)


1150
1151
1152
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1150

def mac_address
  @mac_address
end

#mount_pointsArray<Google::Apis::BaremetalsolutionV2::NetworkMountPoint>

Input only. List of mount points to attach the network to. Corresponds to the JSON property mountPoints



1155
1156
1157
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1155

def mount_points
  @mount_points
end

#nameString

Output only. The resource name of this Network. Resource names are schemeless URIs that follow the conventions in https://cloud.google.com/apis/ design/resource_names. Format: projects/project/locations/location/ networks/network` Corresponds to the JSON propertyname`

Returns:

  • (String)


1163
1164
1165
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1163

def name
  @name
end

#podString

Immutable. Pod name. Pod is an independent part of infrastructure. Network can only be connected to the assets (instances, nfsshares) allocated in the same pod. Corresponds to the JSON property pod

Returns:

  • (String)


1170
1171
1172
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1170

def pod
  @pod
end

#reservationsArray<Google::Apis::BaremetalsolutionV2::NetworkAddressReservation>

List of IP address reservations in this network. When updating this field, an error will be generated if a reservation conflicts with an IP address already allocated to a physical server. Corresponds to the JSON property reservations



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

def reservations
  @reservations
end

#services_cidrString

IP range for reserved for services (e.g. NFS). Corresponds to the JSON property servicesCidr

Returns:

  • (String)


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

def services_cidr
  @services_cidr
end

#stateString

The Network state. Corresponds to the JSON property state

Returns:

  • (String)


1187
1188
1189
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1187

def state
  @state
end

#typeString

The type of this network. Corresponds to the JSON property type

Returns:

  • (String)


1192
1193
1194
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1192

def type
  @type
end

#vlan_idString

The vlan id of the Network. Corresponds to the JSON property vlanId

Returns:

  • (String)


1197
1198
1199
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1197

def vlan_id
  @vlan_id
end

#vrfGoogle::Apis::BaremetalsolutionV2::Vrf

A network VRF. Corresponds to the JSON property vrf



1202
1203
1204
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1202

def vrf
  @vrf
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
# File 'lib/google/apis/baremetalsolution_v2/classes.rb', line 1209

def update!(**args)
  @cidr = args[:cidr] if args.key?(:cidr)
  @gateway_ip = args[:gateway_ip] if args.key?(:gateway_ip)
  @id = args[:id] if args.key?(:id)
  @ip_address = args[:ip_address] if args.key?(:ip_address)
  @jumbo_frames_enabled = args[:jumbo_frames_enabled] if args.key?(:jumbo_frames_enabled)
  @labels = args[:labels] if args.key?(:labels)
  @mac_address = args[:mac_address] if args.key?(:mac_address)
  @mount_points = args[:mount_points] if args.key?(:mount_points)
  @name = args[:name] if args.key?(:name)
  @pod = args[:pod] if args.key?(:pod)
  @reservations = args[:reservations] if args.key?(:reservations)
  @services_cidr = args[:services_cidr] if args.key?(:services_cidr)
  @state = args[:state] if args.key?(:state)
  @type = args[:type] if args.key?(:type)
  @vlan_id = args[:vlan_id] if args.key?(:vlan_id)
  @vrf = args[:vrf] if args.key?(:vrf)
end