Class: Google::Apis::NetworkconnectivityV1::Spoke

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/networkconnectivity_v1/classes.rb,
lib/google/apis/networkconnectivity_v1/representations.rb,
lib/google/apis/networkconnectivity_v1/representations.rb

Overview

A spoke represents a connection between your Google Cloud network resources and a non-Google-Cloud network. When you create a spoke, you associate it with a hub. You must also identify a value for exactly one of the following fields:

  • linked_vpn_tunnels * linked_interconnect_attachments * linked_router_appliance_instances

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Spoke

Returns a new instance of Spoke.



1044
1045
1046
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1044

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

Instance Attribute Details

#create_timeString

Output only. The time the spoke was created. Corresponds to the JSON property createTime

Returns:

  • (String)


977
978
979
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 977

def create_time
  @create_time
end

#descriptionString

An optional description of the spoke. Corresponds to the JSON property description

Returns:

  • (String)


982
983
984
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 982

def description
  @description
end

#hubString

Immutable. The name of the hub that this spoke is attached to. Corresponds to the JSON property hub

Returns:

  • (String)


987
988
989
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 987

def hub
  @hub
end

#labelsHash<String,String>

Optional labels in key:value format. For more information about labels, see Requirements for labels. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


994
995
996
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 994

def labels
  @labels
end

#linked_interconnect_attachmentsGoogle::Apis::NetworkconnectivityV1::LinkedInterconnectAttachments

A collection of VLAN attachment resources. These resources should be redundant attachments that all advertise the same prefixes to Google Cloud. Alternatively, in active/passive configurations, all attachments should be capable of advertising the same prefixes. Corresponds to the JSON property linkedInterconnectAttachments



1002
1003
1004
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1002

def linked_interconnect_attachments
  @linked_interconnect_attachments
end

#linked_router_appliance_instancesGoogle::Apis::NetworkconnectivityV1::LinkedRouterApplianceInstances

A collection of router appliance instances. If you configure multiple router appliance instances to receive data from the same set of sites outside of Google Cloud, we recommend that you associate those instances with the same spoke. Corresponds to the JSON property linkedRouterApplianceInstances



1010
1011
1012
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1010

def linked_router_appliance_instances
  @linked_router_appliance_instances
end

#linked_vpn_tunnelsGoogle::Apis::NetworkconnectivityV1::LinkedVpnTunnels

A collection of Cloud VPN tunnel resources. These resources should be redundant HA VPN tunnels that all advertise the same prefixes to Google Cloud. Alternatively, in a passive/active configuration, all tunnels should be capable of advertising the same prefixes. Corresponds to the JSON property linkedVpnTunnels



1018
1019
1020
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1018

def linked_vpn_tunnels
  @linked_vpn_tunnels
end

#nameString

Immutable. The name of the spoke. Spoke names must be unique. They use the following form: projects/project_number/locations/region/spokes/spoke_id Corresponds to the JSON property name

Returns:

  • (String)


1025
1026
1027
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1025

def name
  @name
end

#stateString

Output only. The current lifecycle state of this spoke. Corresponds to the JSON property state

Returns:

  • (String)


1030
1031
1032
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1030

def state
  @state
end

#unique_idString

Output only. The Google-generated UUID for the spoke. This value is unique across all spoke resources. If a spoke is deleted and another with the same name is created, the new spoke is assigned a different unique_id. Corresponds to the JSON property uniqueId

Returns:

  • (String)


1037
1038
1039
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1037

def unique_id
  @unique_id
end

#update_timeString

Output only. The time the spoke was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


1042
1043
1044
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1042

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
# File 'lib/google/apis/networkconnectivity_v1/classes.rb', line 1049

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @hub = args[:hub] if args.key?(:hub)
  @labels = args[:labels] if args.key?(:labels)
  @linked_interconnect_attachments = args[:linked_interconnect_attachments] if args.key?(:linked_interconnect_attachments)
  @linked_router_appliance_instances = args[:linked_router_appliance_instances] if args.key?(:linked_router_appliance_instances)
  @linked_vpn_tunnels = args[:linked_vpn_tunnels] if args.key?(:linked_vpn_tunnels)
  @name = args[:name] if args.key?(:name)
  @state = args[:state] if args.key?(:state)
  @unique_id = args[:unique_id] if args.key?(:unique_id)
  @update_time = args[:update_time] if args.key?(:update_time)
end