Documentation
¶
Index ¶
- func ComputeRouterInterface_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func ComputeRouterInterface_IsConstruct(x interface{}) *bool
- func ComputeRouterInterface_IsTerraformElement(x interface{}) *bool
- func ComputeRouterInterface_IsTerraformResource(x interface{}) *bool
- func ComputeRouterInterface_TfResourceType() *string
- func NewComputeRouterInterfaceTimeoutsOutputReference_Override(c ComputeRouterInterfaceTimeoutsOutputReference, ...)
- func NewComputeRouterInterface_Override(c ComputeRouterInterface, scope constructs.Construct, id *string, ...)
- type ComputeRouterInterface
- type ComputeRouterInterfaceConfig
- type ComputeRouterInterfaceTimeouts
- type ComputeRouterInterfaceTimeoutsOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ComputeRouterInterface_GenerateConfigForImport ¶
func ComputeRouterInterface_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a ComputeRouterInterface resource upon running "cdktf plan <stack-name>".
func ComputeRouterInterface_IsConstruct ¶
func ComputeRouterInterface_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 ComputeRouterInterface_IsTerraformElement ¶
func ComputeRouterInterface_IsTerraformElement(x interface{}) *bool
Experimental.
func ComputeRouterInterface_IsTerraformResource ¶
func ComputeRouterInterface_IsTerraformResource(x interface{}) *bool
Experimental.
func ComputeRouterInterface_TfResourceType ¶
func ComputeRouterInterface_TfResourceType() *string
func NewComputeRouterInterfaceTimeoutsOutputReference_Override ¶
func NewComputeRouterInterfaceTimeoutsOutputReference_Override(c ComputeRouterInterfaceTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewComputeRouterInterface_Override ¶
func NewComputeRouterInterface_Override(c ComputeRouterInterface, scope constructs.Construct, id *string, config *ComputeRouterInterfaceConfig)
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface google_compute_router_interface} Resource.
Types ¶
type ComputeRouterInterface ¶
type ComputeRouterInterface interface {
cdktf.TerraformResource
// Experimental.
CdktfStack() cdktf.TerraformStack
// Experimental.
Connection() interface{}
// Experimental.
SetConnection(val interface{})
// Experimental.
ConstructNodeMetadata() *map[string]interface{}
// Experimental.
Count() interface{}
// Experimental.
SetCount(val interface{})
// Experimental.
DependsOn() *[]*string
// Experimental.
SetDependsOn(val *[]*string)
// Experimental.
ForEach() cdktf.ITerraformIterator
// Experimental.
SetForEach(val cdktf.ITerraformIterator)
// Experimental.
Fqn() *string
// Experimental.
FriendlyUniqueId() *string
Id() *string
SetId(val *string)
IdInput() *string
InterconnectAttachment() *string
SetInterconnectAttachment(val *string)
InterconnectAttachmentInput() *string
IpRange() *string
SetIpRange(val *string)
IpRangeInput() *string
IpVersion() *string
SetIpVersion(val *string)
IpVersionInput() *string
// Experimental.
Lifecycle() *cdktf.TerraformResourceLifecycle
// Experimental.
SetLifecycle(val *cdktf.TerraformResourceLifecycle)
Name() *string
SetName(val *string)
NameInput() *string
// The tree node.
Node() constructs.Node
PrivateIpAddress() *string
SetPrivateIpAddress(val *string)
PrivateIpAddressInput() *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{}
RedundantInterface() *string
SetRedundantInterface(val *string)
RedundantInterfaceInput() *string
Region() *string
SetRegion(val *string)
RegionInput() *string
Router() *string
SetRouter(val *string)
RouterInput() *string
Subnetwork() *string
SetSubnetwork(val *string)
SubnetworkInput() *string
// Experimental.
TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
// Experimental.
TerraformMetaArguments() *map[string]interface{}
// Experimental.
TerraformResourceType() *string
Timeouts() ComputeRouterInterfaceTimeoutsOutputReference
TimeoutsInput() interface{}
VpnTunnel() *string
SetVpnTunnel(val *string)
VpnTunnelInput() *string
// 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)
PutTimeouts(value *ComputeRouterInterfaceTimeouts)
ResetId()
ResetInterconnectAttachment()
ResetIpRange()
ResetIpVersion()
// Resets a previously passed logical Id to use the auto-generated logical id again.
// Experimental.
ResetOverrideLogicalId()
ResetPrivateIpAddress()
ResetProject()
ResetRedundantInterface()
ResetRegion()
ResetSubnetwork()
ResetTimeouts()
ResetVpnTunnel()
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.32.0/docs/resources/compute_router_interface google_compute_router_interface}.
func NewComputeRouterInterface ¶
func NewComputeRouterInterface(scope constructs.Construct, id *string, config *ComputeRouterInterfaceConfig) ComputeRouterInterface
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface google_compute_router_interface} Resource.
type ComputeRouterInterfaceConfig ¶
type ComputeRouterInterfaceConfig 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"`
// A unique name for the interface, required by GCE. Changing this forces a new interface to be created.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#name ComputeRouterInterface#name}
Name *string `field:"required" json:"name" yaml:"name"`
// The name of the router this interface will be attached to.
//
// Changing this forces a new interface to be created.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#router ComputeRouterInterface#router}
Router *string `field:"required" json:"router" yaml:"router"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#id ComputeRouterInterface#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"`
// The name or resource link to the VLAN interconnect for this interface.
//
// Changing this forces a new interface to be created. Only one of interconnect_attachment, subnetwork or vpn_tunnel can be specified.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#interconnect_attachment ComputeRouterInterface#interconnect_attachment}
InterconnectAttachment *string `field:"optional" json:"interconnectAttachment" yaml:"interconnectAttachment"`
// The IP address and range of the interface.
//
// The IP range must be in the RFC3927 link-local IP space. Changing this forces a new interface to be created.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#ip_range ComputeRouterInterface#ip_range}
IpRange *string `field:"optional" json:"ipRange" yaml:"ipRange"`
// IP version of this interface.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#ip_version ComputeRouterInterface#ip_version}
IpVersion *string `field:"optional" json:"ipVersion" yaml:"ipVersion"`
// The regional private internal IP address that is used to establish BGP sessions to a VM instance acting as a third-party Router Appliance.
//
// Changing this forces a new interface to be created.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#private_ip_address ComputeRouterInterface#private_ip_address}
PrivateIpAddress *string `field:"optional" json:"privateIpAddress" yaml:"privateIpAddress"`
// The ID of the project in which this interface's router belongs.
//
// If it is not provided, the provider project is used. Changing this forces a new interface to be created.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#project ComputeRouterInterface#project}
Project *string `field:"optional" json:"project" yaml:"project"`
// The name of the interface that is redundant to this interface.
//
// Changing this forces a new interface to be created.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#redundant_interface ComputeRouterInterface#redundant_interface}
RedundantInterface *string `field:"optional" json:"redundantInterface" yaml:"redundantInterface"`
// The region this interface's router sits in.
//
// If not specified, the project region will be used. Changing this forces a new interface to be created.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#region ComputeRouterInterface#region}
Region *string `field:"optional" json:"region" yaml:"region"`
// The URI of the subnetwork resource that this interface belongs to, which must be in the same region as the Cloud Router.
//
// Changing this forces a new interface to be created. Only one of subnetwork, interconnect_attachment or vpn_tunnel can be specified.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#subnetwork ComputeRouterInterface#subnetwork}
Subnetwork *string `field:"optional" json:"subnetwork" yaml:"subnetwork"`
// timeouts block.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#timeouts ComputeRouterInterface#timeouts}
Timeouts *ComputeRouterInterfaceTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"`
// The name or resource link to the VPN tunnel this interface will be linked to.
//
// Changing this forces a new interface to be created. Only one of vpn_tunnel, interconnect_attachment or subnetwork can be specified.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#vpn_tunnel ComputeRouterInterface#vpn_tunnel}
VpnTunnel *string `field:"optional" json:"vpnTunnel" yaml:"vpnTunnel"`
}
type ComputeRouterInterfaceTimeouts ¶
type ComputeRouterInterfaceTimeouts struct {
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#create ComputeRouterInterface#create}.
Create *string `field:"optional" json:"create" yaml:"create"`
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.32.0/docs/resources/compute_router_interface#delete ComputeRouterInterface#delete}.
Delete *string `field:"optional" json:"delete" yaml:"delete"`
}
type ComputeRouterInterfaceTimeoutsOutputReference ¶
type ComputeRouterInterfaceTimeoutsOutputReference 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)
// 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()
// 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 NewComputeRouterInterfaceTimeoutsOutputReference ¶
func NewComputeRouterInterfaceTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) ComputeRouterInterfaceTimeoutsOutputReference