computerouterpeer

package
v14.13.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 19, 2024 License: MPL-2.0 Imports: 7 Imported by: 0

README

google_compute_router_peer

Refer to the Terraform Registry for docs: google_compute_router_peer.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ComputeRouterPeer_GenerateConfigForImport

func ComputeRouterPeer_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource

Generates CDKTF code for importing a ComputeRouterPeer resource upon running "cdktf plan <stack-name>".

func ComputeRouterPeer_IsConstruct

func ComputeRouterPeer_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func ComputeRouterPeer_IsTerraformElement

func ComputeRouterPeer_IsTerraformElement(x interface{}) *bool

Experimental.

func ComputeRouterPeer_IsTerraformResource

func ComputeRouterPeer_IsTerraformResource(x interface{}) *bool

Experimental.

func ComputeRouterPeer_TfResourceType

func ComputeRouterPeer_TfResourceType() *string

func NewComputeRouterPeerAdvertisedIpRangesList_Override

func NewComputeRouterPeerAdvertisedIpRangesList_Override(c ComputeRouterPeerAdvertisedIpRangesList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)

func NewComputeRouterPeerAdvertisedIpRangesOutputReference_Override

func NewComputeRouterPeerAdvertisedIpRangesOutputReference_Override(c ComputeRouterPeerAdvertisedIpRangesOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)

func NewComputeRouterPeerBfdOutputReference_Override

func NewComputeRouterPeerBfdOutputReference_Override(c ComputeRouterPeerBfdOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewComputeRouterPeerCustomLearnedIpRangesList_Override

func NewComputeRouterPeerCustomLearnedIpRangesList_Override(c ComputeRouterPeerCustomLearnedIpRangesList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)

func NewComputeRouterPeerCustomLearnedIpRangesOutputReference_Override

func NewComputeRouterPeerCustomLearnedIpRangesOutputReference_Override(c ComputeRouterPeerCustomLearnedIpRangesOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)

func NewComputeRouterPeerMd5AuthenticationKeyOutputReference_Override

func NewComputeRouterPeerMd5AuthenticationKeyOutputReference_Override(c ComputeRouterPeerMd5AuthenticationKeyOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewComputeRouterPeerTimeoutsOutputReference_Override

func NewComputeRouterPeerTimeoutsOutputReference_Override(c ComputeRouterPeerTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewComputeRouterPeer_Override

func NewComputeRouterPeer_Override(c ComputeRouterPeer, scope constructs.Construct, id *string, config *ComputeRouterPeerConfig)

Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer google_compute_router_peer} Resource.

Types

type ComputeRouterPeer

type ComputeRouterPeer interface {
	cdktf.TerraformResource
	AdvertisedGroups() *[]*string
	SetAdvertisedGroups(val *[]*string)
	AdvertisedGroupsInput() *[]*string
	AdvertisedIpRanges() ComputeRouterPeerAdvertisedIpRangesList
	AdvertisedIpRangesInput() interface{}
	AdvertisedRoutePriority() *float64
	SetAdvertisedRoutePriority(val *float64)
	AdvertisedRoutePriorityInput() *float64
	AdvertiseMode() *string
	SetAdvertiseMode(val *string)
	AdvertiseModeInput() *string
	Bfd() ComputeRouterPeerBfdOutputReference
	BfdInput() *ComputeRouterPeerBfd
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	// Experimental.
	Connection() interface{}
	// Experimental.
	SetConnection(val interface{})
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	// Experimental.
	Count() interface{}
	// Experimental.
	SetCount(val interface{})
	CustomLearnedIpRanges() ComputeRouterPeerCustomLearnedIpRangesList
	CustomLearnedIpRangesInput() interface{}
	CustomLearnedRoutePriority() *float64
	SetCustomLearnedRoutePriority(val *float64)
	CustomLearnedRoutePriorityInput() *float64
	// Experimental.
	DependsOn() *[]*string
	// Experimental.
	SetDependsOn(val *[]*string)
	Enable() interface{}
	SetEnable(val interface{})
	EnableInput() interface{}
	EnableIpv4() interface{}
	SetEnableIpv4(val interface{})
	EnableIpv4Input() interface{}
	EnableIpv6() interface{}
	SetEnableIpv6(val interface{})
	EnableIpv6Input() interface{}
	// Experimental.
	ForEach() cdktf.ITerraformIterator
	// Experimental.
	SetForEach(val cdktf.ITerraformIterator)
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	Id() *string
	SetId(val *string)
	IdInput() *string
	Interface() *string
	SetInterface(val *string)
	InterfaceInput() *string
	IpAddress() *string
	SetIpAddress(val *string)
	IpAddressInput() *string
	Ipv4NexthopAddress() *string
	SetIpv4NexthopAddress(val *string)
	Ipv4NexthopAddressInput() *string
	Ipv6NexthopAddress() *string
	SetIpv6NexthopAddress(val *string)
	Ipv6NexthopAddressInput() *string
	// Experimental.
	Lifecycle() *cdktf.TerraformResourceLifecycle
	// Experimental.
	SetLifecycle(val *cdktf.TerraformResourceLifecycle)
	ManagementType() *string
	Md5AuthenticationKey() ComputeRouterPeerMd5AuthenticationKeyOutputReference
	Md5AuthenticationKeyInput() *ComputeRouterPeerMd5AuthenticationKey
	Name() *string
	SetName(val *string)
	NameInput() *string
	// The tree node.
	Node() constructs.Node
	PeerAsn() *float64
	SetPeerAsn(val *float64)
	PeerAsnInput() *float64
	PeerIpAddress() *string
	SetPeerIpAddress(val *string)
	PeerIpAddressInput() *string
	PeerIpv4NexthopAddress() *string
	SetPeerIpv4NexthopAddress(val *string)
	PeerIpv4NexthopAddressInput() *string
	PeerIpv6NexthopAddress() *string
	SetPeerIpv6NexthopAddress(val *string)
	PeerIpv6NexthopAddressInput() *string
	Project() *string
	SetProject(val *string)
	ProjectInput() *string
	// Experimental.
	Provider() cdktf.TerraformProvider
	// Experimental.
	SetProvider(val cdktf.TerraformProvider)
	// Experimental.
	Provisioners() *[]interface{}
	// Experimental.
	SetProvisioners(val *[]interface{})
	// Experimental.
	RawOverrides() interface{}
	Region() *string
	SetRegion(val *string)
	RegionInput() *string
	Router() *string
	SetRouter(val *string)
	RouterApplianceInstance() *string
	SetRouterApplianceInstance(val *string)
	RouterApplianceInstanceInput() *string
	RouterInput() *string
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	// Experimental.
	TerraformMetaArguments() *map[string]interface{}
	// Experimental.
	TerraformResourceType() *string
	Timeouts() ComputeRouterPeerTimeoutsOutputReference
	TimeoutsInput() interface{}
	// Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.
	// Experimental.
	AddMoveTarget(moveTarget *string)
	// Experimental.
	AddOverride(path *string, value interface{})
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	HasResourceMove() interface{}
	// Experimental.
	ImportFrom(id *string, provider cdktf.TerraformProvider)
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Move the resource corresponding to "id" to this resource.
	//
	// Note that the resource being moved from must be marked as moved using it's instance function.
	// Experimental.
	MoveFromId(id *string)
	// Moves this resource to the target resource given by moveTarget.
	// Experimental.
	MoveTo(moveTarget *string, index interface{})
	// Moves this resource to the resource corresponding to "id".
	// Experimental.
	MoveToId(id *string)
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	PutAdvertisedIpRanges(value interface{})
	PutBfd(value *ComputeRouterPeerBfd)
	PutCustomLearnedIpRanges(value interface{})
	PutMd5AuthenticationKey(value *ComputeRouterPeerMd5AuthenticationKey)
	PutTimeouts(value *ComputeRouterPeerTimeouts)
	ResetAdvertisedGroups()
	ResetAdvertisedIpRanges()
	ResetAdvertisedRoutePriority()
	ResetAdvertiseMode()
	ResetBfd()
	ResetCustomLearnedIpRanges()
	ResetCustomLearnedRoutePriority()
	ResetEnable()
	ResetEnableIpv4()
	ResetEnableIpv6()
	ResetId()
	ResetIpAddress()
	ResetIpv4NexthopAddress()
	ResetIpv6NexthopAddress()
	ResetMd5AuthenticationKey()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	ResetPeerIpAddress()
	ResetPeerIpv4NexthopAddress()
	ResetPeerIpv6NexthopAddress()
	ResetProject()
	ResetRegion()
	ResetRouterApplianceInstance()
	ResetTimeouts()
	SynthesizeAttributes() *map[string]interface{}
	SynthesizeHclAttributes() *map[string]interface{}
	// Experimental.
	ToHclTerraform() interface{}
	// Experimental.
	ToMetadata() interface{}
	// Returns a string representation of this construct.
	ToString() *string
	// Adds this resource to the terraform JSON output.
	// Experimental.
	ToTerraform() interface{}
}

Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer google_compute_router_peer}.

func NewComputeRouterPeer

func NewComputeRouterPeer(scope constructs.Construct, id *string, config *ComputeRouterPeerConfig) ComputeRouterPeer

Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer google_compute_router_peer} Resource.

type ComputeRouterPeerAdvertisedIpRanges

type ComputeRouterPeerAdvertisedIpRanges struct {
	// The IP range to advertise. The value must be a CIDR-formatted string.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#range ComputeRouterPeer#range}
	Range *string `field:"required" json:"range" yaml:"range"`
	// User-specified description for the IP range.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#description ComputeRouterPeer#description}
	Description *string `field:"optional" json:"description" yaml:"description"`
}

type ComputeRouterPeerAdvertisedIpRangesList

type ComputeRouterPeerAdvertisedIpRangesList interface {
	cdktf.ComplexList
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// The attribute on the parent resource this class is referencing.
	TerraformAttribute() *string
	SetTerraformAttribute(val *string)
	// The parent resource.
	TerraformResource() cdktf.IInterpolatingParent
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
	WrapsSet() *bool
	SetWrapsSet(val *bool)
	// Creating an iterator for this complex list.
	//
	// The list will be converted into a map with the mapKeyAttributeName as the key.
	// Experimental.
	AllWithMapKey(mapKeyAttributeName *string) cdktf.DynamicListTerraformIterator
	// Experimental.
	ComputeFqn() *string
	Get(index *float64) ComputeRouterPeerAdvertisedIpRangesOutputReference
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewComputeRouterPeerAdvertisedIpRangesList

func NewComputeRouterPeerAdvertisedIpRangesList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) ComputeRouterPeerAdvertisedIpRangesList

type ComputeRouterPeerAdvertisedIpRangesOutputReference

type ComputeRouterPeerAdvertisedIpRangesOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Description() *string
	SetDescription(val *string)
	DescriptionInput() *string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	Range() *string
	SetRange(val *string)
	RangeInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetDescription()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewComputeRouterPeerAdvertisedIpRangesOutputReference

func NewComputeRouterPeerAdvertisedIpRangesOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) ComputeRouterPeerAdvertisedIpRangesOutputReference

type ComputeRouterPeerBfd

type ComputeRouterPeerBfd struct {
	// The BFD session initialization mode for this BGP peer.
	//
	// If set to 'ACTIVE', the Cloud Router will initiate the BFD session
	// for this BGP peer. If set to 'PASSIVE', the Cloud Router will wait
	// for the peer router to initiate the BFD session for this BGP peer.
	// If set to 'DISABLED', BFD is disabled for this BGP peer. Possible values: ["ACTIVE", "DISABLED", "PASSIVE"]
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#session_initialization_mode ComputeRouterPeer#session_initialization_mode}
	SessionInitializationMode *string `field:"required" json:"sessionInitializationMode" yaml:"sessionInitializationMode"`
	// The minimum interval, in milliseconds, between BFD control packets received from the peer router.
	//
	// The actual value is negotiated
	// between the two routers and is equal to the greater of this value
	// and the transmit interval of the other router. If set, this value
	// must be between 1000 and 30000.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#min_receive_interval ComputeRouterPeer#min_receive_interval}
	MinReceiveInterval *float64 `field:"optional" json:"minReceiveInterval" yaml:"minReceiveInterval"`
	// The minimum interval, in milliseconds, between BFD control packets transmitted to the peer router.
	//
	// The actual value is negotiated
	// between the two routers and is equal to the greater of this value
	// and the corresponding receive interval of the other router. If set,
	// this value must be between 1000 and 30000.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#min_transmit_interval ComputeRouterPeer#min_transmit_interval}
	MinTransmitInterval *float64 `field:"optional" json:"minTransmitInterval" yaml:"minTransmitInterval"`
	// The number of consecutive BFD packets that must be missed before BFD declares that a peer is unavailable.
	//
	// If set, the value must
	// be a value between 5 and 16.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#multiplier ComputeRouterPeer#multiplier}
	Multiplier *float64 `field:"optional" json:"multiplier" yaml:"multiplier"`
}

type ComputeRouterPeerBfdOutputReference

type ComputeRouterPeerBfdOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *ComputeRouterPeerBfd
	SetInternalValue(val *ComputeRouterPeerBfd)
	MinReceiveInterval() *float64
	SetMinReceiveInterval(val *float64)
	MinReceiveIntervalInput() *float64
	MinTransmitInterval() *float64
	SetMinTransmitInterval(val *float64)
	MinTransmitIntervalInput() *float64
	Multiplier() *float64
	SetMultiplier(val *float64)
	MultiplierInput() *float64
	SessionInitializationMode() *string
	SetSessionInitializationMode(val *string)
	SessionInitializationModeInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetMinReceiveInterval()
	ResetMinTransmitInterval()
	ResetMultiplier()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewComputeRouterPeerBfdOutputReference

func NewComputeRouterPeerBfdOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) ComputeRouterPeerBfdOutputReference

type ComputeRouterPeerConfig

type ComputeRouterPeerConfig struct {
	// Experimental.
	Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
	// Experimental.
	Count interface{} `field:"optional" json:"count" yaml:"count"`
	// Experimental.
	DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
	// Experimental.
	ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
	// Experimental.
	Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
	// Experimental.
	Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
	// Experimental.
	Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
	// Name of the interface the BGP peer is associated with.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#interface ComputeRouterPeer#interface}
	Interface *string `field:"required" json:"interface" yaml:"interface"`
	// Name of this BGP peer.
	//
	// 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])?' 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.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#name ComputeRouterPeer#name}
	Name *string `field:"required" json:"name" yaml:"name"`
	// Peer BGP Autonomous System Number (ASN). Each BGP interface may use a different value.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#peer_asn ComputeRouterPeer#peer_asn}
	PeerAsn *float64 `field:"required" json:"peerAsn" yaml:"peerAsn"`
	// The name of the Cloud Router in which this BgpPeer will be configured.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#router ComputeRouterPeer#router}
	Router *string `field:"required" json:"router" yaml:"router"`
	// User-specified list of prefix groups to advertise in custom mode, which currently supports the following option:.
	//
	// * 'ALL_SUBNETS': Advertises all of the router's own VPC subnets.
	// This excludes any routes learned for subnets that use VPC Network
	// Peering.
	//
	//
	// Note that this field can only be populated if advertiseMode is 'CUSTOM'
	// and overrides the list defined for the router (in the "bgp" message).
	// These groups are advertised in addition to any specified prefixes.
	// Leave this field blank to advertise no custom groups.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#advertised_groups ComputeRouterPeer#advertised_groups}
	AdvertisedGroups *[]*string `field:"optional" json:"advertisedGroups" yaml:"advertisedGroups"`
	// advertised_ip_ranges block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#advertised_ip_ranges ComputeRouterPeer#advertised_ip_ranges}
	AdvertisedIpRanges interface{} `field:"optional" json:"advertisedIpRanges" yaml:"advertisedIpRanges"`
	// The priority of routes advertised to this BGP peer.
	//
	// Where there is more than one matching route of maximum
	// length, the routes with the lowest priority value win.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#advertised_route_priority ComputeRouterPeer#advertised_route_priority}
	AdvertisedRoutePriority *float64 `field:"optional" json:"advertisedRoutePriority" yaml:"advertisedRoutePriority"`
	// User-specified flag to indicate which mode to use for advertisement.
	//
	// Valid values of this enum field are: 'DEFAULT', 'CUSTOM' Default value: "DEFAULT" Possible values: ["DEFAULT", "CUSTOM"]
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#advertise_mode ComputeRouterPeer#advertise_mode}
	AdvertiseMode *string `field:"optional" json:"advertiseMode" yaml:"advertiseMode"`
	// bfd block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#bfd ComputeRouterPeer#bfd}
	Bfd *ComputeRouterPeerBfd `field:"optional" json:"bfd" yaml:"bfd"`
	// custom_learned_ip_ranges block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#custom_learned_ip_ranges ComputeRouterPeer#custom_learned_ip_ranges}
	CustomLearnedIpRanges interface{} `field:"optional" json:"customLearnedIpRanges" yaml:"customLearnedIpRanges"`
	// The user-defined custom learned route priority for a BGP session.
	//
	// This value is applied to all custom learned route ranges for the session. You can choose a value
	// from 0 to 65335. If you don't provide a value, Google Cloud assigns a priority of 100 to the ranges.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#custom_learned_route_priority ComputeRouterPeer#custom_learned_route_priority}
	CustomLearnedRoutePriority *float64 `field:"optional" json:"customLearnedRoutePriority" yaml:"customLearnedRoutePriority"`
	// The status of the BGP peer connection.
	//
	// If set to false, any active session
	// with the peer is terminated and all associated routing information is removed.
	// If set to true, the peer connection can be established with routing information.
	// The default is true.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#enable ComputeRouterPeer#enable}
	Enable interface{} `field:"optional" json:"enable" yaml:"enable"`
	// Enable IPv4 traffic over BGP Peer. It is enabled by default if the peerIpAddress is version 4.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#enable_ipv4 ComputeRouterPeer#enable_ipv4}
	EnableIpv4 interface{} `field:"optional" json:"enableIpv4" yaml:"enableIpv4"`
	// Enable IPv6 traffic over BGP Peer. If not specified, it is disabled by default.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#enable_ipv6 ComputeRouterPeer#enable_ipv6}
	EnableIpv6 interface{} `field:"optional" json:"enableIpv6" yaml:"enableIpv6"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#id ComputeRouterPeer#id}.
	//
	// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
	// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// IP address of the interface inside Google Cloud Platform. Only IPv4 is supported.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#ip_address ComputeRouterPeer#ip_address}
	IpAddress *string `field:"optional" json:"ipAddress" yaml:"ipAddress"`
	// IPv4 address of the interface inside Google Cloud Platform.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#ipv4_nexthop_address ComputeRouterPeer#ipv4_nexthop_address}
	Ipv4NexthopAddress *string `field:"optional" json:"ipv4NexthopAddress" yaml:"ipv4NexthopAddress"`
	// IPv6 address of the interface inside Google Cloud Platform.
	//
	// The address must be in the range 2600:2d00:0:2::/64 or 2600:2d00:0:3::/64.
	// If you do not specify the next hop addresses, Google Cloud automatically
	// assigns unused addresses from the 2600:2d00:0:2::/64 or 2600:2d00:0:3::/64 range for you.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#ipv6_nexthop_address ComputeRouterPeer#ipv6_nexthop_address}
	Ipv6NexthopAddress *string `field:"optional" json:"ipv6NexthopAddress" yaml:"ipv6NexthopAddress"`
	// md5_authentication_key block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#md5_authentication_key ComputeRouterPeer#md5_authentication_key}
	Md5AuthenticationKey *ComputeRouterPeerMd5AuthenticationKey `field:"optional" json:"md5AuthenticationKey" yaml:"md5AuthenticationKey"`
	// IP address of the BGP interface outside Google Cloud Platform. Only IPv4 is supported. Required if 'ip_address' is set.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#peer_ip_address ComputeRouterPeer#peer_ip_address}
	PeerIpAddress *string `field:"optional" json:"peerIpAddress" yaml:"peerIpAddress"`
	// IPv4 address of the BGP interface outside Google Cloud Platform.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#peer_ipv4_nexthop_address ComputeRouterPeer#peer_ipv4_nexthop_address}
	PeerIpv4NexthopAddress *string `field:"optional" json:"peerIpv4NexthopAddress" yaml:"peerIpv4NexthopAddress"`
	// IPv6 address of the BGP interface outside Google Cloud Platform.
	//
	// The address must be in the range 2600:2d00:0:2::/64 or 2600:2d00:0:3::/64.
	// If you do not specify the next hop addresses, Google Cloud automatically
	// assigns unused addresses from the 2600:2d00:0:2::/64 or 2600:2d00:0:3::/64 range for you.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#peer_ipv6_nexthop_address ComputeRouterPeer#peer_ipv6_nexthop_address}
	PeerIpv6NexthopAddress *string `field:"optional" json:"peerIpv6NexthopAddress" yaml:"peerIpv6NexthopAddress"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#project ComputeRouterPeer#project}.
	Project *string `field:"optional" json:"project" yaml:"project"`
	// Region where the router and BgpPeer reside. If it is not provided, the provider region is used.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#region ComputeRouterPeer#region}
	Region *string `field:"optional" json:"region" yaml:"region"`
	// The URI of the VM instance that is used as third-party router appliances such as Next Gen Firewalls, Virtual Routers, or Router Appliances.
	//
	// The VM instance must be located in zones contained in the same region as
	// this Cloud Router. The VM instance is the peer side of the BGP session.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#router_appliance_instance ComputeRouterPeer#router_appliance_instance}
	RouterApplianceInstance *string `field:"optional" json:"routerApplianceInstance" yaml:"routerApplianceInstance"`
	// timeouts block.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#timeouts ComputeRouterPeer#timeouts}
	Timeouts *ComputeRouterPeerTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"`
}

type ComputeRouterPeerCustomLearnedIpRanges

type ComputeRouterPeerCustomLearnedIpRanges struct {
	// The IP range to learn. The value must be a CIDR-formatted string.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#range ComputeRouterPeer#range}
	Range *string `field:"required" json:"range" yaml:"range"`
}

type ComputeRouterPeerCustomLearnedIpRangesList

type ComputeRouterPeerCustomLearnedIpRangesList interface {
	cdktf.ComplexList
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// The attribute on the parent resource this class is referencing.
	TerraformAttribute() *string
	SetTerraformAttribute(val *string)
	// The parent resource.
	TerraformResource() cdktf.IInterpolatingParent
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
	WrapsSet() *bool
	SetWrapsSet(val *bool)
	// Creating an iterator for this complex list.
	//
	// The list will be converted into a map with the mapKeyAttributeName as the key.
	// Experimental.
	AllWithMapKey(mapKeyAttributeName *string) cdktf.DynamicListTerraformIterator
	// Experimental.
	ComputeFqn() *string
	Get(index *float64) ComputeRouterPeerCustomLearnedIpRangesOutputReference
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewComputeRouterPeerCustomLearnedIpRangesList

func NewComputeRouterPeerCustomLearnedIpRangesList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) ComputeRouterPeerCustomLearnedIpRangesList

type ComputeRouterPeerCustomLearnedIpRangesOutputReference

type ComputeRouterPeerCustomLearnedIpRangesOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	Range() *string
	SetRange(val *string)
	RangeInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewComputeRouterPeerCustomLearnedIpRangesOutputReference

func NewComputeRouterPeerCustomLearnedIpRangesOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) ComputeRouterPeerCustomLearnedIpRangesOutputReference

type ComputeRouterPeerMd5AuthenticationKey

type ComputeRouterPeerMd5AuthenticationKey struct {
	// Value of the key.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#key ComputeRouterPeer#key}
	Key *string `field:"required" json:"key" yaml:"key"`
	// [REQUIRED] Name used to identify the key.
	//
	// Must be unique within a router. Must be referenced by exactly one bgpPeer. Must comply with RFC1035.
	//
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#name ComputeRouterPeer#name}
	Name *string `field:"required" json:"name" yaml:"name"`
}

type ComputeRouterPeerMd5AuthenticationKeyOutputReference

type ComputeRouterPeerMd5AuthenticationKeyOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *ComputeRouterPeerMd5AuthenticationKey
	SetInternalValue(val *ComputeRouterPeerMd5AuthenticationKey)
	Key() *string
	SetKey(val *string)
	KeyInput() *string
	Name() *string
	SetName(val *string)
	NameInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewComputeRouterPeerMd5AuthenticationKeyOutputReference

func NewComputeRouterPeerMd5AuthenticationKeyOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) ComputeRouterPeerMd5AuthenticationKeyOutputReference

type ComputeRouterPeerTimeouts

type ComputeRouterPeerTimeouts struct {
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#create ComputeRouterPeer#create}.
	Create *string `field:"optional" json:"create" yaml:"create"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#delete ComputeRouterPeer#delete}.
	Delete *string `field:"optional" json:"delete" yaml:"delete"`
	// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/compute_router_peer#update ComputeRouterPeer#update}.
	Update *string `field:"optional" json:"update" yaml:"update"`
}

type ComputeRouterPeerTimeoutsOutputReference

type ComputeRouterPeerTimeoutsOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	Create() *string
	SetCreate(val *string)
	CreateInput() *string
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Delete() *string
	SetDelete(val *string)
	DeleteInput() *string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Update() *string
	SetUpdate(val *string)
	UpdateInput() *string
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetCreate()
	ResetDelete()
	ResetUpdate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewComputeRouterPeerTimeoutsOutputReference

func NewComputeRouterPeerTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) ComputeRouterPeerTimeoutsOutputReference

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL