Class: Google::Apis::ComputeAlpha::Network

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/google/apis/compute_alpha/representations.rb

Overview

Represents a VPC Network resource. Networks connect resources to each other and to the internet. For more information, read Virtual Private Cloud (VPC) Network. (== resource_for v1. networks ==) (== resource_for beta.networks ==)

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Network

Returns a new instance of Network



18276
18277
18278
# File 'generated/google/apis/compute_alpha/classes.rb', line 18276

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

Instance Attribute Details

#auto_create_subnetworksBoolean Also known as: auto_create_subnetworks?

When set to true, the VPC network is created in "auto" mode. When set to false, the VPC network is created in "custom" mode. An auto mode VPC network starts with one subnet per region. Each subnet has a predetermined range as described in Auto mode VPC network IP ranges. Corresponds to the JSON property autoCreateSubnetworks

Returns:

  • (Boolean)


18184
18185
18186
# File 'generated/google/apis/compute_alpha/classes.rb', line 18184

def auto_create_subnetworks
  @auto_create_subnetworks
end

#creation_timestampString

[Output Only] Creation timestamp in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


18190
18191
18192
# File 'generated/google/apis/compute_alpha/classes.rb', line 18190

def creation_timestamp
  @creation_timestamp
end

#cross_vm_encryptionString

[Output Only] Type of VM-to-VM traffic encryption for this network. Corresponds to the JSON property crossVmEncryption

Returns:

  • (String)


18195
18196
18197
# File 'generated/google/apis/compute_alpha/classes.rb', line 18195

def cross_vm_encryption
  @cross_vm_encryption
end

#descriptionString

An optional description of this resource. Provide this field when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


18201
18202
18203
# File 'generated/google/apis/compute_alpha/classes.rb', line 18201

def description
  @description
end

#gateway_i_pv4String

[Output Only] The gateway address for default routing out of the network, selected by GCP. Corresponds to the JSON property gatewayIPv4

Returns:

  • (String)


18207
18208
18209
# File 'generated/google/apis/compute_alpha/classes.rb', line 18207

def gateway_i_pv4
  @gateway_i_pv4
end

#i_pv4_rangeString

Deprecated in favor of subnet mode networks. The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created. Corresponds to the JSON property IPv4Range

Returns:

  • (String)


18176
18177
18178
# File 'generated/google/apis/compute_alpha/classes.rb', line 18176

def i_pv4_range
  @i_pv4_range
end

#idFixnum

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


18213
18214
18215
# File 'generated/google/apis/compute_alpha/classes.rb', line 18213

def id
  @id
end

#kindString

[Output Only] Type of the resource. Always compute#network for networks. Corresponds to the JSON property kind

Returns:

  • (String)


18218
18219
18220
# File 'generated/google/apis/compute_alpha/classes.rb', line 18218

def kind
  @kind
end

#load_balancer_vm_encryptionString

[Output Only] Type of LB-to-VM traffic encryption for this network. Corresponds to the JSON property loadBalancerVmEncryption

Returns:

  • (String)


18223
18224
18225
# File 'generated/google/apis/compute_alpha/classes.rb', line 18223

def load_balancer_vm_encryption
  @load_balancer_vm_encryption
end

#mtuFixnum

Maximum Transmission Unit in bytes. The minimum value for this field is 1460 and the maximum value is 1600 bytes. Corresponds to the JSON property mtu

Returns:

  • (Fixnum)


18229
18230
18231
# File 'generated/google/apis/compute_alpha/classes.rb', line 18229

def mtu
  @mtu
end

#multicast_modeString

The multicast mode for this network. If set to ZONAL, multicast is allowed within a zone. If set to DISABLED, multicast is disabled for this network. The default is DISABLED. Corresponds to the JSON property multicastMode

Returns:

  • (String)


18236
18237
18238
# File 'generated/google/apis/compute_alpha/classes.rb', line 18236

def multicast_mode
  @multicast_mode
end

#nameString

Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a- z0-9]*[a-z0-9])?. The first character must be a lowercase letter, and all following characters (except for the last character) must be a dash, lowercase letter, or digit. The last character must be a lowercase letter or digit. Corresponds to the JSON propertyname`

Returns:

  • (String)


18246
18247
18248
# File 'generated/google/apis/compute_alpha/classes.rb', line 18246

def name
  @name
end

#peeringsArray<Google::Apis::ComputeAlpha::NetworkPeering>

[Output Only] A list of network peerings for the resource. Corresponds to the JSON property peerings



18251
18252
18253
# File 'generated/google/apis/compute_alpha/classes.rb', line 18251

def peerings
  @peerings
end

#routing_configGoogle::Apis::ComputeAlpha::NetworkRoutingConfig

A routing configuration attached to a network resource. The message includes the list of routers associated with the network, and a flag indicating the type of routing behavior to enforce network-wide. Corresponds to the JSON property routingConfig



18258
18259
18260
# File 'generated/google/apis/compute_alpha/classes.rb', line 18258

def routing_config
  @routing_config
end

[Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


18263
18264
18265
# File 'generated/google/apis/compute_alpha/classes.rb', line 18263

def self_link
  @self_link
end

[Output Only] Server-defined URL for this resource with the resource id. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


18268
18269
18270
# File 'generated/google/apis/compute_alpha/classes.rb', line 18268

def self_link_with_id
  @self_link_with_id
end

#subnetworksArray<String>

[Output Only] Server-defined fully-qualified URLs for all subnetworks in this VPC network. Corresponds to the JSON property subnetworks

Returns:

  • (Array<String>)


18274
18275
18276
# File 'generated/google/apis/compute_alpha/classes.rb', line 18274

def subnetworks
  @subnetworks
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



18281
18282
18283
18284
18285
18286
18287
18288
18289
18290
18291
18292
18293
18294
18295
18296
18297
18298
18299
# File 'generated/google/apis/compute_alpha/classes.rb', line 18281

def update!(**args)
  @i_pv4_range = args[:i_pv4_range] if args.key?(:i_pv4_range)
  @auto_create_subnetworks = args[:auto_create_subnetworks] if args.key?(:auto_create_subnetworks)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @cross_vm_encryption = args[:cross_vm_encryption] if args.key?(:cross_vm_encryption)
  @description = args[:description] if args.key?(:description)
  @gateway_i_pv4 = args[:gateway_i_pv4] if args.key?(:gateway_i_pv4)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @load_balancer_vm_encryption = args[:load_balancer_vm_encryption] if args.key?(:load_balancer_vm_encryption)
  @mtu = args[:mtu] if args.key?(:mtu)
  @multicast_mode = args[:multicast_mode] if args.key?(:multicast_mode)
  @name = args[:name] if args.key?(:name)
  @peerings = args[:peerings] if args.key?(:peerings)
  @routing_config = args[:routing_config] if args.key?(:routing_config)
  @self_link = args[:self_link] if args.key?(:self_link)
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
  @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
end