Documentation
¶
Index ¶
- func Network_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func Network_IsConstruct(x interface{}) *bool
- func Network_IsTerraformElement(x interface{}) *bool
- func Network_IsTerraformResource(x interface{}) *bool
- func Network_TfResourceType() *string
- func NewNetwork_Override(n Network, scope constructs.Construct, id *string, config *NetworkConfig)
- type Network
- type NetworkConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Network_GenerateConfigForImport ¶
func Network_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a Network resource upon running "cdktf plan <stack-name>".
func Network_IsConstruct ¶
func Network_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 Network_IsTerraformElement ¶
func Network_IsTerraformElement(x interface{}) *bool
Experimental.
func Network_IsTerraformResource ¶
func Network_IsTerraformResource(x interface{}) *bool
Experimental.
func Network_TfResourceType ¶
func Network_TfResourceType() *string
func NewNetwork_Override ¶
func NewNetwork_Override(n Network, scope constructs.Construct, id *string, config *NetworkConfig)
Create a new {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network stackit_network} Resource.
Types ¶
type Network ¶
type Network 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
Ipv4Gateway() *string
SetIpv4Gateway(val *string)
Ipv4GatewayInput() *string
Ipv4Nameservers() *[]*string
SetIpv4Nameservers(val *[]*string)
Ipv4NameserversInput() *[]*string
Ipv4Prefix() *string
SetIpv4Prefix(val *string)
Ipv4Prefixes() *[]*string
Ipv4PrefixInput() *string
Ipv4PrefixLength() *float64
SetIpv4PrefixLength(val *float64)
Ipv4PrefixLengthInput() *float64
Ipv6Gateway() *string
SetIpv6Gateway(val *string)
Ipv6GatewayInput() *string
Ipv6Nameservers() *[]*string
SetIpv6Nameservers(val *[]*string)
Ipv6NameserversInput() *[]*string
Ipv6Prefix() *string
SetIpv6Prefix(val *string)
Ipv6Prefixes() *[]*string
Ipv6PrefixInput() *string
Ipv6PrefixLength() *float64
SetIpv6PrefixLength(val *float64)
Ipv6PrefixLengthInput() *float64
Labels() *map[string]*string
SetLabels(val *map[string]*string)
LabelsInput() *map[string]*string
// Experimental.
Lifecycle() *cdktf.TerraformResourceLifecycle
// Experimental.
SetLifecycle(val *cdktf.TerraformResourceLifecycle)
Name() *string
SetName(val *string)
NameInput() *string
Nameservers() *[]*string
SetNameservers(val *[]*string)
NameserversInput() *[]*string
NetworkId() *string
// The tree node.
Node() constructs.Node
NoIpv4Gateway() interface{}
SetNoIpv4Gateway(val interface{})
NoIpv4GatewayInput() interface{}
NoIpv6Gateway() interface{}
SetNoIpv6Gateway(val interface{})
NoIpv6GatewayInput() interface{}
Prefixes() *[]*string
ProjectId() *string
SetProjectId(val *string)
ProjectIdInput() *string
// Experimental.
Provider() cdktf.TerraformProvider
// Experimental.
SetProvider(val cdktf.TerraformProvider)
// Experimental.
Provisioners() *[]interface{}
// Experimental.
SetProvisioners(val *[]interface{})
PublicIp() *string
// Experimental.
RawOverrides() interface{}
Region() *string
SetRegion(val *string)
RegionInput() *string
Routed() interface{}
SetRouted(val interface{})
RoutedInput() interface{}
RoutingTableId() *string
SetRoutingTableId(val *string)
RoutingTableIdInput() *string
// Experimental.
TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
// Experimental.
TerraformMetaArguments() *map[string]interface{}
// Experimental.
TerraformResourceType() *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)
ResetIpv4Gateway()
ResetIpv4Nameservers()
ResetIpv4Prefix()
ResetIpv4PrefixLength()
ResetIpv6Gateway()
ResetIpv6Nameservers()
ResetIpv6Prefix()
ResetIpv6PrefixLength()
ResetLabels()
ResetNameservers()
ResetNoIpv4Gateway()
ResetNoIpv6Gateway()
// Resets a previously passed logical Id to use the auto-generated logical id again.
// Experimental.
ResetOverrideLogicalId()
ResetRegion()
ResetRouted()
ResetRoutingTableId()
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/stackitcloud/stackit/0.76.0/docs/resources/network stackit_network}.
func NewNetwork ¶
func NewNetwork(scope constructs.Construct, id *string, config *NetworkConfig) Network
Create a new {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network stackit_network} Resource.
type NetworkConfig ¶
type NetworkConfig 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"`
// The name of the network.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#name Network#name}
Name *string `field:"required" json:"name" yaml:"name"`
// STACKIT project ID to which the network is associated.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#project_id Network#project_id}
ProjectId *string `field:"required" json:"projectId" yaml:"projectId"`
// The IPv4 gateway of a network.
//
// If not specified, the first IP of the network will be assigned as the gateway.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#ipv4_gateway Network#ipv4_gateway}
Ipv4Gateway *string `field:"optional" json:"ipv4Gateway" yaml:"ipv4Gateway"`
// The IPv4 nameservers of the network.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#ipv4_nameservers Network#ipv4_nameservers}
Ipv4Nameservers *[]*string `field:"optional" json:"ipv4Nameservers" yaml:"ipv4Nameservers"`
// The IPv4 prefix of the network (CIDR).
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#ipv4_prefix Network#ipv4_prefix}
Ipv4Prefix *string `field:"optional" json:"ipv4Prefix" yaml:"ipv4Prefix"`
// The IPv4 prefix length of the network.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#ipv4_prefix_length Network#ipv4_prefix_length}
Ipv4PrefixLength *float64 `field:"optional" json:"ipv4PrefixLength" yaml:"ipv4PrefixLength"`
// The IPv6 gateway of a network.
//
// If not specified, the first IP of the network will be assigned as the gateway.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#ipv6_gateway Network#ipv6_gateway}
Ipv6Gateway *string `field:"optional" json:"ipv6Gateway" yaml:"ipv6Gateway"`
// The IPv6 nameservers of the network.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#ipv6_nameservers Network#ipv6_nameservers}
Ipv6Nameservers *[]*string `field:"optional" json:"ipv6Nameservers" yaml:"ipv6Nameservers"`
// The IPv6 prefix of the network (CIDR).
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#ipv6_prefix Network#ipv6_prefix}
Ipv6Prefix *string `field:"optional" json:"ipv6Prefix" yaml:"ipv6Prefix"`
// The IPv6 prefix length of the network.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#ipv6_prefix_length Network#ipv6_prefix_length}
Ipv6PrefixLength *float64 `field:"optional" json:"ipv6PrefixLength" yaml:"ipv6PrefixLength"`
// Labels are key-value string pairs which can be attached to a resource container.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#labels Network#labels}
Labels *map[string]*string `field:"optional" json:"labels" yaml:"labels"`
// The nameservers of the network.
//
// This field is deprecated and will be removed in January 2026, use `ipv4_nameservers` to configure the nameservers for IPv4.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#nameservers Network#nameservers}
Nameservers *[]*string `field:"optional" json:"nameservers" yaml:"nameservers"`
// If set to `true`, the network doesn't have a gateway.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#no_ipv4_gateway Network#no_ipv4_gateway}
NoIpv4Gateway interface{} `field:"optional" json:"noIpv4Gateway" yaml:"noIpv4Gateway"`
// If set to `true`, the network doesn't have a gateway.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#no_ipv6_gateway Network#no_ipv6_gateway}
NoIpv6Gateway interface{} `field:"optional" json:"noIpv6Gateway" yaml:"noIpv6Gateway"`
// The resource region. If not defined, the provider region is used.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#region Network#region}
Region *string `field:"optional" json:"region" yaml:"region"`
// If set to `true`, the network is routed and therefore accessible from other networks.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#routed Network#routed}
Routed interface{} `field:"optional" json:"routed" yaml:"routed"`
// The ID of the routing table associated with the network.
//
// Docs at Terraform Registry: {@link https://registry.terraform.io/providers/stackitcloud/stackit/0.76.0/docs/resources/network#routing_table_id Network#routing_table_id}
RoutingTableId *string `field:"optional" json:"routingTableId" yaml:"routingTableId"`
}