network

package
v0.1.1 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewNetworkLBResource

func NewNetworkLBResource() resource.Resource

NewNetworkLBResource returns a new network load balancer resource.

func NewNetworkResource

func NewNetworkResource() resource.Resource

NewNetworkResource returns a new network resource.

func NewNetworkZoneRecordResource

func NewNetworkZoneRecordResource() resource.Resource

NewNetworkZoneRecordResource returns a new network zone record resource.

func NewNetworkZoneResource

func NewNetworkZoneResource() resource.Resource

NewNetworkZoneResource returns a new network zone resource.

func ToLBBackendList

func ToLBBackendList(ctx context.Context, backendsSet types.Set) ([]api.NetworkLoadBalancerBackend, diag.Diagnostics)

ToLBBackendList converts network LB backend from types.Set into list of API backends.

func ToLBBackendSetType

func ToLBBackendSetType(ctx context.Context, backends []api.NetworkLoadBalancerBackend) (types.Set, diag.Diagnostics)

ToLBBackendList converts list of API network LB backends into types.Set.

func ToLBPortList

func ToLBPortList(ctx context.Context, portSet types.Set) ([]api.NetworkLoadBalancerPort, diag.Diagnostics)

ToLBPortList converts network LB backend from types.Set into list of API ports.

func ToLBPortSetType

func ToLBPortSetType(ctx context.Context, ports []api.NetworkLoadBalancerPort) (types.Set, diag.Diagnostics)

ToLBPortList converts list of API network LB ports into types.Set.

func ToZoneRecordEntryList

func ToZoneRecordEntryList(ctx context.Context, entrySet types.Set) ([]api.NetworkZoneRecordEntry, diag.Diagnostics)

ToZoneRecordMap converts network zone record of type types.Map into []IncusNetworkZoneEntryModel.

func ToZoneRecordEntrySetType

func ToZoneRecordEntrySetType(ctx context.Context, entries []api.NetworkZoneRecordEntry) (types.Set, diag.Diagnostics)

ToZoneRecordEntrySetType converts list of network zone records into set of type types.Set.

Types

type IncusNetworkLBBackendModel

type IncusNetworkLBBackendModel struct {
	Name          types.String `tfsdk:"name"`
	Description   types.String `tfsdk:"description"`
	TargetAddress types.String `tfsdk:"target_address"`
	TargetPort    types.String `tfsdk:"target_port"`
}

type IncusNetworkLBResource

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

IncusNetworkLBResource represent Incus network load balancer resource.

func (*IncusNetworkLBResource) Configure

func (IncusNetworkLBResource) Create

func (IncusNetworkLBResource) Delete

func (IncusNetworkLBResource) Metadata

func (IncusNetworkLBResource) Read

func (IncusNetworkLBResource) Schema

func (IncusNetworkLBResource) SyncState

SyncState fetches the server's current state for an network load balancer and updates the provided model. It then applies this updated model as the new state in Terraform.

func (IncusNetworkLBResource) Update

type NetworkLBModel

type NetworkLBModel struct {
	Network       types.String `tfsdk:"network"`
	ListenAddress types.String `tfsdk:"listen_address"`
	Ports         types.Set    `tfsdk:"port"`
	Backends      types.Set    `tfsdk:"backend"`
	Description   types.String `tfsdk:"description"`
	Project       types.String `tfsdk:"project"`
	Remote        types.String `tfsdk:"remote"`
	Config        types.Map    `tfsdk:"config"`
}

NetworkLBModel resource data model that matches the schema.

type NetworkLBPortModel

type NetworkLBPortModel struct {
	Description   types.String `tfsdk:"description"`
	Protocol      types.String `tfsdk:"protocol"`
	ListenPort    types.String `tfsdk:"listen_port"`
	TargetBackend types.Set    `tfsdk:"target_backend"`
}

type NetworkModel

type NetworkModel struct {
	Name        types.String `tfsdk:"name"`
	Description types.String `tfsdk:"description"`
	Type        types.String `tfsdk:"type"`
	Project     types.String `tfsdk:"project"`
	Remote      types.String `tfsdk:"remote"`
	Target      types.String `tfsdk:"target"`
	Managed     types.Bool   `tfsdk:"managed"`
	Config      types.Map    `tfsdk:"config"`
}

NetworkModel resource data model that matches the schema.

func (NetworkModel) ComputedKeys

func (_ NetworkModel) ComputedKeys() []string

ComputedKeys returns list of computed Incus config keys.

type NetworkResource

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

NetworkResource represent Incus network resource.

func (*NetworkResource) Configure

func (NetworkResource) Create

func (NetworkResource) Delete

func (NetworkResource) ImportState

func (NetworkResource) Metadata

Metadata for network resource.

func (NetworkResource) Read

func (NetworkResource) Schema

Schema for network resource.

func (NetworkResource) SyncState

SyncState fetches the server's current state for a network and updates the provided model. It then applies this updated model as the new state in Terraform.

func (NetworkResource) Update

type NetworkZoneModel

type NetworkZoneModel struct {
	Name        types.String `tfsdk:"name"`
	Description types.String `tfsdk:"description"`
	Project     types.String `tfsdk:"project"`
	Remote      types.String `tfsdk:"remote"`
	Config      types.Map    `tfsdk:"config"`
}

NetworkZoneModel resource data model that matches the schema.

type NetworkZoneRecordEntryModel

type NetworkZoneRecordEntryModel struct {
	Type  types.String `tfsdk:"type"`
	Value types.String `tfsdk:"value"`
	TTL   types.Int64  `tfsdk:"ttl"`
}

type NetworkZoneRecordModel

type NetworkZoneRecordModel struct {
	Name        types.String `tfsdk:"name"`
	Zone        types.String `tfsdk:"zone"`
	Description types.String `tfsdk:"description"`
	Enteries    types.Set    `tfsdk:"entry"`
	Project     types.String `tfsdk:"project"`
	Remote      types.String `tfsdk:"remote"`
	Config      types.Map    `tfsdk:"config"`
}

NetworkZoneRecordModel resource data model that matches the schema.

type NetworkZoneRecordResource

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

NetworkZoneRecordResource represent Incus network zone record resource.

func (*NetworkZoneRecordResource) Configure

func (NetworkZoneRecordResource) Create

func (NetworkZoneRecordResource) Delete

func (NetworkZoneRecordResource) ImportState

func (NetworkZoneRecordResource) Metadata

func (NetworkZoneRecordResource) Read

func (NetworkZoneRecordResource) Schema

func (NetworkZoneRecordResource) SyncState

SyncState fetches the server's current state for a network zone record and updates the provided model. It then applies this updated model as the new state in Terraform.

func (NetworkZoneRecordResource) Update

type NetworkZoneResource

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

NetworkZoneResource represent Incus network zone resource.

func (*NetworkZoneResource) Configure

func (NetworkZoneResource) Create

func (NetworkZoneResource) Delete

func (NetworkZoneResource) ImportState

func (NetworkZoneResource) Metadata

func (NetworkZoneResource) Read

func (NetworkZoneResource) Schema

func (NetworkZoneResource) SyncState

SyncState fetches the server's current state for a network zone and updates the provided model. It then applies this updated model as the new state in Terraform.

func (NetworkZoneResource) Update

Jump to

Keyboard shortcuts

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