azurerm_vpn_gateway_connection

package
v0.0.0-...-4deecce Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Args

type Args struct {
	// Id: string, optional
	Id terra.StringValue `hcl:"id,attr"`
	// InternetSecurityEnabled: bool, optional
	InternetSecurityEnabled terra.BoolValue `hcl:"internet_security_enabled,attr"`
	// Name: string, required
	Name terra.StringValue `hcl:"name,attr" validate:"required"`
	// RemoteVpnSiteId: string, required
	RemoteVpnSiteId terra.StringValue `hcl:"remote_vpn_site_id,attr" validate:"required"`
	// VpnGatewayId: string, required
	VpnGatewayId terra.StringValue `hcl:"vpn_gateway_id,attr" validate:"required"`
	// Routing: optional
	Routing *Routing `hcl:"routing,block"`
	// Timeouts: optional
	Timeouts *Timeouts `hcl:"timeouts,block"`
	// TrafficSelectorPolicy: min=0
	TrafficSelectorPolicy []TrafficSelectorPolicy `hcl:"traffic_selector_policy,block" validate:"min=0"`
	// VpnLink: min=1
	VpnLink []VpnLink `hcl:"vpn_link,block" validate:"min=1"`
}

Args contains the configurations for azurerm_vpn_gateway_connection.

type Resource

type Resource struct {
	Name string
	Args Args

	DependsOn terra.Dependencies
	Lifecycle *terra.Lifecycle
	// contains filtered or unexported fields
}

Resource represents the Terraform resource azurerm_vpn_gateway_connection.

func New

func New(name string, args Args) *Resource

New creates a new instance of Resource.

func (*Resource) Attributes

func (avgc *Resource) Attributes() azurermVpnGatewayConnectionAttributes

Attributes returns the attributes for Resource.

func (*Resource) Configuration

func (avgc *Resource) Configuration() interface{}

Configuration returns the configuration (args) for Resource.

func (*Resource) DependOn

func (avgc *Resource) DependOn() terra.Reference

DependOn is used for other resources to depend on Resource.

func (*Resource) Dependencies

func (avgc *Resource) Dependencies() terra.Dependencies

Dependencies returns the list of resources Resource depends_on.

func (*Resource) ImportState

func (avgc *Resource) ImportState(state io.Reader) error

ImportState imports the given attribute values into Resource's state.

func (*Resource) LifecycleManagement

func (avgc *Resource) LifecycleManagement() *terra.Lifecycle

LifecycleManagement returns the lifecycle block for Resource.

func (*Resource) LocalName

func (avgc *Resource) LocalName() string

LocalName returns the local name for Resource.

func (*Resource) State

func (avgc *Resource) State() (*azurermVpnGatewayConnectionState, bool)

State returns the state and a bool indicating if Resource has state.

func (*Resource) StateMust

func (avgc *Resource) StateMust() *azurermVpnGatewayConnectionState

StateMust returns the state for Resource. Panics if the state is nil.

func (*Resource) Type

func (avgc *Resource) Type() string

Type returns the Terraform object type for Resource.

type Routing

type Routing struct {
	// AssociatedRouteTable: string, required
	AssociatedRouteTable terra.StringValue `hcl:"associated_route_table,attr" validate:"required"`
	// InboundRouteMapId: string, optional
	InboundRouteMapId terra.StringValue `hcl:"inbound_route_map_id,attr"`
	// OutboundRouteMapId: string, optional
	OutboundRouteMapId terra.StringValue `hcl:"outbound_route_map_id,attr"`
	// RoutingPropagatedRouteTable: optional
	PropagatedRouteTable *RoutingPropagatedRouteTable `hcl:"propagated_route_table,block"`
}

type RoutingAttributes

type RoutingAttributes struct {
	// contains filtered or unexported fields
}

func (RoutingAttributes) AssociatedRouteTable

func (r RoutingAttributes) AssociatedRouteTable() terra.StringValue

func (RoutingAttributes) InboundRouteMapId

func (r RoutingAttributes) InboundRouteMapId() terra.StringValue

func (RoutingAttributes) InternalRef

func (r RoutingAttributes) InternalRef() (terra.Reference, error)

func (RoutingAttributes) InternalTokens

func (r RoutingAttributes) InternalTokens() (hclwrite.Tokens, error)

func (RoutingAttributes) InternalWithRef

func (r RoutingAttributes) InternalWithRef(ref terra.Reference) RoutingAttributes

func (RoutingAttributes) OutboundRouteMapId

func (r RoutingAttributes) OutboundRouteMapId() terra.StringValue

func (RoutingAttributes) PropagatedRouteTable

type RoutingPropagatedRouteTable

type RoutingPropagatedRouteTable struct {
	// Labels: set of string, optional
	Labels terra.SetValue[terra.StringValue] `hcl:"labels,attr"`
	// RouteTableIds: list of string, required
	RouteTableIds terra.ListValue[terra.StringValue] `hcl:"route_table_ids,attr" validate:"required"`
}

type RoutingPropagatedRouteTableAttributes

type RoutingPropagatedRouteTableAttributes struct {
	// contains filtered or unexported fields
}

func (RoutingPropagatedRouteTableAttributes) InternalRef

func (RoutingPropagatedRouteTableAttributes) InternalTokens

func (RoutingPropagatedRouteTableAttributes) InternalWithRef

func (RoutingPropagatedRouteTableAttributes) Labels

func (RoutingPropagatedRouteTableAttributes) RouteTableIds

type RoutingPropagatedRouteTableState

type RoutingPropagatedRouteTableState struct {
	Labels        []string `json:"labels"`
	RouteTableIds []string `json:"route_table_ids"`
}

type RoutingState

type RoutingState struct {
	AssociatedRouteTable string                             `json:"associated_route_table"`
	InboundRouteMapId    string                             `json:"inbound_route_map_id"`
	OutboundRouteMapId   string                             `json:"outbound_route_map_id"`
	PropagatedRouteTable []RoutingPropagatedRouteTableState `json:"propagated_route_table"`
}

type Timeouts

type Timeouts struct {
	// Create: string, optional
	Create terra.StringValue `hcl:"create,attr"`
	// Delete: string, optional
	Delete terra.StringValue `hcl:"delete,attr"`
	// Read: string, optional
	Read terra.StringValue `hcl:"read,attr"`
	// Update: string, optional
	Update terra.StringValue `hcl:"update,attr"`
}

type TimeoutsAttributes

type TimeoutsAttributes struct {
	// contains filtered or unexported fields
}

func (TimeoutsAttributes) Create

func (TimeoutsAttributes) Delete

func (TimeoutsAttributes) InternalRef

func (t TimeoutsAttributes) InternalRef() (terra.Reference, error)

func (TimeoutsAttributes) InternalTokens

func (t TimeoutsAttributes) InternalTokens() (hclwrite.Tokens, error)

func (TimeoutsAttributes) InternalWithRef

func (t TimeoutsAttributes) InternalWithRef(ref terra.Reference) TimeoutsAttributes

func (TimeoutsAttributes) Read

func (TimeoutsAttributes) Update

type TimeoutsState

type TimeoutsState struct {
	Create string `json:"create"`
	Delete string `json:"delete"`
	Read   string `json:"read"`
	Update string `json:"update"`
}

type TrafficSelectorPolicy

type TrafficSelectorPolicy struct {
	// LocalAddressRanges: set of string, required
	LocalAddressRanges terra.SetValue[terra.StringValue] `hcl:"local_address_ranges,attr" validate:"required"`
	// RemoteAddressRanges: set of string, required
	RemoteAddressRanges terra.SetValue[terra.StringValue] `hcl:"remote_address_ranges,attr" validate:"required"`
}

type TrafficSelectorPolicyAttributes

type TrafficSelectorPolicyAttributes struct {
	// contains filtered or unexported fields
}

func (TrafficSelectorPolicyAttributes) InternalRef

func (TrafficSelectorPolicyAttributes) InternalTokens

func (tsp TrafficSelectorPolicyAttributes) InternalTokens() (hclwrite.Tokens, error)

func (TrafficSelectorPolicyAttributes) InternalWithRef

func (TrafficSelectorPolicyAttributes) LocalAddressRanges

func (TrafficSelectorPolicyAttributes) RemoteAddressRanges

func (tsp TrafficSelectorPolicyAttributes) RemoteAddressRanges() terra.SetValue[terra.StringValue]

type TrafficSelectorPolicyState

type TrafficSelectorPolicyState struct {
	LocalAddressRanges  []string `json:"local_address_ranges"`
	RemoteAddressRanges []string `json:"remote_address_ranges"`
}
type VpnLink struct {
	// BandwidthMbps: number, optional
	BandwidthMbps terra.NumberValue `hcl:"bandwidth_mbps,attr"`
	// BgpEnabled: bool, optional
	BgpEnabled terra.BoolValue `hcl:"bgp_enabled,attr"`
	// ConnectionMode: string, optional
	ConnectionMode terra.StringValue `hcl:"connection_mode,attr"`
	// EgressNatRuleIds: set of string, optional
	EgressNatRuleIds terra.SetValue[terra.StringValue] `hcl:"egress_nat_rule_ids,attr"`
	// IngressNatRuleIds: set of string, optional
	IngressNatRuleIds terra.SetValue[terra.StringValue] `hcl:"ingress_nat_rule_ids,attr"`
	// LocalAzureIpAddressEnabled: bool, optional
	LocalAzureIpAddressEnabled terra.BoolValue `hcl:"local_azure_ip_address_enabled,attr"`
	// Name: string, required
	Name terra.StringValue `hcl:"name,attr" validate:"required"`
	// PolicyBasedTrafficSelectorEnabled: bool, optional
	PolicyBasedTrafficSelectorEnabled terra.BoolValue `hcl:"policy_based_traffic_selector_enabled,attr"`
	// Protocol: string, optional
	Protocol terra.StringValue `hcl:"protocol,attr"`
	// RatelimitEnabled: bool, optional
	RatelimitEnabled terra.BoolValue `hcl:"ratelimit_enabled,attr"`
	// RouteWeight: number, optional
	RouteWeight terra.NumberValue `hcl:"route_weight,attr"`
	// SharedKey: string, optional
	SharedKey terra.StringValue `hcl:"shared_key,attr"`
	// VpnSiteLinkId: string, required
	VpnSiteLinkId terra.StringValue `hcl:"vpn_site_link_id,attr" validate:"required"`
	// VpnLinkCustomBgpAddress: min=0
	CustomBgpAddress []VpnLinkCustomBgpAddress `hcl:"custom_bgp_address,block" validate:"min=0"`
	// VpnLinkIpsecPolicy: min=0
	IpsecPolicy []VpnLinkIpsecPolicy `hcl:"ipsec_policy,block" validate:"min=0"`
}

type VpnLinkAttributes

type VpnLinkAttributes struct {
	// contains filtered or unexported fields
}

func (VpnLinkAttributes) BandwidthMbps

func (vl VpnLinkAttributes) BandwidthMbps() terra.NumberValue

func (VpnLinkAttributes) BgpEnabled

func (vl VpnLinkAttributes) BgpEnabled() terra.BoolValue

func (VpnLinkAttributes) ConnectionMode

func (vl VpnLinkAttributes) ConnectionMode() terra.StringValue

func (VpnLinkAttributes) CustomBgpAddress

func (VpnLinkAttributes) EgressNatRuleIds

func (vl VpnLinkAttributes) EgressNatRuleIds() terra.SetValue[terra.StringValue]

func (VpnLinkAttributes) IngressNatRuleIds

func (vl VpnLinkAttributes) IngressNatRuleIds() terra.SetValue[terra.StringValue]

func (VpnLinkAttributes) InternalRef

func (vl VpnLinkAttributes) InternalRef() (terra.Reference, error)

func (VpnLinkAttributes) InternalTokens

func (vl VpnLinkAttributes) InternalTokens() (hclwrite.Tokens, error)

func (VpnLinkAttributes) InternalWithRef

func (vl VpnLinkAttributes) InternalWithRef(ref terra.Reference) VpnLinkAttributes

func (VpnLinkAttributes) IpsecPolicy

func (VpnLinkAttributes) LocalAzureIpAddressEnabled

func (vl VpnLinkAttributes) LocalAzureIpAddressEnabled() terra.BoolValue

func (VpnLinkAttributes) Name

func (VpnLinkAttributes) PolicyBasedTrafficSelectorEnabled

func (vl VpnLinkAttributes) PolicyBasedTrafficSelectorEnabled() terra.BoolValue

func (VpnLinkAttributes) Protocol

func (vl VpnLinkAttributes) Protocol() terra.StringValue

func (VpnLinkAttributes) RatelimitEnabled

func (vl VpnLinkAttributes) RatelimitEnabled() terra.BoolValue

func (VpnLinkAttributes) RouteWeight

func (vl VpnLinkAttributes) RouteWeight() terra.NumberValue

func (VpnLinkAttributes) SharedKey

func (vl VpnLinkAttributes) SharedKey() terra.StringValue

func (VpnLinkAttributes) VpnSiteLinkId

func (vl VpnLinkAttributes) VpnSiteLinkId() terra.StringValue

type VpnLinkCustomBgpAddress

type VpnLinkCustomBgpAddress struct {
	// IpAddress: string, required
	IpAddress terra.StringValue `hcl:"ip_address,attr" validate:"required"`
	// IpConfigurationId: string, required
	IpConfigurationId terra.StringValue `hcl:"ip_configuration_id,attr" validate:"required"`
}

type VpnLinkCustomBgpAddressAttributes

type VpnLinkCustomBgpAddressAttributes struct {
	// contains filtered or unexported fields
}

func (VpnLinkCustomBgpAddressAttributes) InternalRef

func (VpnLinkCustomBgpAddressAttributes) InternalTokens

func (cba VpnLinkCustomBgpAddressAttributes) InternalTokens() (hclwrite.Tokens, error)

func (VpnLinkCustomBgpAddressAttributes) InternalWithRef

func (VpnLinkCustomBgpAddressAttributes) IpAddress

func (VpnLinkCustomBgpAddressAttributes) IpConfigurationId

func (cba VpnLinkCustomBgpAddressAttributes) IpConfigurationId() terra.StringValue

type VpnLinkCustomBgpAddressState

type VpnLinkCustomBgpAddressState struct {
	IpAddress         string `json:"ip_address"`
	IpConfigurationId string `json:"ip_configuration_id"`
}

type VpnLinkIpsecPolicy

type VpnLinkIpsecPolicy struct {
	// DhGroup: string, required
	DhGroup terra.StringValue `hcl:"dh_group,attr" validate:"required"`
	// EncryptionAlgorithm: string, required
	EncryptionAlgorithm terra.StringValue `hcl:"encryption_algorithm,attr" validate:"required"`
	// IkeEncryptionAlgorithm: string, required
	IkeEncryptionAlgorithm terra.StringValue `hcl:"ike_encryption_algorithm,attr" validate:"required"`
	// IkeIntegrityAlgorithm: string, required
	IkeIntegrityAlgorithm terra.StringValue `hcl:"ike_integrity_algorithm,attr" validate:"required"`
	// IntegrityAlgorithm: string, required
	IntegrityAlgorithm terra.StringValue `hcl:"integrity_algorithm,attr" validate:"required"`
	// PfsGroup: string, required
	PfsGroup terra.StringValue `hcl:"pfs_group,attr" validate:"required"`
	// SaDataSizeKb: number, required
	SaDataSizeKb terra.NumberValue `hcl:"sa_data_size_kb,attr" validate:"required"`
	// SaLifetimeSec: number, required
	SaLifetimeSec terra.NumberValue `hcl:"sa_lifetime_sec,attr" validate:"required"`
}

type VpnLinkIpsecPolicyAttributes

type VpnLinkIpsecPolicyAttributes struct {
	// contains filtered or unexported fields
}

func (VpnLinkIpsecPolicyAttributes) DhGroup

func (VpnLinkIpsecPolicyAttributes) EncryptionAlgorithm

func (ip VpnLinkIpsecPolicyAttributes) EncryptionAlgorithm() terra.StringValue

func (VpnLinkIpsecPolicyAttributes) IkeEncryptionAlgorithm

func (ip VpnLinkIpsecPolicyAttributes) IkeEncryptionAlgorithm() terra.StringValue

func (VpnLinkIpsecPolicyAttributes) IkeIntegrityAlgorithm

func (ip VpnLinkIpsecPolicyAttributes) IkeIntegrityAlgorithm() terra.StringValue

func (VpnLinkIpsecPolicyAttributes) IntegrityAlgorithm

func (ip VpnLinkIpsecPolicyAttributes) IntegrityAlgorithm() terra.StringValue

func (VpnLinkIpsecPolicyAttributes) InternalRef

func (ip VpnLinkIpsecPolicyAttributes) InternalRef() (terra.Reference, error)

func (VpnLinkIpsecPolicyAttributes) InternalTokens

func (ip VpnLinkIpsecPolicyAttributes) InternalTokens() (hclwrite.Tokens, error)

func (VpnLinkIpsecPolicyAttributes) InternalWithRef

func (VpnLinkIpsecPolicyAttributes) PfsGroup

func (VpnLinkIpsecPolicyAttributes) SaDataSizeKb

func (VpnLinkIpsecPolicyAttributes) SaLifetimeSec

func (ip VpnLinkIpsecPolicyAttributes) SaLifetimeSec() terra.NumberValue

type VpnLinkIpsecPolicyState

type VpnLinkIpsecPolicyState struct {
	DhGroup                string  `json:"dh_group"`
	EncryptionAlgorithm    string  `json:"encryption_algorithm"`
	IkeEncryptionAlgorithm string  `json:"ike_encryption_algorithm"`
	IkeIntegrityAlgorithm  string  `json:"ike_integrity_algorithm"`
	IntegrityAlgorithm     string  `json:"integrity_algorithm"`
	PfsGroup               string  `json:"pfs_group"`
	SaDataSizeKb           float64 `json:"sa_data_size_kb"`
	SaLifetimeSec          float64 `json:"sa_lifetime_sec"`
}

type VpnLinkState

type VpnLinkState struct {
	BandwidthMbps                     float64                        `json:"bandwidth_mbps"`
	BgpEnabled                        bool                           `json:"bgp_enabled"`
	ConnectionMode                    string                         `json:"connection_mode"`
	EgressNatRuleIds                  []string                       `json:"egress_nat_rule_ids"`
	IngressNatRuleIds                 []string                       `json:"ingress_nat_rule_ids"`
	LocalAzureIpAddressEnabled        bool                           `json:"local_azure_ip_address_enabled"`
	Name                              string                         `json:"name"`
	PolicyBasedTrafficSelectorEnabled bool                           `json:"policy_based_traffic_selector_enabled"`
	Protocol                          string                         `json:"protocol"`
	RatelimitEnabled                  bool                           `json:"ratelimit_enabled"`
	RouteWeight                       float64                        `json:"route_weight"`
	SharedKey                         string                         `json:"shared_key"`
	VpnSiteLinkId                     string                         `json:"vpn_site_link_id"`
	CustomBgpAddress                  []VpnLinkCustomBgpAddressState `json:"custom_bgp_address"`
	IpsecPolicy                       []VpnLinkIpsecPolicyState      `json:"ipsec_policy"`
}

Jump to

Keyboard shortcuts

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