edgegw

package
v0.18.4 Latest Latest
Warning

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

Go to latest
Published: Mar 27, 2024 License: MPL-2.0 Imports: 43 Imported by: 0

Documentation

Overview

Package edgegw provides a Terraform datasource.

Package edgegw provides a Terraform resource.

Package edgegw provides a Terraform resource to manage edge gateways.

Package edgegw provides a Terraform resource to manage edge gateways.

Package edgegw provides a Terraform resource to manage edge gateways.

Package edgegw provides a Terraform resource to manage edge gateways.

Package edgegw provides a Terraform resource to manage edge gateways.

Package edgegw provides a Terraform datasource.

Package edgegw provides a Terraform resource.

Package edgegw provides a Terraform datasource.

Package edgegw provides a Terraform resource.

Package edgegw provides a Terraform datasource.

Package edgegw provides a Terraform resource.

Package edgegw provides a Terraform datasource.

Package edgegw provides a Terraform resource.

Package edgegw provides a Terraform datasource.

Package edgegw provides a Terraform resource.

Package edgegw provides a Terraform datasource.

Package edgegw provides a Terraform resource.

Index

Constants

This section is empty.

Variables

View Source
var (

	// ConfigEdgeGateway is the default configuration for edge gateway.
	ConfigEdgeGateway setDefaultEdgeGateway = func() EdgeGatewayConfig {
		return EdgeGatewayConfig{
			CheckJobDelay: defaultCheckJobDelayEdgeGateway,
		}
	}
)

Ensure the implementation satisfies the expected interfaces.

Functions

func NewAppPortProfileDataSource added in v0.17.0

func NewAppPortProfileDataSource() datasource.DataSource

func NewAppPortProfileResource added in v0.17.0

func NewAppPortProfileResource() resource.Resource

NewAppPortProfileResource is a helper function to simplify the provider implementation.

func NewDhcpForwardingDataSource added in v0.8.0

func NewDhcpForwardingDataSource() datasource.DataSource

func NewDhcpForwardingResource added in v0.8.0

func NewDhcpForwardingResource() resource.Resource

NewDhcpForwardingResource is a helper function to simplify the provider implementation.

func NewEdgeGatewayDataSource

func NewEdgeGatewayDataSource() datasource.DataSource

NewEdgeGatewayDataSource returns a new datasource implementing the edge_gateway data source.

func NewEdgeGatewayResource

func NewEdgeGatewayResource() resource.Resource

NewEdgeGatewayResource returns a new resource implementing the edge_gateway data source.

func NewEdgeGatewaysDataSource

func NewEdgeGatewaysDataSource() datasource.DataSource

NewEdgeGatewaysDataSource returns a new resource implementing the edge_gateways data source.

func NewFirewallDataSource added in v0.5.0

func NewFirewallDataSource() datasource.DataSource

func NewFirewallResource added in v0.5.0

func NewFirewallResource() resource.Resource

NewFirewallResource is a helper function to simplify the provider implementation.

func NewIPSetDataSource added in v0.7.0

func NewIPSetDataSource() datasource.DataSource

func NewIPSetResource added in v0.7.0

func NewIPSetResource() resource.Resource

NewIpSetResource is a helper function to simplify the provider implementation.

func NewNATRuleDataSource added in v0.8.0

func NewNATRuleDataSource() datasource.DataSource

func NewNATRuleResource added in v0.8.0

func NewNATRuleResource() resource.Resource

NewNATRuleResource is a helper function to simplify the provider implementation.

func NewSecurityGroupDataSource added in v0.6.0

func NewSecurityGroupDataSource() datasource.DataSource

func NewSecurityGroupResource added in v0.6.0

func NewSecurityGroupResource() resource.Resource

NewSecurityGroupResource is a helper function to simplify the provider implementation.

func NewStaticRouteDataSource added in v0.8.0

func NewStaticRouteDataSource() datasource.DataSource

func NewStaticRouteResource added in v0.8.0

func NewStaticRouteResource() resource.Resource

NewStaticRouteResource is a helper function to simplify the provider implementation.

func NewVPNIPSecDataSource added in v0.10.0

func NewVPNIPSecDataSource() datasource.DataSource

func NewVPNIPSecResource added in v0.10.0

func NewVPNIPSecResource() resource.Resource

NewVpnIpsecResource is a helper function to simplify the provider implementation.

Types

type AppPortProfileModel added in v0.17.0

type AppPortProfileModel struct {
	ID              supertypes.StringValue                                         `tfsdk:"id"`
	Name            supertypes.StringValue                                         `tfsdk:"name"`
	VDC             supertypes.StringValue                                         `tfsdk:"vdc"` // Deprecated
	EdgeGatewayID   supertypes.StringValue                                         `tfsdk:"edge_gateway_id"`
	EdgeGatewayName supertypes.StringValue                                         `tfsdk:"edge_gateway_name"`
	Description     supertypes.StringValue                                         `tfsdk:"description"`
	AppPorts        supertypes.ListNestedObjectValueOf[AppPortProfileModelAppPort] `tfsdk:"app_ports"`
}

func (*AppPortProfileModel) Copy added in v0.17.0

type AppPortProfileModelADatasource added in v0.17.0

type AppPortProfileModelADatasource struct {
	ID          supertypes.StringValue                                         `tfsdk:"id"`
	Name        supertypes.StringValue                                         `tfsdk:"name"`
	Description supertypes.StringValue                                         `tfsdk:"description"`
	AppPorts    supertypes.ListNestedObjectValueOf[AppPortProfileModelAppPort] `tfsdk:"app_ports"`
}

type AppPortProfileModelAppPort added in v0.17.0

type AppPortProfileModelAppPort struct {
	Protocol supertypes.StringValue        `tfsdk:"protocol"`
	Ports    supertypes.SetValueOf[string] `tfsdk:"ports"`
}

type DhcpForwardingModel added in v0.8.0

type DhcpForwardingModel struct {
	DhcpServers     supertypes.SetValue    `tfsdk:"dhcp_servers"`
	EdgeGatewayID   supertypes.StringValue `tfsdk:"edge_gateway_id"`
	EdgeGatewayName supertypes.StringValue `tfsdk:"edge_gateway_name"`
	Enabled         supertypes.BoolValue   `tfsdk:"enabled"`
	ID              supertypes.StringValue `tfsdk:"id"`
}

func NewDhcpForwarding added in v0.8.0

func NewDhcpForwarding(t any) *DhcpForwardingModel

func (*DhcpForwardingModel) Copy added in v0.8.0

func (*DhcpForwardingModel) GetDhcpServers added in v0.8.0

func (rm *DhcpForwardingModel) GetDhcpServers(ctx context.Context) (values DhcpForwardingModelDhcpServers, diags diag.Diagnostics)

GetDhcpServers returns the value of the DhcpServers field.

func (*DhcpForwardingModel) ToNsxtEdgeGatewayDhcpForwarder added in v0.8.0

func (rm *DhcpForwardingModel) ToNsxtEdgeGatewayDhcpForwarder(ctx context.Context) (*govcdtypes.NsxtEdgeGatewayDhcpForwarder, diag.Diagnostics)

ToNsxtEdgeGatewayDhcpForwarder returns the NSX-T Edge Gateway DHCP Forwarder representation of the model.

type DhcpForwardingModelDhcpServers added in v0.8.0

type DhcpForwardingModelDhcpServers []supertypes.StringValue

func (*DhcpForwardingModelDhcpServers) Get added in v0.8.0

type EdgeGatewayConfig

type EdgeGatewayConfig struct {
	CheckJobDelay time.Duration
}

EdgeGatewayConfig is the configuration for edge gateway.

type IPSetModel added in v0.7.0

type IPSetModel struct {
	Description     supertypes.StringValue `tfsdk:"description"`
	EdgeGatewayID   supertypes.StringValue `tfsdk:"edge_gateway_id"`
	EdgeGatewayName supertypes.StringValue `tfsdk:"edge_gateway_name"`
	ID              supertypes.StringValue `tfsdk:"id"`
	IPAddresses     supertypes.SetValue    `tfsdk:"ip_addresses"`
	Name            supertypes.StringValue `tfsdk:"name"`
}

func NewIPSet added in v0.7.0

func NewIPSet(t any) *IPSetModel

func (*IPSetModel) Copy added in v0.7.0

func (rm *IPSetModel) Copy() *IPSetModel

func (*IPSetModel) GetIPAddresses added in v0.7.0

func (rm *IPSetModel) GetIPAddresses(ctx context.Context) (values IPSetModelIPAddresses, diags diag.Diagnostics)

GetIpAddresses returns the value of the IpAddresses field.

func (*IPSetModel) ToNsxtFirewallGroup added in v0.7.0

func (rm *IPSetModel) ToNsxtFirewallGroup(ctx context.Context, ownerID string) (values *govcdtypes.NsxtFirewallGroup, diags diag.Diagnostics)

ToNsxtFirewallGroup transform the IPSetModel to a govcdtypes.NsxtFirewallGroup.

type IPSetModelIPAddresses added in v0.7.0

type IPSetModelIPAddresses []supertypes.StringValue

type NATRuleModel added in v0.8.0

type NATRuleModel struct {
	// Option not implemented - see schema comment
	// AppPortProfileID supertypes.StringValue `tfsdk:"app_port_profile_id"`
	Description      supertypes.StringValue `tfsdk:"description"`
	DnatExternalPort supertypes.StringValue `tfsdk:"dnat_external_port"`
	EdgeGatewayID    supertypes.StringValue `tfsdk:"edge_gateway_id"`
	EdgeGatewayName  supertypes.StringValue `tfsdk:"edge_gateway_name"`
	Enabled          supertypes.BoolValue   `tfsdk:"enabled"`
	ExternalAddress  supertypes.StringValue `tfsdk:"external_address"`
	FirewallMatch    supertypes.StringValue `tfsdk:"firewall_match"`
	ID               supertypes.StringValue `tfsdk:"id"`
	InternalAddress  supertypes.StringValue `tfsdk:"internal_address"`
	// Option not available in CloudAvenue
	// Logging                supertypes.BoolValue   `tfsdk:"logging"`
	Name                   supertypes.StringValue `tfsdk:"name"`
	Priority               supertypes.Int64Value  `tfsdk:"priority"`
	RuleType               supertypes.StringValue `tfsdk:"rule_type"`
	SnatDestinationAddress supertypes.StringValue `tfsdk:"snat_destination_address"`
}

func NewNATRule added in v0.8.0

func NewNATRule(t any) *NATRuleModel

func (*NATRuleModel) Copy added in v0.8.0

func (rm *NATRuleModel) Copy() *NATRuleModel

func (*NATRuleModel) ToNsxtNATRule added in v0.8.0

func (rm *NATRuleModel) ToNsxtNATRule(ctx context.Context) (values *govcdtypes.NsxtNatRule, err error)

type StaticRouteModel added in v0.8.0

type StaticRouteModel struct {
	Description     supertypes.StringValue    `tfsdk:"description"`
	EdgeGatewayID   supertypes.StringValue    `tfsdk:"edge_gateway_id"`
	EdgeGatewayName supertypes.StringValue    `tfsdk:"edge_gateway_name"`
	ID              supertypes.StringValue    `tfsdk:"id"`
	Name            supertypes.StringValue    `tfsdk:"name"`
	NetworkCidr     supertypes.StringValue    `tfsdk:"network_cidr"`
	NextHops        supertypes.SetNestedValue `tfsdk:"next_hops"`
}

func NewStaticRoute added in v0.8.0

func NewStaticRoute(t any) *StaticRouteModel

func (*StaticRouteModel) Copy added in v0.8.0

func (rm *StaticRouteModel) Copy() *StaticRouteModel

func (*StaticRouteModel) GetNextHops added in v0.8.0

func (rm *StaticRouteModel) GetNextHops(ctx context.Context) (values StaticRouteModelNextHops, diags diag.Diagnostics)

GetNextHops returns the value of the NextHops field.

func (*StaticRouteModel) ToNsxtEdgeGatewayStaticRoute added in v0.8.0

func (rm *StaticRouteModel) ToNsxtEdgeGatewayStaticRoute(ctx context.Context) (*govcdtypes.NsxtEdgeGatewayStaticRoute, diag.Diagnostics)

type StaticRouteModelNextHop added in v0.8.0

type StaticRouteModelNextHop struct {
	AdminDistance supertypes.Int64Value  `tfsdk:"admin_distance"`
	IPAddress     supertypes.StringValue `tfsdk:"ip_address"`
}

* NextHop.

type StaticRouteModelNextHops added in v0.8.0

type StaticRouteModelNextHops []StaticRouteModelNextHop

* NextHops.

type VPNIPSecModel added in v0.10.0

type VPNIPSecModel struct {
	Description     supertypes.StringValue       `tfsdk:"description"`
	EdgeGatewayID   supertypes.StringValue       `tfsdk:"edge_gateway_id"`
	EdgeGatewayName supertypes.StringValue       `tfsdk:"edge_gateway_name"`
	Enabled         supertypes.BoolValue         `tfsdk:"enabled"`
	ID              supertypes.StringValue       `tfsdk:"id"`
	LocalIPAddress  supertypes.StringValue       `tfsdk:"local_ip_address"`
	LocalNetworks   supertypes.SetValue          `tfsdk:"local_networks"`
	Name            supertypes.StringValue       `tfsdk:"name"`
	PreSharedKey    supertypes.StringValue       `tfsdk:"pre_shared_key"`
	RemoteIPAddress supertypes.StringValue       `tfsdk:"remote_ip_address"`
	RemoteNetworks  supertypes.SetValue          `tfsdk:"remote_networks"`
	SecurityProfile supertypes.SingleNestedValue `tfsdk:"security_profile"`
	SecurityType    supertypes.StringValue       `tfsdk:"security_type"`
}

func (*VPNIPSecModel) Copy added in v0.10.0

func (rm *VPNIPSecModel) Copy() *VPNIPSecModel

func (*VPNIPSecModel) GetLocalNetworks added in v0.10.0

func (rm *VPNIPSecModel) GetLocalNetworks(ctx context.Context) (values VPNIPSecModelLocalNetworks, diags diag.Diagnostics)

GetLocalNetworks returns the value of the LocalNetworks field.

func (*VPNIPSecModel) GetNsxtIPSecVPNTunnelSecurityProfile added in v0.10.0

func (rm *VPNIPSecModel) GetNsxtIPSecVPNTunnelSecurityProfile(ctx context.Context) (values *govcdtypes.NsxtIpSecVpnTunnelSecurityProfile, diags diag.Diagnostics)

func (*VPNIPSecModel) GetRemoteNetworks added in v0.10.0

func (rm *VPNIPSecModel) GetRemoteNetworks(ctx context.Context) (values VPNIPSecModelRemoteNetworks, diags diag.Diagnostics)

GetRemoteNetworks returns the value of the RemoteNetworks field.

func (*VPNIPSecModel) GetSecurityProfile added in v0.10.0

func (rm *VPNIPSecModel) GetSecurityProfile(ctx context.Context) (values VPNIPSecModelSecurityProfile, diags diag.Diagnostics)

GetSecurityProfile returns the value of the SecurityProfile field.

func (*VPNIPSecModel) ToNsxtIPSecVPNTunnel added in v0.10.0

func (rm *VPNIPSecModel) ToNsxtIPSecVPNTunnel(ctx context.Context) (values *govcdtypes.NsxtIpSecVpnTunnel, diags diag.Diagnostics)

type VPNIPSecModelLocalNetworks added in v0.10.0

type VPNIPSecModelLocalNetworks []supertypes.StringValue

func (VPNIPSecModelLocalNetworks) Get added in v0.10.0

type VPNIPSecModelRemoteNetworks added in v0.10.0

type VPNIPSecModelRemoteNetworks []supertypes.StringValue

func (VPNIPSecModelRemoteNetworks) Get added in v0.10.0

type VPNIPSecModelSecurityProfile added in v0.10.0

type VPNIPSecModelSecurityProfile struct {
	IkeDhGroups                supertypes.StringValue `tfsdk:"ike_dh_groups"`
	IkeDigestAlgorithm         supertypes.StringValue `tfsdk:"ike_digest_algorithm"`
	IkeEncryptionAlgorithm     supertypes.StringValue `tfsdk:"ike_encryption_algorithm"`
	IkeSaLifetime              supertypes.Int64Value  `tfsdk:"ike_sa_lifetime"`
	IkeVersion                 supertypes.StringValue `tfsdk:"ike_version"`
	TunnelDfPolicy             supertypes.StringValue `tfsdk:"tunnel_df_policy"`
	TunnelDhGroups             supertypes.StringValue `tfsdk:"tunnel_dh_groups"`
	TunnelDigestAlgorithms     supertypes.StringValue `tfsdk:"tunnel_digest_algorithms"`
	TunnelDpd                  supertypes.Int64Value  `tfsdk:"tunnel_dpd"`
	TunnelEncryptionAlgorithms supertypes.StringValue `tfsdk:"tunnel_encryption_algorithms"`
	TunnelPfs                  supertypes.BoolValue   `tfsdk:"tunnel_pfs"`
	TunnelSaLifetime           supertypes.Int64Value  `tfsdk:"tunnel_sa_lifetime"`
}

* SecurityProfile.

Jump to

Keyboard shortcuts

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