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 Network resource. Read Networks and Firewalls for more information.

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



13821
13822
13823
# File 'generated/google/apis/compute_alpha/classes.rb', line 13821

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

Instance Attribute Details

#auto_create_subnetworksBoolean Also known as: auto_create_subnetworks?

When set to true, the network is created in "auto subnet mode". When set to false, the network is in "custom subnet mode". In "auto subnet mode", a newly created network is assigned the default CIDR of 10.128.0.0/9 and it automatically creates one subnetwork per region. Corresponds to the JSON property autoCreateSubnetworks

Returns:

  • (Boolean)


13746
13747
13748
# File 'generated/google/apis/compute_alpha/classes.rb', line 13746

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)


13752
13753
13754
# File 'generated/google/apis/compute_alpha/classes.rb', line 13752

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)


13757
13758
13759
# File 'generated/google/apis/compute_alpha/classes.rb', line 13757

def cross_vm_encryption
  @cross_vm_encryption
end

#descriptionString

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

Returns:

  • (String)


13763
13764
13765
# File 'generated/google/apis/compute_alpha/classes.rb', line 13763

def description
  @description
end

#gateway_i_pv4String

A gateway address for default routing to other networks. This value is read only and is selected by the Google Compute Engine, typically as the first usable address in the IPv4Range. Corresponds to the JSON property gatewayIPv4

Returns:

  • (String)


13770
13771
13772
# File 'generated/google/apis/compute_alpha/classes.rb', line 13770

def gateway_i_pv4
  @gateway_i_pv4
end

#i_pv4_rangeString

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)


13738
13739
13740
# File 'generated/google/apis/compute_alpha/classes.rb', line 13738

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)


13776
13777
13778
# File 'generated/google/apis/compute_alpha/classes.rb', line 13776

def id
  @id
end

#kindString

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

Returns:

  • (String)


13781
13782
13783
# File 'generated/google/apis/compute_alpha/classes.rb', line 13781

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)


13786
13787
13788
# File 'generated/google/apis/compute_alpha/classes.rb', line 13786

def load_balancer_vm_encryption
  @load_balancer_vm_encryption
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? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property name

Returns:

  • (String)


13796
13797
13798
# File 'generated/google/apis/compute_alpha/classes.rb', line 13796

def name
  @name
end

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

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



13801
13802
13803
# File 'generated/google/apis/compute_alpha/classes.rb', line 13801

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



13808
13809
13810
# File 'generated/google/apis/compute_alpha/classes.rb', line 13808

def routing_config
  @routing_config
end

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

Returns:

  • (String)


13813
13814
13815
# File 'generated/google/apis/compute_alpha/classes.rb', line 13813

def self_link
  @self_link
end

#subnetworksArray<String>

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

Returns:

  • (Array<String>)


13819
13820
13821
# File 'generated/google/apis/compute_alpha/classes.rb', line 13819

def subnetworks
  @subnetworks
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
# File 'generated/google/apis/compute_alpha/classes.rb', line 13826

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