Class: Google::Apis::ComputeV1::Network

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/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 $ api_version.networks ==)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Network

Returns a new instance of Network.



18032
18033
18034
# File 'lib/google/apis/compute_v1/classes.rb', line 18032

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

Instance Attribute Details

#auto_create_subnetworksBoolean Also known as: auto_create_subnetworks?

Must be set to create a VPC network. If not set, a legacy network is created. 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. For custom mode VPC networks, you can add subnets using the subnetworks insert method. Corresponds to the JSON property autoCreateSubnetworks

Returns:

  • (Boolean)


17962
17963
17964
# File 'lib/google/apis/compute_v1/classes.rb', line 17962

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)


17968
17969
17970
# File 'lib/google/apis/compute_v1/classes.rb', line 17968

def creation_timestamp
  @creation_timestamp
end

#descriptionString

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

Returns:

  • (String)


17974
17975
17976
# File 'lib/google/apis/compute_v1/classes.rb', line 17974

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)


17980
17981
17982
# File 'lib/google/apis/compute_v1/classes.rb', line 17980

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)


17951
17952
17953
# File 'lib/google/apis/compute_v1/classes.rb', line 17951

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)


17986
17987
17988
# File 'lib/google/apis/compute_v1/classes.rb', line 17986

def id
  @id
end

#kindString

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

Returns:

  • (String)


17991
17992
17993
# File 'lib/google/apis/compute_v1/classes.rb', line 17991

def kind
  @kind
end

#mtuFixnum

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

Returns:

  • (Fixnum)


17997
17998
17999
# File 'lib/google/apis/compute_v1/classes.rb', line 17997

def mtu
  @mtu
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 property name

Returns:

  • (String)


18007
18008
18009
# File 'lib/google/apis/compute_v1/classes.rb', line 18007

def name
  @name
end

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

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



18012
18013
18014
# File 'lib/google/apis/compute_v1/classes.rb', line 18012

def peerings
  @peerings
end

#routing_configGoogle::Apis::ComputeV1::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



18019
18020
18021
# File 'lib/google/apis/compute_v1/classes.rb', line 18019

def routing_config
  @routing_config
end

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

Returns:

  • (String)


18024
18025
18026
# File 'lib/google/apis/compute_v1/classes.rb', line 18024

def self_link
  @self_link
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>)


18030
18031
18032
# File 'lib/google/apis/compute_v1/classes.rb', line 18030

def subnetworks
  @subnetworks
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



18037
18038
18039
18040
18041
18042
18043
18044
18045
18046
18047
18048
18049
18050
18051
# File 'lib/google/apis/compute_v1/classes.rb', line 18037

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)
  @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)
  @mtu = args[:mtu] if args.key?(:mtu)
  @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)
  @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
end