class Google::Apis::ComputeV1::Interconnect

Represents an Interconnect resource. An Interconnect resource is a dedicated connection between the GCP network and your on-premises network. For more information, read the Dedicated Interconnect Overview.

Attributes

admin_enabled[RW]

Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true. Corresponds to the JSON property `adminEnabled` @return [Boolean]

admin_enabled?[RW]

Administrative status of the interconnect. When this is set to true, the Interconnect is functional and can carry traffic. When set to false, no packets can be carried over the interconnect and no BGP routes are exchanged over it. By default, the status is set to true. Corresponds to the JSON property `adminEnabled` @return [Boolean]

circuit_infos[RW]
Output Only

A list of CircuitInfo objects, that describe the individual

circuits in this LAG. Corresponds to the JSON property `circuitInfos` @return [Array<Google::Apis::ComputeV1::InterconnectCircuitInfo>]

creation_timestamp[RW]
Output Only

Creation timestamp in RFC3339 text format.

Corresponds to the JSON property `creationTimestamp` @return [String]

customer_name[RW]

Customer name, to put in the Letter of Authorization as the party authorized to request a crossconnect. Corresponds to the JSON property `customerName` @return [String]

description[RW]

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property `description` @return [String]

expected_outages[RW]
Output Only

A list of outages expected for this Interconnect.

Corresponds to the JSON property `expectedOutages` @return [Array<Google::Apis::ComputeV1::InterconnectOutageNotification>]

google_ip_address[RW]
Output Only

IP address configured on the Google side of the Interconnect

link. This can be used only for ping tests. Corresponds to the JSON property `googleIpAddress` @return [String]

google_reference_id[RW]
Output Only

Google reference ID to be used when raising support tickets with

Google or otherwise to debug backend connectivity issues. Corresponds to the JSON property `googleReferenceId` @return [String]

id[RW]
Output Only

The unique identifier for the resource. This identifier is

defined by the server. Corresponds to the JSON property `id` @return [Fixnum]

interconnect_attachments[RW]
Output Only

A list of the URLs of all InterconnectAttachments configured to

use this Interconnect. Corresponds to the JSON property `interconnectAttachments` @return [Array<String>]

interconnect_type[RW]

Type of interconnect, which can take one of the following values: - PARTNER: A partner-managed interconnection shared between customers though a partner. - DEDICATED: A dedicated physical interconnection with the customer. Note that a value IT_PRIVATE has been deprecated in favor of DEDICATED. Corresponds to the JSON property `interconnectType` @return [String]

kind[RW]
Output Only

Type of the resource. Always compute#interconnect for

interconnects. Corresponds to the JSON property `kind` @return [String]

location[RW]

URL of the InterconnectLocation object that represents where this connection is to be provisioned. Corresponds to the JSON property `location` @return [String]

name[RW]

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]*)?` 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` @return [String]

noc_contact_email[RW]

Email address to contact the customer NOC for operations and maintenance notifications regarding this Interconnect. If specified, this will be used for notifications in addition to all other forms described, such as Stackdriver logs alerting and Cloud Notifications. Corresponds to the JSON property `nocContactEmail` @return [String]

operational_status[RW]
Output Only

The current status of this Interconnect's functionality, which

can take one of the following values: - OS_ACTIVE: A valid Interconnect, which is turned up and is ready to use. Attachments may be provisioned on this Interconnect. - OS_UNPROVISIONED: An Interconnect that has not completed turnup. No attachments may be provisioned on this Interconnect. - OS_UNDER_MAINTENANCE: An Interconnect that is undergoing internal maintenance. No attachments may be provisioned or updated on this Interconnect. Corresponds to the JSON property `operationalStatus` @return [String]

peer_ip_address[RW]
Output Only

IP address configured on the customer side of the Interconnect

link. The customer should configure this IP address during turnup when prompted by Google NOC. This can be used only for ping tests. Corresponds to the JSON property `peerIpAddress` @return [String]

satisfies_pzs[RW]
Output Only

Set to true if the resource satisfies the zone separation

organization policy constraints and false otherwise. Defaults to false if the field is not present. Corresponds to the JSON property `satisfiesPzs` @return [Boolean]

satisfies_pzs?[RW]
Output Only

Set to true if the resource satisfies the zone separation

organization policy constraints and false otherwise. Defaults to false if the field is not present. Corresponds to the JSON property `satisfiesPzs` @return [Boolean]

state[RW]
Output Only

The current state of Interconnect functionality, which can take

one of the following values: - ACTIVE: The Interconnect is valid, turned up and ready to use. Attachments may be provisioned on this Interconnect. - UNPROVISIONED: The Interconnect has not completed turnup. No attachments may be provisioned on this Interconnect. - UNDER_MAINTENANCE: The Interconnect is undergoing internal maintenance. No attachments may be provisioned or updated on this Interconnect. Corresponds to the JSON property `state` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/compute_v1/classes.rb, line 16186
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/compute_v1/classes.rb, line 16191
def update!(**args)
  @admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled)
  @circuit_infos = args[:circuit_infos] if args.key?(:circuit_infos)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @customer_name = args[:customer_name] if args.key?(:customer_name)
  @description = args[:description] if args.key?(:description)
  @expected_outages = args[:expected_outages] if args.key?(:expected_outages)
  @google_ip_address = args[:google_ip_address] if args.key?(:google_ip_address)
  @google_reference_id = args[:google_reference_id] if args.key?(:google_reference_id)
  @id = args[:id] if args.key?(:id)
  @interconnect_attachments = args[:interconnect_attachments] if args.key?(:interconnect_attachments)
  @interconnect_type = args[:interconnect_type] if args.key?(:interconnect_type)
  @kind = args[:kind] if args.key?(:kind)
  @link_type = args[:link_type] if args.key?(:link_type)
  @location = args[:location] if args.key?(:location)
  @name = args[:name] if args.key?(:name)
  @noc_contact_email = args[:noc_contact_email] if args.key?(:noc_contact_email)
  @operational_status = args[:operational_status] if args.key?(:operational_status)
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
  @provisioned_link_count = args[:provisioned_link_count] if args.key?(:provisioned_link_count)
  @requested_link_count = args[:requested_link_count] if args.key?(:requested_link_count)
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
  @self_link = args[:self_link] if args.key?(:self_link)
  @state = args[:state] if args.key?(:state)
end